{"version":3,"sources":["webpack:///./src/components/PublicEvent.vue","webpack:///./src/components/PublicEvent.vue?c7a1","webpack:///./src/components/SignupParticipant.vue","webpack:///./src/components/SignupParticipant.vue?3d92","webpack:///./src/components/SignupParticipant.vue?411b","webpack:///./src/components/ResetPassword.vue","webpack:///./src/components/ResetPassword.vue?bc1d","webpack:///./src/components/PublicStore.vue?8290","webpack:///./src/components/VirtualFundraising.vue","webpack:///./src/components/VirtualFundraising.vue?ff6a","webpack:///./src/components/StoreDetail.vue?791a","webpack:///./src/components/ProductDetail.vue?08ba","webpack:///./src/helpers/axios_interceptors.js","webpack:///./src/main.js","webpack:///./src/components/StoreDetail.vue","webpack:///./src/components/StoreDetail.vue?5f7a","webpack:///./src/components/Profile.vue?82c8","webpack:///./src/components/PrivacyPolicy.vue?4963","webpack:///./src/components/RunningEvent.vue?c345","webpack:///./src/components/PieChart.vue","webpack:///./src/components/PieChart.vue?ecda","webpack:///./src/components/TermsOfUse.vue","webpack:///./src/components/TermsOfUse.vue?9097","webpack:///./src/components/PrivacyPolicy.vue","webpack:///./src/components/PrivacyPolicy.vue?ae05","webpack:///./src/components/VirtualFundraising.vue?43fd","webpack:///./src/components/PublicStore.vue","webpack:///./src/components/Product.vue","webpack:///./src/components/Product.vue?7d97","webpack:///./src/components/ProductDetail.vue","webpack:///./src/components/ProductDetail.vue?18c8","webpack:///./src/components/PublicStore.vue?1b21","webpack:///./src/components/Product.vue?8660","webpack:///./src/components/Settings.vue","webpack:///./src/components/Profile.vue","webpack:///./src/components/Profile.vue?af79","webpack:///./src/components/Settings.vue?87e7","webpack:///./src/components/TermsOfUse.vue?25c6","webpack:///./src/components/RunningEvent.vue","webpack:///./src/components/RunningEvent.vue?1eb7"],"names":["name","components","data","render","class","id","style","proceed","title","proceedErrorMessage","closable","type","effect","length","store","organizerName","event","description","src","imageSrc","error","currentStep","model","rules","step1Rules","ref","label-position","top","hide-required-asterisk","show-message","label","prop","targetAmount","autosize","next","disabled","form1Valid","step2Rules","setCropData","setSelectedImage","showUploadButton","formattdPhone","step3Rules","errorMessage1","formattedPhone","focusOut","email","confirmEmail","firstName","lastName","sendConfirmPhoneCode","loading","step4Rules","phoneCode","maxlength","show-word-limit","autocomplete","confirmPhoneCode","plain","resendConfirmPhoneCode","step5Rules","submitStore","authenticateLogin","ImageUploader","emailExists","isMounted","errorMessage","step3FormValid","file","statusMessage","userExists","preventNextIteration","imageCropData","code","phone","emailCode","encryptedEmailcode","eventId","login","mobile","password","required","message","trigger","pattern","confirmPassword","validator","rule","value","callback","methods","includes","key","this","replace","match","stepForm","$refs","validate","valid","prev","validateForm","form","isValid","a","post","then","response","catch","loginUrl","status","dispatch","sendVerificationCode","resendConfirmEmailCode","confirmEmailCode","encryptedCode","$message","formData","FormData","append","raw","Object","entries","headers","gotoLogin","router","push","computed","mounted","$route","params","get","created","currentUserDetail","formattedphone","__scopeId","resetPassword","successMessage","passwordData","passwordRules","submitChanges","routeToLogin","token","query","size","toNewEvent","stores","interval","indicator-position","height","eventImageSrc","subTotal","eventSubTotal","href","publicUrl","target","toLogin","openDetail","filter","i","axiosSetUp","axios","interceptors","request","use","config","getters","accessToken","Authorization","Promise","reject","originalRequest","url","commit","_retry","Chart","register","ChartDataLabels","ElAlert","ElAside","ElAutocomplete","ElAvatar","ElBacktop","ElBadge","ElBreadcrumb","ElBreadcrumbItem","ElButton","ElButtonGroup","ElCalendar","ElCard","ElCarousel","ElCarouselItem","ElCascader","ElCascaderPanel","ElCheckbox","ElCheckboxButton","ElCheckboxGroup","ElCol","ElCollapse","ElCollapseItem","ElCollapseTransition","ElColorPicker","ElContainer","ElDatePicker","ElDialog","ElDivider","ElDrawer","ElDropdown","ElDropdownItem","ElDropdownMenu","ElFooter","ElForm","ElFormItem","ElHeader","ElIcon","ElImage","ElInput","ElInputNumber","ElLink","ElMain","ElMenu","ElMenuItem","ElMenuItemGroup","ElOption","ElOptionGroup","ElPageHeader","ElPagination","ElPopconfirm","ElPopover","ElPopper","ElProgress","ElRadio","ElRadioButton","ElRadioGroup","ElRate","ElRow","ElScrollbar","ElSelect","ElSlider","ElStep","ElSteps","ElSubmenu","ElSwitch","ElTabPane","ElTable","ElTableColumn","ElTabs","ElTag","ElTimePicker","ElTimeSelect","ElTimeline","ElTimelineItem","ElTooltip","ElTransfer","ElTree","ElUpload","plugins","ElInfiniteScroll","ElLoading","ElMessage","ElMessageBox","ElNotification","appInsights","ApplicationInsights","connectionString","loadAppInsights","trackPageView","axiosSetup","createdApp","createApp","App","zIndex","forEach","component","VueCropper","plugin","directive","el","binding","vnode","element","querySelectorAll","$this","$","$label","parents","find","attr","addClass","window","setTimeout","trim","focus","getElementsByTagName","mount","novalidate","editMode","storeEdit","image","endDate","startDate","Date","now","storeEditRules","saveChanges","targetamount","icon","placement","width","auto-close","click","content","reference","data-copy","copyCode","eventStartDate","toLocaleDateString","eventEndDate","hasRunningEvent","toEvent","isMobile","smsUrl","invDonatorSMSVisible","invDonatorVisible","shareOnFacebook2","shareOnTwitter","parseFloat","toFixed","totalDirectDonationsNet","totalPopcornSales","totalEarnedProfits","donationsCount","text-inside","stroke-width","percentage","storePercent","parseInt","downloadCSV","safeEventOrderDetails","formatter","formatDate","calculatePopcornAmount","cell-class-name","getCellClass","formatCurrency","calculateFeesDeducted","calculateEarnings","dialogWidth","dialogTop","footer","inviteDonatorsSMS","invitedDonatorsSMS","donator","counter","addInvitedDonatorSMS","circle","removeDonatorSMS","EventTimer","invPartVisible","invitedDonators","storeorderdetails","reduce","sum","order","directDonation","directDonationAmount","directDonationFee","netDirectDonations","totalNetEarnings","grossSales","Array","isArray","orderTotal","total","console","log","totalNetSales","totalEarnings","extractRawEarnings","Intl","NumberFormat","currency","format","earned","toString","Math","trunc","isNaN","min","donators","dn","split","p","items","amount","storeviewid","orderdate","screen","marks","0","color","20","40","60","80","100","test","navigator","userAgent","encodeURI","column","greenColumns","redColumns","calculateEarningsPerStore","popcornEarnings","openSalesBreakdown","showSalesBreakdown","_","__","date","d","getTime","month","day","year","row","csvRows","map","createdAt","number","buyerName","seller","shippingFee","String","join","csvContent","blob","Blob","link","document","createElement","URL","createObjectURL","setAttribute","body","appendChild","removeChild","addInvitedDonator","last","validateEmail","regExp","removeDonator","splice","validatePhone","inviteDonators","emails","storeId","phones","shareOnFacebook3","FB","ui","method","display","picture","error_message","action_type","action_properties","JSON","stringify","object","shareOnFacebook","sendOnFacebook","open","put","extends","props","chartData","chartOptions","renderChart","msg","back","wi","hi","iframe","querySelector","screenWidth","storeOwner","eventTitle","storePercentEl","products","product","showProduct","closedProduct","leaderstores","storeleader","index","onmouseover","onmouseout","fullscreen","visible","before-close","bagsList","weight","freeShipping","totalPrice","setCount","count","enableAddToCart","addToCart","paymentSuccess","filledBags","foraceUpdate","selectedBags","bag","addFlavour","removeFlavour","selectedBagsCount","quantity","arrow","price","ingredients","show-close","close-on-click-modal","PaymentFormButton","b","item","selected","sBag","emptyItems","v","ShippingMethodID","shippingMethodID","shippingCost","bags","paymentFail","paymentMethod","orderStatus","paymentError","orderData","orderNum","deliveryMethod","shippingAddressString","billingAddressString","Product","ProductDetail","currentProduct","storeState","percentage1","eventCode","productDetail","opendate","alert","confirmButtonText","tab-position","tabsPosition","checkIfUserIsOrganizer","event1Rules","events","selectedevent","allStoresSubTotal","eventPayToName","eventPayToAddress","drag:action","on-change","w9Selected","auto-upload","drag","submitPayinfo","w9file","enableSubmit","profile","profileRules","Profile","Address","w9Url","val","eventPayOutAmount","concat","handleUploadError","handleUploadSuccess","getEventDetails","eventEdit","eventEditRules","confirmStopEvent","to","totalPopcornSalesNet","eventBreakDown","participantsCount","masterInviteUrl","invPartInfoVisible","invPartVisibleSMS","invitedParticipants2","participanttest","inviteStatus","createDate","resendInvite","setSelectedFile","invitedParticipant","storeGoalData","owner","netPopcornEarnings","earnedAmount","calculatedTotals","eventorderdetails","inviteParticipants","emailErrorMessage","emailValidRules","inviteParticipantsSMS","phoneValidRules","FileUploader","totalSales","eventSubtotal","totalElgibleProfit","shippingCosts","adminFee","invitedParticipants","invitestatus","organizername","createdate","storecode","csvEmails","responsive","animation","duration","hover","animationDiration","responsiveAnimationDuration","labels","position","storeMap","toLowerCase","salesMap","acc","sellerName","popcornSales","values","subtotal","participants","ps","orderBy","donatorsOrders","ordernum","participantname","eventChartData","datatemplate","datasets","backgroundColor","round","totalStoresEarned","participantsChartData","letters","floor","random","donatorsChartData","storeLink","calcTotals","calculateStoreGoalPercentage","storeOrders","directDonationFees","popcornAmount","safeCalculateEarnings","earnings","extractRawFeeDeducted","rawFee","organizerStoreTotal","organizerStoreSubTotal","readFile","resp1","inviteParticipantsCSV","resolve","fr","FileReader","onload","x","result","onerrror","readAsText","loadparticipants","addInvitedParticipant","removeParticipant","inviteRec","$confirm","cancelButtonText","stopEvent"],"mappings":"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","file":"js/app~21833f8f.a88d1e73.js","sourcesContent":["<template>\r\n    <div></div>\r\n</template>\r\n\r\n<script>\r\n\r\n    \r\n    export default {\r\n        name: \"PublicEvent\",\r\n        components: { },\r\n        data() {\r\n            return {\r\n               \r\n            }\r\n        }\r\n        }\r\n</script>\r\n\r\n<style scoped>\r\n    \r\n</style>","import { render } from \"./PublicEvent.vue?vue&type=template&id=0c49286f\"\nimport script from \"./PublicEvent.vue?vue&type=script&lang=js\"\nexport * from \"./PublicEvent.vue?vue&type=script&lang=js\"\nscript.render = render\n\nexport default script","<template>\r\n    <div v-if=\"!proceed\" class=\"global-message\">\r\n        <el-alert v-show=\"proceedErrorMessage.length > 0\" :title=\"proceedErrorMessage\" :closable=\"false\"\r\n                  type=\"error\"\r\n                  effect=\"dark\">\r\n        </el-alert>\r\n    </div>\r\n    <div id=\"\" class=\"container form-input form-center\" v-if=\"proceed\">\r\n        <div class=\"row mt-5\">\r\n            <div class=\"col-12 order-last order-sm-first col-sm-6 col-md-4 mt-sm-0 mt-3\" style=\"max-height:200px\">\r\n                <div class=\"h5 font-weight-bold\">The Fundraising coordinator:</div>\r\n                <div class=\"h6 font-weight-bold\">{{store.organizerName}} has invited you to participate in the Fundraiser:</div>\r\n                <div class=\"h5\" style=\"color: #983222\">{{event.title}}</div>\r\n                <div class=\"mt-2\" style=\"color: #983222\">Fundraiser Description:</div>\r\n                <div class=\"\" style=\"color: #983222\">{{event.description}}</div>\r\n            </div>\r\n            <div class=\"col-12 order-first order-sm-last col-sm-6 col-md-8\">\r\n                <div class=\"image-cover\" style=\"height:300px\">\r\n                    <el-image :src=\"event.imageSrc\" style=\"border-radius:30px\">\r\n                        <template #error>\r\n                            <div class=\"image-slot\">\r\n                                <i class=\"el-icon-picture-outline\"></i>\r\n                            </div>\r\n                        </template>\r\n                    </el-image>\r\n                </div>\r\n            </div>\r\n        </div>\r\n\r\n        <div class=\"row\" style=\"justify-content:center\">\r\n            <div class=\"col-12\">\r\n                <transition name=\"el-fade-in-linear\" v-if=\"currentStep==1\">\r\n                    <div class=\"widget step\">\r\n                        <hr />\r\n                        <el-form :model=\"store\" :rules=\"step1Rules\" ref=\"step1Form\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\">\r\n                            <section class=\"\">\r\n                                <p class=\"\">Please personalize your store title for the event fundraiser, by entering your information into the fields below and click Next to complete the sign up process! This is your own personized eCommerce Store that you will be sending out to buyers, please add an appropriate title, description and picture that they will be able to identify you.</p>\r\n                                <p class=\"\">Remember you will earn 50% of your sales, minus shipping costs. So if you sell $1000 of Colorado Jack Popcorn your fundraiser will recieve $500 back. You will be able to track your totals in your own personal dashboard once you have signed up.</p>\r\n                            </section>\r\n                            <el-form-item label=\"Store Title\" prop=\"title\">\r\n                                <el-input v-model=\"store.title\" v-fancylabel></el-input>\r\n                            </el-form-item>\r\n                            <el-form-item label=\"What is your sales goal for your store?\" prop=\"targetAmount\">\r\n                                <el-input type=\"tel\" v-model=\"store.targetAmount\" v-fancylabel></el-input>\r\n                            </el-form-item>\r\n                            <el-form-item prop=\"description\" label=\"Please add a description\">\r\n                                <el-input type=\"textarea\" :autosize=\"{ minRows: 5, maxRows: 10}\" v-model=\"store.description\" v-fancylabel></el-input>\r\n                            </el-form-item>\r\n                            <el-form-item>\r\n                                <el-button style=\"background-color: #983222\" type=\"primary\" @click=\"next('step1Form')\" :disabled=\"!form1Valid\" v-if=\"currentStep==1\" class=\"float-left\">NEXT</el-button>\r\n                            </el-form-item>\r\n                        </el-form>\r\n                    </div>\r\n                </transition>\r\n                <transition name=\"el-fade-in-linear\" v-if=\"currentStep==2\">\r\n                    <div class=\"widget step\">\r\n                        <hr />\r\n                        <el-form :model=\"store\" :rules=\"step2Rules\" ref=\"step2Form\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\">\r\n                            <section class=\"form-title\">\r\n                                <p class=\"mt-5 center\">Upload media for your store, this image will be overlayed on top of the Fundraiser image.  Typically a picture of yourself would be preferred. This image can be changed once your store has been created.</p>\r\n                            </section>\r\n                            <el-form-element>\r\n                                <div style=\"height:200px;margin: 0 auto; margin-bottom:20px\">\r\n                                    <ImageUploader @crop=\"setCropData\" @image-selected=\"setSelectedImage\" :showUploadButton=\"false\"></ImageUploader>\r\n                                </div>\r\n                            </el-form-element>\r\n                            <div class=\"mt-3\">\r\n                                <el-form-item>\r\n                                    <el-button style=\"background-color: #983222\" type=\"primary\" @click=\"currentStep--\" class=\"float-left\">BACK</el-button>\r\n                                    <el-button style=\"background-color: #983222\" type=\"primary\" @click=\"currentStep++\" v-if=\"currentStep==2\" class=\"float-left\">NEXT</el-button>\r\n                                </el-form-item>\r\n                            </div>\r\n                        </el-form>\r\n                    </div>\r\n                </transition>\r\n                <transition name=\"el-fade-in-linear\" v-if=\"currentStep==3&&store.formattdPhone!=''\">\r\n                    <div class=\"widget step\">\r\n                        <hr />\r\n                        <el-form :model=\"store\" :rules=\"step3Rules\" ref=\"step3Form\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\">\r\n                            <el-alert class=\"mt-4\" v-show=\"errorMessage1\" :title=\"errorMessage1\"\r\n                                      type=\"error\"\r\n                                      effect=\"dark\">\r\n                            </el-alert>\r\n                            <section class=\"form-title\">\r\n                                <h4>Complete your profile</h4>\r\n                            </section>\r\n                            <el-form-item label=\"User phone - 555-555-5555\" prop=\"phone\">\r\n                                <el-input type=\"text\" v-model=\"store.formattedPhone\" v-on:keyup.enter=\"focusOut\" @blur=\"focusOut\" v-fancylabel>{{store.formattedPhone}}</el-input>\r\n                            </el-form-item>\r\n                            <el-form-item label=\"Email Address\" prop=\"email\">\r\n                                <el-input type=\"text\" v-model=\"store.email\" v-fancylabel @change=\"confirmEmail\" v-on:keyup.enter=\"confirmEmail\" v-on:keydown.tab=\"confirmEmail\">{{store.email}}</el-input>\r\n                            </el-form-item>\r\n                            <el-form-item label=\"First Name\" prop=\"firstName\">\r\n                                <el-input type=\"text\" v-model=\"store.firstName\" v-fancylabel></el-input>\r\n                            </el-form-item>\r\n                            <el-form-item label=\"Last Name\" prop=\"lastName\">\r\n                                <el-input type=\"text\" v-model=\"store.lastName\" v-fancylabel></el-input>\r\n                            </el-form-item>\r\n                            <el-form-item>\r\n                                <el-button style=\"background-color: #983222\" type=\"primary\" @click=\"currentStep--\" class=\"float-left\">BACK</el-button>\r\n                                <el-button style=\"background-color: #983222\" type=\"primary\" @click=\"sendConfirmPhoneCode\" :loading=\"loading\" class=\"float-left\">VERIFY PHONE</el-button>\r\n                            </el-form-item>\r\n                        </el-form>\r\n                    </div>\r\n                </transition>\r\n                <transition name=\"el-fade-in-linear\" v-if=\"currentStep==4&&store.formattdPhone!=''\">\r\n                    <div class=\"widget step\">\r\n                        <el-alert class=\"mt-4\" v-show=\"errorMessage1\" :title=\"errorMessage1\"\r\n                                  type=\"error\"\r\n                                  effect=\"dark\">\r\n                        </el-alert>\r\n                        <hr />\r\n                        <el-form :model=\"store\" :rules=\"step4Rules\" ref=\"step4Form\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n                            <section class=\"form-title\">\r\n                                <h5 style=\"font-weight:500\">We have sent you a verification code to your phone {{store.formattedPhone}}, once you recieve it please enter it here:</h5>\r\n                            </section>\r\n                            <el-form-item>\r\n                                <el-input type=\"text\" style=\"width: 100%;\" v-model=\"store.phoneCode\" maxlength=\"6\" show-word-limit class=\"email-code\" autocomplete=\"off\" v-focus v-fancylabel v-on:keyup.enter=\"confirmPhoneCode\"></el-input>\r\n                            </el-form-item>\r\n                            <el-form-item>\r\n                                <el-button type=\"danger\" style=\"background-color: #983222\" @click=\"confirmPhoneCode\" :loading=\"loading\" class=\"float-left\">CONFIRM</el-button>\r\n                                <el-button type=\"primary\" plain @click=\"resendConfirmPhoneCode\" :loading=\"loading\" class=\"float-left\">RESEND</el-button>\r\n                            </el-form-item>\r\n                        </el-form>\r\n                    </div>\r\n                </transition>\r\n                <transition name=\"el-fade-in-linear\" v-if=\"currentStep==5\">\r\n                    <div class=\"widget step\">\r\n                        <hr />\r\n                        <el-alert class=\"mt-4\" v-show=\"errorMessage1\" :title=\"errorMessage1\"\r\n                                  type=\"error\"\r\n                                  effect=\"dark\">\r\n                        </el-alert>\r\n                        <el-form :model=\"store\" :rules=\"step5Rules\" ref=\"step5Form\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">Phone Verfication Status:</div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content: left; color: #983222\">Success</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">STORE TITLE:</div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content: left; color: #983222\">{{store.title}}</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">STORE DESCRIPTION:</div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content: left; color: #983222\">{{store.description}}</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">SALES GOAL:</div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content: left; color: #983222\">{{store.targetAmount}}</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">NAME:</div>\r\n                                <div class=\"row col-8 center\" style=\"justify-content: left; color: #983222\"><span class=\"font-weight-bold\">{{store.firstName +' ' + store.lastName}}</span></div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">EMAIL:</div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content: left; color: #983222\">{{store.email}}</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: left\">\r\n                                <div class=\"col-md-4\">PHONE:</div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content: left; color: #983222\">{{store.formattedPhone}}</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: center; justify-content:center\">\r\n                                <div class=\"col-md-4\"></div>\r\n                                <div class=\"row col-8 center font-weight-bold\" style=\"justify-content:center\">\r\n                                    <el-button type=\"danger\" style=\"background-color: #983222; width: 100%;\" @click=\"submitStore\" :loading=\"loading\" class=\"center\">Create Store</el-button>\r\n                                </div>\r\n                            </div>\r\n                        </el-form>\r\n                    </div>\r\n                </transition>\r\n                <transition name=\"el-fade-in-linear\" v-if=\"currentStep==6\">\r\n                    <div class=\"widget step\">\r\n                        <section class=\"row col-12\">\r\n                            <div class=\"col-md-4\"></div>\r\n                            <div class=\"col-md-8 h2 font-weight-bold center\" style=\"justify-content: center; text-align: center\">\r\n                                <i class=\"el-icon-circle-check\" style=\"color:#67C23A;\"></i>CONGRATULATIONS\r\n                            </div>\r\n                            <div class=\"row col-12 h5 mt-4\" style=\"text-align: center\">\r\n                                <div class=\"col-md-4\"></div>\r\n                                <div class=\"row col-8 center\" style=\"justify-content: center\"><span class=\"font-weight-bold\">{{store.firstName +' ' + store.lastName}}</span></div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: center\">\r\n                                <div class=\"col-md-4\"></div>\r\n                                <div class=\"row col-8 center h5\" style=\"justify-content:center\">Thanks for creating your Online Store:</div>\r\n                            </div>\r\n                            <div class=\"row col-12\" style=\"text-align: center\">\r\n                                <div class=\"col-md-4\"></div>\r\n                                <div class=\"row col-8 center h5 font-weight-bold\" style=\"justify-content:center\">{{store.title}}</div>\r\n                            </div>\r\n                            <div class=\"row col-12\">\r\n                                <div class=\"col-md-4\"></div>\r\n                                <div class=\"col-8 mt-4 center\" style=\"justify-content:center; text-align:center\">\r\n                                    <el-button style=\"background-color: #983222\" type=\"primary\" @click=\"authenticateLogin\" :loading=\"loading\">Go to your Dashboard</el-button>\r\n                                </div>\r\n                            </div>\r\n                        </section>\r\n                    </div>\r\n                </transition>\r\n            </div>            \r\n        </div>        \r\n    </div>\r\n</template>\r\n\r\n<script>\r\n    import axios from \"axios\"\r\n    import store from \"@/store\"\r\n    import ImageUploader from \"./ImageUploader\"\r\n    import router from \"../router\";\r\n    import { mapGetters } from \"vuex\"\r\n\r\n    export default {\r\n        name: 'SignupParticipant',\r\n        components: { ImageUploader },\r\n        data() {\r\n            return {\r\n                emailExists: false,\r\n                isMounted: false,\r\n                currentStep: 1,  \r\n                errorMessage: '',\r\n                errorMessage1: '',\r\n                step3FormValid:false,\r\n                loading: false,\r\n                file: null,\r\n                proceed: false,\r\n                proceedErrorMessage: '',\r\n                statusMessage: '',\r\n                userExists: false,\r\n                preventNextIteration: false,\r\n                event: {},\r\n                store: {                    \r\n                    imageCropData: {},\r\n                    title: '',\r\n                    targetAmount:'',\r\n                    description: '',\r\n                    firstName: '',\r\n                    lastName: '',\r\n                    code: '',\r\n                    email: '',\r\n                    organizerName: '',\r\n                    phone: \"0\",\r\n                    formattedPhone: '',\r\n                    emailCode: '',\r\n                    phoneCode: '',\r\n                    encryptedEmailcode: '',\r\n                    eventId: '',\r\n                },\r\n                login: {\r\n                    mobile: '',\r\n                    email: '',\r\n                    password: ''\r\n                },\r\n                step1Rules: {\r\n                    title: [\r\n                        { required: true, message: 'store title is required', trigger: 'blur' }\r\n                    ],\r\n                    description: [\r\n                        { required: true, message: 'store description is required', trigger: 'blur' }\r\n                    ],\r\n                    targetAmount: [/* eslint-disable-next-line no-useless-escape*/\r\n                        { required: true, type:'string',pattern: /^\\d+(\\.\\d{1,2})?$/g, message: 'Enter the target amount', trigger: 'blur' }\r\n                    ],\r\n                },\r\n                step2Rules: {\r\n                  \r\n                },\r\n                step3Rules: {\r\n                    firstName: [\r\n                        { required: true, message: 'First Name is required', trigger: 'blur' }\r\n                    ],\r\n                    lastName: [\r\n                        { required: true, message: 'Last Name is required', trigger: 'blur' }\r\n                    ],                   \r\n                    email: [\r\n                        { required: true, type: 'email', message: 'Invalid email address', trigger: 'blur' }\r\n                    ],\r\n                    phone: [\r\n                        { required: true, type: 'string', pattern: /^\\(?\\d{3}\\)?[-\\s]?\\d{3}[-\\s]?\\d{4}$/g, message: 'A valid Phone Number is required', trigger: 'blur' }\r\n                    ]     \r\n                },\r\n                step4Rules: {\r\n                    emailCode: [\r\n                        { required: true, message: 'Invalid verification code', trigger: 'blur' }\r\n                    ]\r\n                },\r\n                step5Rules: {\r\n                    password: [\r\n                        { required: true, type: 'string', pattern: /^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\\s).{8,15}$/g, message: 'Password must be 8 to 15 characters with at least one lowercase, one uppercase letter, one numeric digit, and one special character:', trigger: 'blur' }\r\n                    ],\r\n                    confirmPassword: [\r\n                        {\r\n                            required: true,\r\n                            validator: (rule, value, callback) => {\r\n                                return value === this.store.password;\r\n                            }\r\n                            , message: 'Passwords are not matched', trigger: 'blur'\r\n                        }\r\n                    ],\r\n                }\r\n            }\r\n        },\r\n        methods: {\r\n            focusOut: function (event) {\r\n                if (['Arrow', 'Backspace', 'Shift'].includes(event.key)) {\r\n                    this.preventNextIteration = true;\r\n                    return;\r\n                }\r\n                if (this.preventNextIteration) {\r\n                    this.preventNextIteration = false;\r\n                    return;\r\n                }\r\n                this.store.phone = this.store.formattedPhone.replace(/-/g, '').match(/(\\d{1,10})/g)[0];\r\n\r\n                // Format display value based on calculated currencyValue\r\n                this.store.formattedPhone = this.store.phone.replace(/(\\d{1,3})(\\d{1,3})(\\d{1,4})/g, '$1-$2-$3');                \r\n            },\r\n            next(stepForm) {\r\n                this.$refs[stepForm].validate((valid) => {\r\n                    if (valid)\r\n                        this.currentStep++;\r\n                });                     \r\n            },            \r\n            prev() {\r\n                this.currentStep--;\r\n            },\r\n            validateForm(form) {\r\n                let isValid = false;\r\n                this.$refs[form].validate((valid) => {\r\n                    isValid = valid;\r\n                });\r\n                return isValid;\r\n            },\r\n            setCropData(data) {\r\n                this.store.imageCropData = data;\r\n            },\r\n            setSelectedImage(file) {\r\n                this.file = file;\r\n            },\r\n            confirmEmail() {                \r\n                    this.loading = true;\r\n                    axios.post('/api/users/VerifyEmail', { email: this.store.email, firstName: this.store.firstName, lastName: this.store.lastName }).then(response => {\r\n                        this.loading = false;\r\n                        if (response.data) {\r\n                            this.store.firstName = response.data.firstName;\r\n                            this.store.lastName = response.data.lastName;\r\n                            this.emailExists = true;\r\n                        }\r\n                        else {\r\n                            this.emailExists = false;\r\n                        }\r\n                        //this.currentStep++;\r\n                    }).catch((error) => {\r\n                        this.errorMessage = error.response.data;\r\n                        this.loading = false;\r\n                        if (this.errorMessage == 'Okay, it looks like you are already registered your user account associated with this email.') {\r\n                            this.emailExists = true;\r\n                        }\r\n                    });                \r\n            },\r\n            authenticateLogin() {\r\n                if (this.userExists) {\r\n                    this.loading = true;\r\n                    const loginUrl = \"/api/users/authenticate\";\r\n                    this.login.mobile = this.store.formattedPhone;\r\n                    axios.post(loginUrl, this.login).then(response => {\r\n                        this.loading = false;\r\n                        if (response.status === 200) {\r\n                            store.dispatch(\"login\", response);\r\n                        }\r\n                        else {\r\n                            this.errorMessage = response.message;\r\n                        }\r\n                    }).catch((error) => {\r\n                        this.loading = false;\r\n                        if (error && error.response && error.response.data)\r\n                            this.errorMessage = error.response.data.message;\r\n                    });\r\n                }               \r\n            },\r\n            sendVerificationCode() {\r\n                if (this.validateForm('step3Form') === true) {\r\n                    this.loading = true;\r\n                    axios.post('/api/users/SendVerifyEmailCodeParticipant', { email: this.store.email, firstName: this.store.firstName, lastName: this.store.lastName }).then(response => {\r\n                        this.loading = false;\r\n                        this.store.encryptedEmailcode = response.data;\r\n                        this.currentStep++;\r\n                    }).catch((error) => {\r\n                        this.errorMessage = error.response.data;\r\n                        this.loading = false;\r\n                        if (this.errorMessage == 'Okay, it looks like you are already signed up, please sign in with your existing email address, once your signed in, you can choose to Create a New Fundraiser from the menu, if you do not have an existing event already running.') {\r\n                            this.emailExists = true;\r\n                        }\r\n                    });\r\n                }\r\n            },\r\n            async resendConfirmEmailCode() {\r\n                this.loading = true;\r\n                await axios.post('/api/users/SendVerifyEmailCodeParticipant', { email: this.store.email, firstName: this.store.firstName, lastName: this.store.lastName }).then(response => {\r\n                    this.loading = false;\r\n                    if (response.status === 200) {\r\n                        this.store.encryptedEmailcode = response.data;\r\n                    }\r\n                }).catch((error) => {\r\n                    this.errorMessage = error.response.data;\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            async confirmEmailCode() {\r\n                this.loading = true;\r\n                this.errorMessage = '';\r\n                await axios.post('/api/users/VerifyEmailCode', { code: this.store.emailCode, encryptedCode: this.store.encryptedEmailcode }).then(response => {\r\n                    this.loading = false;\r\n                    this.currentStep++;\r\n                }).catch((error) => {\r\n                    this.errorMessage = error.response.data;\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            sendConfirmPhoneCode() {\r\n                if (this.validateForm('step3Form') === true) {\r\n                    this.loading = true;\r\n                    axios.post('/api/users/sendverifymobilecode', { phone: this.store.formattedPhone }).then(response => {\r\n                        this.loading = false;\r\n                        this.currentStep++;\r\n                    }).catch((error) => {\r\n                        this.errorMessage1 = error.response.data;\r\n                        this.loading = false;\r\n                    });\r\n                }\r\n            },\r\n            async confirmPhoneCode() {\r\n                this.loading = true;\r\n                this.errorMessage = '';\r\n                await axios.post('/api/users/verifymobilecode', { phone: this.store.formattedPhone, code: this.store.phoneCode }).then(response => {\r\n                    this.statusMessage = response.data.statusMessage;\r\n                    this.userExists = response.data.userExists;\r\n                    if (this.statusMessage == \"approved\") {\r\n                        this.loading = false;\r\n                        this.currentStep++;\r\n                    }\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.errorMessage1 = error.response.data;\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            async resendConfirmPhoneCode() {\r\n                this.loading = true;\r\n                await axios.post('/api/users/sendverifymobilecode', { phone: this.store.formattedPhone }).then(response => {\r\n                    this.loading = false;\r\n                    if (response.status === 200) {\r\n                        this.$message({\r\n                            message: 'SMS login code resent.',\r\n                            type: 'success'\r\n                        });\r\n                    }\r\n                }).catch((error) => {\r\n                    this.errorMessage1 = error.response.data;\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            async submitStore() {   \r\n                if (this.validateForm('step5Form') === true) {\r\n                    //set file\r\n                    var formData = new FormData();\r\n                    if (this.file != null) {\r\n                        formData.append(\"file\", this.file.raw);\r\n                        for (const [key, value] of Object.entries(this.store.imageCropData)) {\r\n                            formData.append(\"imageCropData.\" + key, value);\r\n                        }\r\n                    }\r\n\r\n                    for (const [key, value] of Object.entries(this.store)) {\r\n                        if (key === \"imageCropData\")\r\n                            continue;\r\n                        formData.append(key, value);\r\n                    }\r\n                    for (const [key, value] of Object.entries(this.store.imageCropData)) {\r\n                        formData.append(\"imageCropData.\" + key, value);\r\n                    }\r\n\r\n                    this.loading = true;\r\n                    await axios.post('/api/Participants/signupApp', formData, {\r\n                        headers: {\r\n                            'Content-Type': 'multipart/form-data'\r\n                        }\r\n                    }).then(response => {\r\n                        this.userExists = true;\r\n                        this.loading = false;\r\n                        this.currentStep++;                        \r\n                    }).catch((error) => {\r\n                        this.errorMessage1 = error.response.data;\r\n                        this.loading = false;\r\n                    });\r\n                }\r\n            },\r\n            gotoLogin() {\r\n                router.push('/login');\r\n            }\r\n        },\r\n        computed:{\r\n            form1Valid() {\r\n                let isValid = true;\r\n                //if (!this.isMounted)\r\n                //    return false;\r\n                //this.$refs['step1Form'].validate((valid) => {\r\n                //    isValid = valid;\r\n                //    });\r\n                return isValid;\r\n            },\r\n            ...mapGetters([\r\n                'currentUserDetail'\r\n            ])\r\n        },\r\n        async mounted() {\r\n            this.store.code = this.$route.params.code;\r\n            \r\n            //check code\r\n            if (this.$route.params.code != null) {\r\n                await axios.get('/api/participants/CheckInviteCode?code=' + this.store.code).then(response => {\r\n                    this.store.organizerName = response.data.organizerName;\r\n                    this.store.email = response.data.email;\r\n                    this.store.phone = response.data.phone;\r\n                    this.store.eventId = response.data.event.id;\r\n                    this.event = response.data.event;\r\n                    this.proceed = true;\r\n                }).catch((error) => {\r\n                    this.proceedErrorMessage = error.response.data;\r\n                    this.proceed = false;\r\n                });\r\n            }\r\n            else if (this.$route.params.mobile != null) {\r\n                await axios.get('/api/participants/CheckAppInviteCode/' + this.$route.params.mobile).then(response => {\r\n                    this.store.organizerName = response.data.organizerName;\r\n                    this.store.eventId = response.data.event.id;\r\n                    this.event = response.data.event;\r\n                    this.proceed = true;\r\n                }).catch((error) => {\r\n                    this.proceedErrorMessage = error.response.data;\r\n                    this.proceed = false;\r\n                });\r\n            }\r\n           \r\n        },\r\n        created() {\r\n            this.store.email = this.currentUserDetail.email;\r\n            this.store.formattedphone = this.currentUserDetail.phone;\r\n            this.store.phone = this.currentUserDetail.phone;\r\n            this.store.firstName = this.currentUserDetail.firstName;\r\n            this.store.lastName = this.currentUserDetail.lastName;\r\n        }\r\n    }\r\n</script>\r\n\r\n\r\n<style scoped>\r\n    .email-code {\r\n        text-align: center;\r\n        font-size:20px;\r\n        width:45%;\r\n    }\r\n    button.facebook-button {\r\n        background-color:#3b579d;\r\n        border:0;\r\n        border-radius:3px;\r\n        padding:15px 20px;\r\n        color:white;\r\n        font-size:1rem;\r\n        min-width:250px;\r\n    }\r\n    button.google-button {\r\n        background-color: #DB4437;\r\n        border: 0;\r\n        border-radius: 3px;\r\n        padding: 15px 20px;\r\n        color: white;\r\n        font-size: 1rem;\r\n        min-width: 250px;\r\n    }\r\n            button.facebook-button i, button.google-button i {\r\n                font-size: 1.3rem;\r\n            }\r\n</style>\r\n","import { render } from \"./SignupParticipant.vue?vue&type=template&id=143b4872&scoped=true\"\nimport script from \"./SignupParticipant.vue?vue&type=script&lang=js\"\nexport * from \"./SignupParticipant.vue?vue&type=script&lang=js\"\n\nimport \"./SignupParticipant.vue?vue&type=style&index=0&id=143b4872&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-143b4872\"\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./SignupParticipant.vue?vue&type=style&index=0&id=143b4872&scoped=true&lang=css\"","<template>\r\n    <div class=\"res-card center\">       \r\n        <template v-if=\"resetPassword\">\r\n            <section class=\"h5 font-weight-bold mb-3\">\r\n                <span>RESET PASSWORD</span>\r\n            </section>\r\n            <div class=\"mb-3\">\r\n                <el-alert v-show=\"errorMessage.length > 0\" :title=\"errorMessage\"\r\n                          type=\"error\"\r\n                          effect=\"dark\">\r\n                </el-alert>\r\n                <el-alert v-show=\"successMessage.length > 0\" :title=\"successMessage\"\r\n                          type=\"success\"\r\n                          effect=\"dark\">\r\n                </el-alert>\r\n            </div>\r\n            <el-form :model=\"passwordData\" :rules=\"passwordRules\" ref=\"changePasswordForm\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n                \r\n                <el-form-item label=\"PASSWORD\" prop=\"password\">\r\n                    <el-input type=\"password\" v-model=\"passwordData.password\" v-focus v-fancylabel v-on:keyup.enter=\"submitChanges\"></el-input>\r\n                </el-form-item>\r\n                <el-form-item label=\"CONFIRM PASSWORD\" prop=\"confirmPassword\">\r\n                    <el-input type=\"password\" v-model=\"passwordData.confirmPassword\" v-fancylabel v-on:keyup.enter=\"submitChanges\"></el-input>\r\n                </el-form-item>\r\n                <el-form-item>\r\n                    <el-button type=\"primary\" @click=\"submitChanges\" :loading=\"loading\" class=\"float-left\">SUBMIT</el-button>\r\n                </el-form-item>\r\n            </el-form>\r\n        </template>\r\n        <template v-else>\r\n            <section>You have reset your password click below to login with the new password</section>\r\n            <section class=\"text-center\">\r\n                <el-button type=\"primary\" @click=\"routeToLogin\" >LOGIN</el-button>\r\n            </section>\r\n        </template>\r\n        </div>\r\n</template>\r\n\r\n<script>\r\n    import axios from \"axios\"\r\n    import router from \"../router\"; // our vue router instance\r\n\r\n    export default {\r\n        name: 'PasswordAndSecurity',\r\n        components: {  },\r\n        data() {\r\n            return {\r\n                loading: false,\r\n                resetPassword: true,\r\n                errorMessage: '',\r\n                successMessage:'',\r\n                passwordData: {},\r\n                passwordRules: {\r\n                    password: [\r\n                        { required: true, type: 'string', pattern: /^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9])(?!.*\\s).{8,15}$/g, message: 'Password must be 8 to 15 characters with at least one lowercase, one uppercase letter, one numeric digit, and one special character:', trigger: 'blur' }\r\n                    ],\r\n                    confirmPassword: [\r\n                        {\r\n                            required: true,\r\n                            validator: (rule, value, callback) => {\r\n                                return value === this.passwordData.password;\r\n                            }\r\n                            , message: 'Passwords are not matched', trigger: 'blur'\r\n                        }\r\n                    ]\r\n                }\r\n            }\r\n        },\r\n        methods: {\r\n            submitChanges() {\r\n                this.$refs[\"changePasswordForm\"].validate((valid) => {\r\n                    if (valid) {\r\n                        this.loading = true;\r\n                        this.passwordData.token = this.$route.query.token;\r\n                        this.passwordData.email = this.$route.query.email;\r\n                        axios.post(\"/api/users/resetpassword\", this.passwordData).then(response => {\r\n                            this.loading = false;\r\n                            if (response.data == \"1\") {\r\n                                this.resetPassword = false;\r\n                                this.errorMessage = \"\";\r\n                                this.successMessage = \"You have reset your password we are redirecting you to the login page\";\r\n                                router.push(\"/login\");\r\n                            }\r\n                            else {\r\n                                this.successMessage = \"\";\r\n                                this.errorMessage = \"Please try again later.\";\r\n                            }\r\n                        }).catch((error) => {\r\n                            this.loading = false;\r\n                            this.successMessage = \"\";\r\n                            this.errorMessage = \"Please try again later.\";\r\n                        });\r\n                    }\r\n                });\r\n            },\r\n            routeToLogin() {\r\n                router.push(\"/login\");\r\n            }\r\n        },\r\n        computed: {\r\n           \r\n        },\r\n        mounted() {\r\n          \r\n        },\r\n        created() {\r\n          \r\n        }\r\n    }\r\n</script>\r\n\r\n\r\n<style>\r\n  \r\n</style>\r\n","import { render } from \"./ResetPassword.vue?vue&type=template&id=1515a822\"\nimport script from \"./ResetPassword.vue?vue&type=script&lang=js\"\nexport * from \"./ResetPassword.vue?vue&type=script&lang=js\"\nscript.render = render\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./PublicStore.vue?vue&type=style&index=0&id=a663680a&scoped=true&lang=css\"","<template>\r\n    <div class=\"row center col-md-12 justify-content-center mb-1\" style=\"padding-right:unset; padding-left:unset\">\r\n        <!-- <img src=\"https://coloradojackgivebacksa.blob.core.windows.net/vuepublicpage/popcorn3200x800.webp\" class=\"col-md-12\" style=\"aspect-ratio:16/4; padding-left:0; padding-right:0\" />-->\r\n        <img src=\"https://coloradojackgivebacksa.blob.core.windows.net/vuepublicpage/virutalfundraising.webp\" class=\"col-md-12 img-fluid\" style=\"padding-left:0; padding-right:0\" />\r\n    </div>\r\n\r\n    <!--<div class=\"row center col-md-10 justify-content-center mb-5\">\r\n        <img src=\"https://coloradojackgivebacksa.blob.core.windows.net/vuepublicpage/kid_virtual.webp\" class=\"img-fluid col-md-4\" style=\"padding-left:0; padding-right:0\" />\r\n        <div class=\"col-md-6\" style=\"color: white; background-color: #983222\">\r\n            <H1 class=\"mb-2\" style=\"color: white;\">WHY ONLINE FUNDRAISING?</H1>\r\n            <p class=\"mt-2 ml-5 el-icon-check\" style=\"color: white;\"> The product will be shipped directly to the donator, so there is no product to distribute and no payments to collect.</p>\r\n            <p class=\"mt-2 ml-5 el-icon-check\" style=\"color: white;\"> The donator will pay for their order on the Online store.</p>\r\n            <p class=\"mt-2 ml-5 el-icon-check\" style=\"color: white;\"> Invites are sent directly from the computer or mobile device to donators.</p>\r\n            <p class=\"mt-2 ml-5 el-icon-check\" style=\"color: white;\"> Keep 50% of what you sell. Minus the shipping and handling fee's</p>\r\n            <p class=\"mt-2 ml-5 el-icon-check\" style=\"color: white;\"> No order forms or paper to keep track of.</p>\r\n\r\n            <h2 class=\"mt-2 ml-5\" style=\"color: white;\">Are you ready to start a new Online Fundraiser?</h2>\r\n            <div class=\"mb-2\" style=\"text-align:center\">\r\n                <el-button type=\"danger\" style=\"background-color: white; color: #983222; width: 60%; padding-bottom: 20px\" size=\"large\" @click=\"toNewEvent\">Start Today!</el-button>\r\n            </div>\r\n        </div>\r\n    </div>-->\r\n    <!-- <hr class=\"col-md-12 mb-1\" style=\"color: #983222; height: 20px; background-color: #983222;\" />-->\r\n\r\n    <div class=\"row center col-md-10 justify-content-center mb-5\">\r\n        <div class=\"col-md-10\" style=\"color: black; justify-content:center\">\r\n            <H1 class=\"mb-2\" style=\"color: black;\">How does it work?</H1>\r\n            <div class=\"row col-10 center\">\r\n                <p class=\"mt-2 \" style=\"color: black;\">1. A fundraising coordinator will choose to create a new Online Fundraiser.</p>\r\n            </div>\r\n            <div class=\"row col-10 center\">\r\n                <p class=\"mt-2 \" style=\"color: black;\">2. Once the fundraiser has been created, the coordinator will invite each team member/seller to create their own eCommerce store, in conjunction with the fundraiser, via email or sms.</p>\r\n            </div>\r\n            <div class=\"row col-10 center\">\r\n                <p class=\"mt-2 \" style=\"color: black;\">3. After the team members/sellers accept the invite, they will be brought to a seller signup page where they will be prompted to create their own account and password. </p>\r\n            </div>\r\n            <div class=\"row col-10 center\">\r\n                <p class=\"mt-2 \" style=\"color: black;\">4. The system will then automatically create a new online store customized for each fundraising seller. The sellers can then share a link to their store with others via SMS/Email or social media.</p>\r\n            </div>\r\n            <div class=\"row col-10 center\">\r\n                <p class=\"mt-2 \" style=\"color: black;\">5. Sellers will also be able to monitor store goals and store donations in their seller dashboard.</p>\r\n            </div>\r\n\r\n            <div class=\"row mb-2 col-10 center\" style=\"text-align:center; justify-content:center\">\r\n                <el-button type=\"danger\" style=\"background-color: #983222; color: white; padding-bottom: 20px; min-width:300px\" size=\"large\" @click=\"toNewEvent\">Start Today!</el-button>\r\n            </div>\r\n        </div>      \r\n    </div>\r\n    <hr />\r\n    <div class=\"row center justify-content-center\" v-if=\"stores.length > 0\">\r\n        <h1 class=\"mb-2\" style=\"color: black;\">Check out some of the current online fundraising stores!</h1>\r\n    </div>\r\n    <div class=\"row center col-12 justify-content-center\" v-if=\"stores.length > 0\">\r\n        <el-carousel interval=\"4000\"  indicator-position=\"outside\" height=\"900px\" style=\"width:1200px\">\r\n            <el-carousel-item v-for=\"store in stores\" :key=\"store.id\">\r\n                <el-card style=\"padding-top:30px; padding-right:60px; padding-left:60px; padding-bottom:30px;\">\r\n                    <div class=\"image-cover\">\r\n                        <el-image :src=\"store.imageSrc\" style=\"border-radius:30px\">\r\n                            <template #error>\r\n                                <div class=\"image-slot\">\r\n                                    <i class=\"el-icon-picture-outline\"></i>\r\n                                </div>\r\n                            </template>\r\n                        </el-image>\r\n                        <div class=\"img-overlay\">\r\n                            <el-image :src=\"store.eventImageSrc\">\r\n                                <template #error>\r\n                                    <div class=\"image-slot\">\r\n                                        <i class=\"el-icon-picture-outline\"></i>\r\n                                    </div>\r\n                                </template>\r\n                            </el-image>\r\n                        </div>\r\n                    </div>\r\n                    <h6 class=\"mt-1\">Total store sales: ${{store.subTotal}} towards goal of: ${{store.targetAmount}}</h6>\r\n                    <h6 class=\"mt-1\">Fundraising team total sales: ${{store.eventSubTotal}}</h6>\r\n                    <h2 class=\"mt-2\" style=\"color: #983222;\"><a :href=\"store.publicUrl\" target=\"_blank\" class=\"center\"><h5 class=\"center\" style=\"justify-content: center; color: #9A3324\">{{store.title}}</h5></a></h2>\r\n                    <h6 class=\"mt-2 overflow-auto\" style=\"text-align:left\">{{store.description}}</h6>\r\n                </el-card>\r\n            </el-carousel-item>\r\n        </el-carousel>\r\n    </div>\r\n\r\n</template>\r\n\r\n<script>\r\n    import axios from \"axios\"\r\n    import router from \"../router\";\r\n    import { mapGetters } from \"vuex\"\r\n\r\nexport default {\r\n        name: 'VirtualFundraising',\r\n        data() {\r\n            return {\r\n                stores: [],\r\n            }\r\n        },\r\n        methods: {\r\n            toNewEvent() {\r\n                router.push(\"/Signup\");\r\n            },\r\n            toLogin() {\r\n                router.push(\"/login\");\r\n            },\r\n            openDetail(store) {\r\n                //this.loading = true;\r\n                router.push('/store/public/' + store.code);                \r\n                //this.loading = false;\r\n            },\r\n        },\r\n        computed: {\r\n            ...mapGetters([\r\n                'isAuthenticated', 'cart', 'currentUserDetail'\r\n            ])\r\n        },\r\n        created() {\r\n            axios.get(\"/api/stores/getpublicstores\").then(response => {\r\n                this.stores = response.data.filter(i => i.status === \"Open\");  \r\n                //this.stores = response.data;  \r\n            });\r\n            \r\n        }\r\n}\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n\r\n    \r\n\r\n    /* page content */\r\n    h1, h2, h3, h4, h5 {\r\n        /*font-family: Trebuchet MS;*/\r\n        font-weight: bold;\r\n        text-align: center;\r\n    }\r\n    h6 {\r\n        /*font-family: Trebuchet MS;*/\r\n        text-align: center;\r\n    }\r\n\r\n    .res-card {\r\n        background-color: white;\r\n    }\r\n   \r\n    .multi-bg-example {\r\n        width: 100%;\r\n        height: 800px;\r\n        background-image: url(\"https://coloradojackgivebacksa.blob.core.windows.net/publicwebsiteimages/5 Flavors with corn cobs.png\");\r\n        background-repeat: no-repeat;\r\n        background-position: bottom right, left, right;\r\n    }\r\n\r\n    .jumbotron-welcome {\r\n        background-image: url(\"https://coloradojackgivebacksa.blob.core.windows.net/vuepublicpage/Kid.jpg\");\r\n        background-size: cover;\r\n        color: white;\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 380px) {\r\n        p {\r\n            font-size: 1.0rem;\r\n        }\r\n        h1 {\r\n            font-size: 1.5rem;\r\n        }\r\n        h2 {\r\n            font-size: 1.0rem;\r\n        }\r\n        h5 {\r\n            font-size: 1.0rem;\r\n        }\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 544px) {\r\n        p {\r\n            font-size: 1.0rem;\r\n        }\r\n        h1 {\r\n            font-size: 1.5rem;\r\n        }\r\n        h2 {\r\n            font-size: 1.25rem;\r\n        }\r\n        h5 {\r\n            font-size: 1.00rem;\r\n        }\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */\r\n    @media (min-width: 768px) {\r\n        p {\r\n            font-size: 1.0rem;\r\n        }\r\n        h1 {\r\n            font-size: 2.0rem;\r\n        }\r\n        h2 {\r\n            font-size: 1.75rem;\r\n        }\r\n        h5 {\r\n            font-size: 1.25rem;\r\n        }\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Large devices (desktops, 992px and up) */\r\n    @media (min-width: 992px) {\r\n        p {\r\n            font-size: 1.25rem;\r\n        }\r\n        h1 {\r\n            font-size: 2.5rem;\r\n        }\r\n        h2 {\r\n            font-size: 2.0rem;\r\n        }\r\n        h5 {\r\n            font-size: 1.5rem;\r\n        }\r\n        h6 {\r\n            font-size: 1.1rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Extra large devices (large desktops, 1200px and up) */\r\n    @media (min-width: 1200px) {\r\n        p {\r\n            font-size: 1.50rem;\r\n        }\r\n        h1 {\r\n            font-size: 3.0rem;\r\n        }\r\n        h2 {\r\n            font-size: 2.5rem;\r\n        }\r\n        h5 {\r\n            font-size: 2.0rem;\r\n        }\r\n        h6 {\r\n            font-size: 1.2rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    .video-container {\r\n        position: relative;\r\n        padding-bottom: 56.25%;\r\n        padding-top: 30px;\r\n        height: 0;\r\n        overflow: hidden;\r\n    }\r\n\r\n    .video-container iframe, .video-container object, .video-container embed {\r\n        position: absolute;\r\n        top: 0;\r\n        left: 0;\r\n        width: 100%;\r\n        height: 100%;\r\n    }\r\n\r\n   /* .el-carousel__item h1 {\r\n        display: flex;\r\n        color: #475669;\r\n        opacity: 0.75;\r\n        line-height: 600px;\r\n        margin: 0;\r\n        max-width: 100%;\r\n    }*/\r\n</style>\r\n","import { render } from \"./VirtualFundraising.vue?vue&type=template&id=eb5eab24&scoped=true\"\nimport script from \"./VirtualFundraising.vue?vue&type=script&lang=js\"\nexport * from \"./VirtualFundraising.vue?vue&type=script&lang=js\"\n\nimport \"./VirtualFundraising.vue?vue&type=style&index=0&id=eb5eab24&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-eb5eab24\"\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./StoreDetail.vue?vue&type=style&index=0&id=ed6598c2&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./ProductDetail.vue?vue&type=style&index=0&id=16b07b16&lang=css\"","import axios from \"axios\";\r\nimport store from \"../store\";\r\nimport router from \"../router\";\r\n\r\nexport default function axiosSetUp() {\r\n    // Add a request interceptor\r\n    axios.interceptors.request.use(\r\n        function (config) {\r\n            // Do something before request is sent\r\n            const token = store.getters.accessToken;\r\n            if (token) {\r\n                config.headers.Authorization = `Bearer ${token}`;\r\n            }\r\n            return config;\r\n        },\r\n        function (error) {\r\n            // Do something with request error\r\n            return Promise.reject(error);\r\n        }\r\n    );\r\n\r\n    // Add a response interceptor\r\n    axios.interceptors.response.use(\r\n        function (response) {\r\n            // Any status code that lie within the range of 2xx cause this function to trigger\r\n            // Do something with response data\r\n            return response;\r\n        },\r\n        async function (error) {\r\n            // Any status codes that falls outside the range of 2xx cause this function to trigger\r\n            // Do something with response error\r\n            const originalRequest = error.config;\r\n            if (error && error.response &&\r\n                error.response.status === 401 &&\r\n                originalRequest.url.includes(\"users/refresh-token/\")\r\n            ) {\r\n                store.commit(\"clearUserData\");\r\n                router.push(\"/login\");\r\n                return Promise.reject(error);\r\n            } else if (error.response.status === 401 && !originalRequest._retry) {\r\n                originalRequest._retry = true;\r\n                await store.dispatch(\"refreshToken\");\r\n                return axios(originalRequest);\r\n            }\r\n            return Promise.reject(error);\r\n        }\r\n    );\r\n}","import 'bootstrap/dist/css/bootstrap.css'\r\nimport 'bootstrap/dist/js/bootstrap.js'\r\nimport './assets/css/app.css'\r\nimport './assets/css/element-override.css'\r\nimport './assets/fontawesome-free-5.15.3-web/css/all.min.css'\r\nimport { createApp } from 'vue'\r\nimport App from './App.vue'\r\nimport router from './router'\r\nimport store from './store'\r\nimport axiosSetup from \"./helpers/axios_interceptors\";\r\nimport 'element-plus/lib/theme-chalk/index.css';\r\nimport { Chart } from 'chart.js';\r\nimport ChartDataLabels from 'chartjs-plugin-datalabels';\r\nimport VueCropper from 'vue-cropperjs';\r\nimport 'cropperjs/dist/cropper.css';\r\nimport * as $ from \"jquery\";\r\nimport { ApplicationInsights } from '@microsoft/applicationinsights-web';\r\n\r\n\r\nChart.register(ChartDataLabels);\r\n\r\nimport {\r\n    ElAlert,\r\n    ElAside,\r\n    ElAutocomplete,\r\n    ElAvatar,\r\n    ElBacktop,\r\n    ElBadge,\r\n    ElBreadcrumb,\r\n    ElBreadcrumbItem,\r\n    ElButton,\r\n    ElButtonGroup,\r\n    ElCalendar,\r\n    ElCard,\r\n    ElCarousel,\r\n    ElCarouselItem,\r\n    ElCascader,\r\n    ElCascaderPanel,\r\n    ElCheckbox,\r\n    ElCheckboxButton,\r\n    ElCheckboxGroup,\r\n    ElCol,\r\n    ElCollapse,\r\n    ElCollapseItem,\r\n    ElCollapseTransition,\r\n    ElColorPicker,\r\n    ElContainer,\r\n    ElDatePicker,\r\n    ElDialog,\r\n    ElDivider,\r\n    ElDrawer,\r\n    ElDropdown,\r\n    ElDropdownItem,\r\n    ElDropdownMenu,\r\n    ElFooter,\r\n    ElForm,\r\n    ElFormItem,\r\n    ElHeader,\r\n    ElIcon,\r\n    ElImage,\r\n    ElInput,\r\n    ElInputNumber,\r\n    ElLink,\r\n    ElMain,\r\n    ElMenu,\r\n    ElMenuItem,\r\n    ElMenuItemGroup,\r\n    ElOption,\r\n    ElOptionGroup,\r\n    ElPageHeader,\r\n    ElPagination,\r\n    ElPopconfirm,\r\n    ElPopover,\r\n    ElPopper,\r\n    ElProgress,\r\n    ElRadio,\r\n    ElRadioButton,\r\n    ElRadioGroup,\r\n    ElRate,\r\n    ElRow,\r\n    ElScrollbar,\r\n    ElSelect,\r\n    ElSlider,\r\n    ElStep,\r\n    ElSteps,\r\n    ElSubmenu,\r\n    ElSwitch,\r\n    ElTabPane,\r\n    ElTable,\r\n    ElTableColumn,\r\n    ElTabs,\r\n    ElTag,\r\n    ElTimePicker,\r\n    ElTimeSelect,\r\n    ElTimeline,\r\n    ElTimelineItem,\r\n    ElTooltip,\r\n    ElTransfer,\r\n    ElTree,\r\n    ElUpload,\r\n    ElInfiniteScroll,\r\n    ElLoading,\r\n    ElMessage,\r\n    ElMessageBox,\r\n    ElNotification,\r\n} from 'element-plus';\r\n\r\nconst components = [\r\n    ElAlert,\r\n    ElAside,\r\n    ElAutocomplete,\r\n    ElAvatar,\r\n    ElBacktop,\r\n    ElBadge,\r\n    ElBreadcrumb,\r\n    ElBreadcrumbItem,\r\n    ElButton,\r\n    ElButtonGroup,\r\n    ElCalendar,\r\n    ElCard,\r\n    ElCarousel,\r\n    ElCarouselItem,\r\n    ElCascader,\r\n    ElCascaderPanel,\r\n    ElCheckbox,\r\n    ElCheckboxButton,\r\n    ElCheckboxGroup,\r\n    ElCol,\r\n    ElCollapse,\r\n    ElCollapseItem,\r\n    ElCollapseTransition,\r\n    ElColorPicker,\r\n    ElContainer,\r\n    ElDatePicker,\r\n    ElDialog,\r\n    ElDivider,\r\n    ElDrawer,\r\n    ElDropdown,\r\n    ElDropdownItem,\r\n    ElDropdownMenu,\r\n    ElFooter,\r\n    ElForm,\r\n    ElFormItem,\r\n    ElHeader,\r\n    ElIcon,\r\n    ElImage,\r\n    ElInput,\r\n    ElInputNumber,\r\n    ElLink,\r\n    ElMain,\r\n    ElMenu,\r\n    ElMenuItem,\r\n    ElMenuItemGroup,\r\n    ElOption,\r\n    ElOptionGroup,\r\n    ElPageHeader,\r\n    ElPagination,\r\n    ElPopconfirm,\r\n    ElPopover,\r\n    ElPopper,\r\n    ElProgress,\r\n    ElRadio,\r\n    ElRadioButton,\r\n    ElRadioGroup,\r\n    ElRate,\r\n    ElRow,\r\n    ElScrollbar,\r\n    ElSelect,\r\n    ElSlider,\r\n    ElStep,\r\n    ElSteps,\r\n    ElSubmenu,\r\n    ElSwitch,\r\n    ElTabPane,\r\n    ElTable,\r\n    ElTableColumn,\r\n    ElTabs,\r\n    ElTag,\r\n    ElTimePicker,\r\n    ElTimeSelect,\r\n    ElTimeline,\r\n    ElTimelineItem,\r\n    ElTooltip,\r\n    ElTransfer,\r\n    ElTree,\r\n    ElUpload,\r\n]\r\n\r\nconst plugins = [\r\n    ElInfiniteScroll,\r\n    ElLoading,\r\n    ElMessage,\r\n    ElMessageBox,\r\n    ElNotification,\r\n]\r\n\r\nconst appInsights = new ApplicationInsights({\r\n    config: {\r\n        connectionString: 'InstrumentationKey=b3ee4aac-8975-4892-bc79-ea11f1848ccc;IngestionEndpoint=https://centralus-0.in.applicationinsights.azure.com/;LiveEndpoint=https://centralus.livediagnostics.monitor.azure.com/'\r\n        /* ...Other Configuration Options... */\r\n    }\r\n});\r\nappInsights.loadAppInsights();\r\nappInsights.trackPageView(); // Manually call trackPageView to establish the current user/session/pageview\r\n\r\n// call the axios setup method here\r\naxiosSetup();\r\n\r\nconst createdApp = createApp(App);\r\ncreatedApp.use(store).use(router).use(ElSelect, { size: 'large', zIndex: 3000 });\r\n\r\ncomponents.forEach(component => {\r\n    createdApp.component(component.name, component)\r\n})\r\n\r\ncreatedApp.component('VueCropper',VueCropper);\r\n\r\nplugins.forEach(plugin => {\r\n    createdApp.use(plugin)\r\n})\r\n\r\ncreatedApp.directive('fancylabel', {\r\n     //When the bound element is mounted into the DOM...\r\n    mounted(el, binding, vnode) {\r\n        const element = el.querySelectorAll('input,textarea,select')[0];\r\n        if (element) {\r\n            const $this = $(element);\r\n            \r\n            const $label = $this.parents(\".el-form-item\").find(\"label.el-form-item__label\");\r\n            if ($this.attr('disabled'))\r\n                 $label.addClass(\"top\");\r\n            //Wait 100 ms for the input to get it's value rendered because the directive added to el-input not input\r\n            window.setTimeout(function () {\r\n                if (element.value != null && element.value.trim().length > 0) {\r\n                    $label.addClass(\"top\");\r\n                }\r\n            }, 100);\r\n\r\n            $this.focus(function () {\r\n                $label.addClass(\"top\");\r\n            });\r\n\r\n        }\r\n    }\r\n});\r\n\r\ncreatedApp.directive('focus', {\r\n    // When the bound element is mounted into the DOM...\r\n    mounted(el, binding, vnode) {\r\n        const element = el.querySelectorAll('input,textarea,select')[0];\r\n        if (element) {           \r\n            const $this = $(element);\r\n            const $label = $this.parents(\".el-form-item\").find(\"label.el-form-item__label\");\r\n            $label.addClass(\"top\");\r\n            element.focus();\r\n        }\r\n    }\r\n});\r\n\r\ncreatedApp.directive('focusbutton', {\r\n    // When the bound element is mounted into the DOM...\r\n    mounted(el, binding, vnode) {\r\n        const element = el.getElementsByTagName('button')[0];\r\n        if (element) {\r\n            element.focus();\r\n        }\r\n    }\r\n});\r\n\r\n\r\ncreatedApp.mount('#app')\r\n\r\n","<template>\r\n    <div class=\"container\" :loading=\"loading\">\r\n        <div class=\"row no-gutters\" v-if=\"!editMode\">\r\n            <div class=\"col-8 h4 font-weight-normal pt-2 pb-2 p-sm-0 pb-sm-3 elipssis center\" style=\"justify-content: center; text-align: center\">\r\n                <a :href=\"store.publicUrl\" class=\"center\"><h5 class=\"center\" style=\"justify-content: center; color: #9A3324\">{{storeEdit.title}}</h5></a>\r\n            </div>\r\n        </div>\r\n        <div class=\"row no-gutters\">\r\n            <div class=\"col image-cover\">\r\n                <el-image style=\"border-radius:30px\" :src=\"store.eventImageSrc\" v-if=\"!editMode\">\r\n                    <template #error>\r\n                        <div class=\"image-slot\">\r\n                            <i class=\"el-icon-picture-outline\"></i>\r\n                        </div>\r\n                    </template>\r\n                </el-image>\r\n                <div class=\"img-overlay mt-lg-5\">\r\n                    <el-image :src=\"store.imageSrc\">\r\n                        <template #error>\r\n                            <div class=\"image-slot\">\r\n                                <i class=\"el-icon-picture-outline\"></i>\r\n                            </div>\r\n                        </template>\r\n                    </el-image>\r\n                </div>\r\n                <ImageUploader @crop=\"setCropData\" @image-selected=\"setSelectedImage\" v-if=\"editMode\" :image=\"store.imageSrc\"></ImageUploader>\r\n            </div>\r\n        </div>\r\n        <div class=\"row pt-1 pb-1\" style=\"justify-content:center; text-align:center\">\r\n            <div class=\"header-text col-10 col-lg-6 mb-1 mb-lg-0 mt-3\">\r\n                <div v-if=\"store.status=='Open'||store.status=='Draft'\">\r\n                    <div class=\"row\">\r\n                        <div class=\"col-12\"><h4>Store will open in:</h4></div>\r\n                    </div>\r\n                    <div class=\"row no-gutters\">\r\n                        <div class=\"col-12\"><h5 style=\"color: #983222\"><EventTimer v-bind:startDate=\"Date.now()\" v-bind:endDate=\"store.startDate\" v-if=\"store.endDate!=null\"></EventTimer></h5></div>\r\n                    </div>\r\n                </div>\r\n                <div v-else>\r\n                    <div class=\"row\">\r\n                        <div class=\"col-12\"><h4>Store Closed</h4></div>\r\n                    </div>\r\n                </div>\r\n            </div>           \r\n        </div>\r\n        <div class=\"row no-gutters mt-lg-5\" v-if=\"editMode\">\r\n            <div class=\"col-12\">\r\n                <el-form :model=\"storeEdit\" :rules=\"storeEditRules\" ref=\"storeEditForm\" :label-position=\"top\" hide-required-asterisk=\"true\">\r\n                    <el-form-item label=\"TITLE\" prop=\"title\">\r\n                        <el-input v-model=\"storeEdit.title\" v-fancylabel v-on:keyup.enter=\"saveChanges\"></el-input>\r\n                    </el-form-item>\r\n                    <el-form-item label=\"DESCRIPTION\" prop=\"description\">\r\n                        <el-input v-model=\"storeEdit.description\" v-fancylabel v-on:keyup.enter=\"saveChanges\"></el-input>\r\n                    </el-form-item>\r\n                    <el-form-item label=\"STORE TARGET AMOUNT\" prop=\"targetamount\">\r\n                        <el-input v-model=\"storeEdit.targetamount\" v-fancylabel v-on:keyup.enter=\"saveChanges\"></el-input>\r\n                    </el-form-item>\r\n                </el-form>\r\n            </div>\r\n        </div>\r\n        <!-- <hr class=\"d-none d-sm-block\" />-->\r\n        <div class=\"row\">\r\n            <div class=\"col-12\">\r\n                <h6><label class=\"top-label\">Closed Store Information</label></h6>\r\n                <div class=\"title\">\r\n                    <div style=\"overflow: hidden; \">\r\n                        <div class=\"row\" v-if=\"store.status=='Open'||store.status=='Draft'\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Edit Store:</h6></div>\r\n                            <el-button-group class=\"col-8\">\r\n                                <el-button style=\"width: 130px; background-color: #983222\" class=\"mr-2\" type=\"info\" size=\"small\" icon=\"el-icon-edit-outline\" @click=\"editMode=true\" v-if=\"!editMode\" title=\"Edit Store, this button allows you to make changes to Store title, Description and Store Picture!\">Edit Store</el-button>\r\n                                <el-button style=\"width: 130px; background-color: red\" class=\"mr-2\" type=\"info\" size=\"small\" icon=\"el-icon-check\" :loading=\"loading\" @click=\"saveChanges\" v-if=\"editMode\" title=\"Save Changes to Store!\">Save Changes</el-button>\r\n                            </el-button-group>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Store Status:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{store.status}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Store Title:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{storeEdit.title}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Store Description:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{storeEdit.description}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Open your Store page:</h6></div>\r\n                            <div class=\"col-8 text-left\">\r\n                                <div class=\"col-8 elipssis pl-0\" v-if=\"store.code!=null\"><a :href=\"store.publicUrl\" target=\"_blank\" class=\"center\"><h6 class=\"center\" style=\"justify-content: center; color: #9A3324\">{{storeEdit.title}}</h6></a></div>\r\n                                <!--<a :href=\"store.publicUrl\" id=\"storeCode\" :data-copy=\"store.publicUrl\" title=\"Go to Online store page\"><h6 style=\"color: #9A3324\">{{storeEdit.title}}</h6></a>-->\r\n                            </div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Copy Link to Online Store:</h6></div>\r\n                            <el-popover placement=\"top\"\r\n                                        :width=\"650\"\r\n                                        auto-close=\"4000\"\r\n                                        :trigger=\"click\"\r\n                                        effect=\"dark\"\r\n                                        content=\"Copied Online Store to clipboard, you can now paste the link into an Email or SMS message!\">\r\n                                <template #reference>\r\n                                    <h6 class=\"col-7 el-icon-copy-document c-pointer h6\" style=\"color: #9A3324\" title=\"Copy Online Store URL to your clipboard, then you can paste into an email or text message\" id=\"storeCode\" :data-copy=\"store.publicUrl\" @click=\"copyCode\"> {{store.publicUrl}}</h6>\r\n                                </template>\r\n                            </el-popover>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Fundraiser Start Date:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{new Date(store.eventStartDate).toLocaleDateString(\"en-US\",{  year: 'numeric', month: 'long', day: 'numeric' })}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Fundraiser End Date:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{new Date(store.eventEndDate).toLocaleDateString(\"en-US\",{  year: 'numeric', month: 'long', day: 'numeric' })}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\" v-if=\"hasRunningEvent\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Fundraiser:</h6></div>\r\n                            <a class=\"col-8 text-left nav-link c-pointer\" style=\"font-size:16px; color: #9A3324\" @click=\"toEvent\"><h6>Go Back to Running Fundraiser Dashboard</h6></a>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 font-weight-normal\"><h6>Share Store:</h6></div>\r\n                            <div class=\"col-8\" v-if=\"store.status=='Open'||store.status=='Draft'\">\r\n                                <el-button-group>\r\n                                    <a style=\"background-color:aquamarine\" class=\"el-button el-button--small mr-2\" v-bind:href=\"smsUrl\" v-if=\"isMobile\"><i class=\"fas fa-sms\" style='color: white'></i></a>\r\n                                    <el-button v-if=\"!isMobile\" class=\"mr-1\" size=\"small\" type=\"success\" icon=\"fas fa-sms\" @click=\"invDonatorSMSVisible=true\" title=\"Share your fundraising Store via SMS!\"></el-button>\r\n                                    <el-button class=\"mr-1\" type=\"primary\" size=\"small\" icon=\"fas fa-envelope\" @click=\"invDonatorVisible=true\" title=\"Share your fundraising Store via Email!\"></el-button>\r\n                                    <a class=\"share-facebook el-button el-button--small mr-1\" @click=\"shareOnFacebook2\"><i class=\"fab fa-facebook\" title=\"Share your Fundraising Store on Facebook\"></i></a>\r\n                                    <a class=\"share-twitter el-button el-button--small\" @click=\"shareOnTwitter\"><i class=\"fab fa-twitter\" title=\"Share your Fundraising Store on Twitter\"></i></a>\r\n                                    <!--<a style=\"width:130px; background-color:aquamarine\" class=\"el-button el-button--small mr-2\" href=\"`sms:+17018665998?&body={this.store.publicUrl}`\" v-if=\"isMobile\">Share SMS on Phone</a>-->\r\n                                </el-button-group>\r\n                            </div>\r\n                        </div>\r\n                        <hr />\r\n                        <div class=\"statistics\">\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Store Fundrainsing Goal:</h6></div>\r\n                                <div class=\"col-2 text-left\"><h6 class=\"money\">{{parseFloat(storeEdit.targetamount).toFixed(2)}}</h6></div>\r\n                            </div>\r\n\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Total Direct Donations (After Fees):</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6 class=\"money\">{{totalDirectDonationsNet}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Total Popcorn Earnings (50%):</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6 class=\"money\">{{totalPopcornSales}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Total Fundraiser Earnings:</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6 class=\"\">{{totalEarnedProfits}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Number of Donations:</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6>{{store.donationsCount}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Store Progress (%):</h6></div>\r\n                                <div class=\"col-8 font-weight-normal\">\r\n                                    <el-progress text-inside=\"true\" stroke-width=\"20\" :percentage=\"storePercent\" status=\"success\" />\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n\r\n                    </div>\r\n                </div>\r\n            </div>\r\n            <div class=\"col-12\">\r\n                <label class=\"top-label\"><h6>STORE EARNINGS BREAKDOWN</h6></label>\r\n                <el-badge :value=\"store.donationsCount\" v-if=\"parseInt(store.donationsCount)>0\" class=\"count\" title=\"This is the Number of people that have donated to your cause!\">\r\n                </el-badge>\r\n\r\n                <div class=\"donators\">\r\n                    <div class=\"row\" style=\"justify-content:center\">\r\n                        <el-button size=\"small\" style=\"background-color: #983222;\" type=\"danger\" @click=\"downloadCSV\">Download CSV</el-button>\r\n                    </div>\r\n                    <hr />\r\n\r\n                    <el-table :data=\"safeEventOrderDetails\" size=\"mini\" style=\"width:100%\" height=\"350\">\r\n                        <el-table-column prop=\"createdAt\" label=\"Order Date\" width=\"150\" :formatter=\"formatDate\" />\r\n                        <el-table-column prop=\"number\" label=\"Order Number\" width=\"175\" />\r\n                        <el-table-column prop=\"buyerName\" label=\"Buyer Name\" width=\"150\" />\r\n                        <el-table-column label=\"Popcorn Sale Earnings\"\r\n                                         width=\"160\"\r\n                                         :formatter=\"calculatePopcornAmount\"\r\n                                         :cell-class-name=\"getCellClass\" />\r\n                        <el-table-column prop=\"directDonationAmount\"\r\n                                         label=\"Direct Donations\"\r\n                                         width=\"150\"\r\n                                         :formatter=\"formatCurrency\"\r\n                                         :cell-class-name=\"getCellClass\" />\r\n                        <el-table-column label=\"Processing Fee\"\r\n                                         width=\"150\"\r\n                                         :formatter=\"calculateFeesDeducted\"\r\n                                         :cell-class-name=\"getCellClass\" />                       \r\n                        <el-table-column label=\"Order Earnings\"\r\n                                         width=\"150\"\r\n                                         :formatter=\"calculateEarnings\"\r\n                                         :cell-class-name=\"getCellClass\" />\r\n                    </el-table>\r\n\r\n                    <!-- Summary Section -->\r\n                    <hr />\r\n                    <div class=\"summary-section\">\r\n                        <div class=\"row\">\r\n                            <div class=\"col-9\"><h6>Total Profit Earned:</h6></div>\r\n                            <div class=\"col-3 text-left\"><h6 style=\"color: green\">{{ totalEarnedProfits }}</h6></div>\r\n                        </div>\r\n                    </div>\r\n                    <hr />\r\n                    <div class=\"fundraiser-earnings-explainer\">\r\n                        <h6>📊 How Fundraiser Earnings Are Calculated:</h6>\r\n                        <ul>\r\n                            <li><strong>Popcorn Sales:</strong> 50% of total popcorn sales go directly to the fundraiser.</li>\r\n                            <li><strong>Direct Donations:</strong> 90% of each donation goes to the fundraiser, with a 10% fee deducted to cover credit card processing, hosting, website maintenance, and operational costs.</li>\r\n                        </ul>\r\n                        <p><strong>Final Formula:</strong></p>\r\n                        <p>\r\n                            <code>Total Earnings = (Popcorn Sales / 2) + (Direct Donations × 90%)</code>\r\n                        </p>\r\n                    </div>\r\n                </div>\r\n            </div>           \r\n        </div>\r\n    </div>\r\n\r\n    <el-dialog title=\"INVITE BUYERS WITH SMS\" :width=\"dialogWidth\" :top=\"dialogTop\" v-model=\"invDonatorSMSVisible\">\r\n        <div class=\"\" style=\"overflow:auto\">\r\n            <form novalidate>\r\n                <el-alert v-show=\"errorMessage.length>0\" :title=\"errorMessage\"\r\n                          type=\"error\"\r\n                          effect=\"dark\">\r\n                </el-alert>\r\n                <div class=\"row no-gutters pb-2 h5\">\r\n                    <div class=\"col-12 text-break\">\r\n                        Currently your store is not open for ordering, but you can still invite buyers to view it, they can use the link later once the store is open.\r\n                    </div>\r\n                </div>\r\n                <div class=\"row no-gutters pb-2 h5\">\r\n                    <div class=\"col-12\">\r\n                        PHONE NUMBER\r\n                    </div>\r\n                </div>\r\n                <div class=\"row no-gutters align-items-center pb-2\" v-for=\"donator in invitedDonatorsSMS\" :key=\"donator.counter\">\r\n                    <div class=\"col-9\">\r\n                        <el-input type=\"text\" size=\"medium\" @input=\"addInvitedDonatorSMS\" v-model=\"donator.phone\"></el-input>\r\n                    </div>\r\n                    <div class=\"col-1\"></div>\r\n                    <div class=\"col-2\" v-if=\"donator.counter > 0\">\r\n                        <el-button style=\"background-color: #983222\" type=\"danger\" icon=\"el-icon-close\" circle @click=\"removeDonatorSMS(donator)\"></el-button>\r\n                    </div>\r\n                </div>\r\n            </form>\r\n        </div>\r\n\r\n        <template #footer>\r\n            <span class=\"dialog-footer\">\r\n                <el-button @click=\"invDonatorSMSVisible=false\">Cancel</el-button>\r\n                <el-button style=\"background-color: #983222\" type=\"danger\" @click=\"inviteDonatorsSMS\" :loading=\"loading\">INVITE</el-button>\r\n            </span>\r\n        </template>\r\n    </el-dialog>\r\n\r\n\r\n</template>\r\n\r\n<script>\r\n\r\n    import axios from \"axios\"\r\n    import EventTimer from \"./EventTimer.vue\";\r\n    import { copyToClipboard } from \"../assets/js/app.js\";\r\n    import ImageUploader from \"./ImageUploader\"\r\n    import router from \"../router\";\r\n    import { reactive } from 'vue'\r\n    import { mapGetters } from \"vuex\"\r\n    import { initFacebookSdk, } from '@/services';\r\n\r\n    export default {\r\n        name: \"OpenStore\",\r\n        components: { EventTimer, ImageUploader },\r\n        data() {\r\n            return {\r\n                smsUrl: '',\r\n                isMobile: false,\r\n                errorMessage: '',\r\n                invPartVisible: false,\r\n                invDonatorVisible: false,\r\n                invitedDonators: [{ counter: 0, email: '' }],\r\n                invDonatorSMSVisible: false,\r\n                invitedDonatorsSMS: [{ counter: 0, phone: '' }],\r\n                store: {},\r\n                storeorderdetails: {},\r\n                storeEdit: {},\r\n                loading: true,\r\n                editMode: false,\r\n                file: null,\r\n                storeEditRules: {\r\n                    title: [\r\n                        { required: true, message: 'Title is required', trigger: 'change' }\r\n                    ],\r\n                    description: [\r\n                        { required: true, message: 'Description reason is required', trigger: 'change' }\r\n                    ],\r\n                    targetamount: [\r\n                        { required: true, message: 'Store Target Amount is required', trigger: 'change' }\r\n                    ]\r\n                }\r\n            }\r\n        },\r\n        computed: {\r\n            // 🟢 **Total Direct Donations (Net)**\r\n            // Direct donations minus **10% fee (always)**\r\n            totalDirectDonationsNet() {\r\n                if (!this.safeEventOrderDetails || this.safeEventOrderDetails.length === 0) return 0;\r\n\r\n                return this.safeEventOrderDetails.reduce((sum, order) => {\r\n                    let directDonation = parseFloat(order.directDonationAmount) || 0;\r\n\r\n                    // Deduct 10% fee (always applied)\r\n                    const directDonationFee = directDonation * 0.10;\r\n                    const netDirectDonations = directDonation - directDonationFee;\r\n\r\n                    return sum + netDirectDonations;\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Popcorn Sales (Fundraiser's 50% Share)**\r\n            // Popcorn sales = (Subtotal - Direct Donations) / 2\r\n            totalPopcornSales() {\r\n                if (!this.safeEventOrderDetails || this.safeEventOrderDetails.length === 0) return 0;\r\n\r\n                return this.safeEventOrderDetails.reduce((sum, order) => {\r\n                    const subTotal = parseFloat(order.subTotal) || 0;\r\n                    const directDonationAmount = parseFloat(order.directDonationAmount) || 0;\r\n\r\n                    // Extract popcorn earnings (50% of popcorn sales)\r\n                    return sum + ((subTotal - directDonationAmount) / 2);\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Net Earnings (Final Fundraiser Profit)**\r\n            // Net Earnings = Popcorn Earnings + Direct Donations (after 10% fee)\r\n            totalNetEarnings() {\r\n                return (parseFloat(this.totalDirectDonationsNet) + parseFloat(this.totalPopcornSales)).toFixed(2);\r\n            },\r\n            // 🟢 **Gross Sales** (Total of all orders)\r\n            grossSales() {\r\n                if (!this.storeorderdetails || !Array.isArray(this.storeorderdetails)) return 0;\r\n\r\n                return this.storeorderdetails.reduce((sum, order) => {\r\n                    if (!order || typeof order !== \"object\") return sum; // Skip invalid orders\r\n\r\n                    const orderTotal = parseFloat(order.total) || 0; // Ensure total is a number\r\n                    console.log(`Adding Order Total: ${orderTotal}`); // Debug each order\r\n\r\n                    return sum + orderTotal;\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Net Sales** (Sum of all order subtotals excluding shipping)\r\n            totalNetSales() {\r\n                if (!this.storeorderdetails || !Array.isArray(this.storeorderdetails)) return 0;\r\n\r\n                return this.storeorderdetails.reduce((sum, order) => {\r\n                    if (!order || typeof order !== \"object\") return sum; // Skip invalid orders\r\n\r\n                    const subTotal = parseFloat(order.subTotal) || 0; // Ensure subTotal is a number\r\n                    console.log(`Adding Order Subtotal: ${subTotal}`); // Debug each order\r\n\r\n                    return sum + subTotal;\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Earned Profits (Store Profits)**\r\n            totalEarnedProfits() {\r\n                if (!this.storeorderdetails || !Array.isArray(this.storeorderdetails) || this.storeorderdetails.length === 0) {\r\n                    return \"$0.00\"; // Handle empty or invalid data\r\n                }\r\n\r\n                // Sum up earnings per order\r\n                const totalEarnings = this.storeorderdetails.reduce((sum, order) => {\r\n                    return sum + this.extractRawEarnings(order); // Extract raw number for calculation\r\n                }, 0);\r\n\r\n                // Format as currency\r\n                return new Intl.NumberFormat(\"en-US\", {\r\n                    style: \"currency\",\r\n                    currency: \"USD\"\r\n                }).format(totalEarnings);\r\n            },\r\n            safeEventOrderDetails() {\r\n                return Array.isArray(this.storeorderdetails) ? this.storeorderdetails : [];\r\n            },\r\n            storePercent() {\r\n                // Ensure both values are valid\r\n                if (!this.totalEarnedProfits || !this.store || !this.store.targetAmount) return 0;\r\n\r\n                // Remove \"$\" and convert to a number\r\n                const earned = parseFloat(this.totalEarnedProfits.toString().replace(/[$,]/g, \"\")) || 0;\r\n                const target = parseFloat(this.store.targetAmount) || 1; // Prevent division by zero\r\n\r\n                console.log(`✔ Calculating Percentage: Earned ${earned}, Target ${target}`);\r\n\r\n                let percentage = Math.trunc((earned / target) * 100);\r\n                return isNaN(percentage) ? 0 : Math.min(percentage, 100);\r\n            },\r\n            donators() {\r\n                let dn = [];\r\n                if (this.store.donators != null) {\r\n                    this.store.donators.split(',').forEach(p => {\r\n                        let items = p.split('_');\r\n                        dn.push({ name: items[0], amount: items[1], storeviewid: items[2], orderdate: items[3] });\r\n                    });\r\n                }\r\n                return dn;\r\n            },\r\n            dialogWidth() {\r\n                if (screen.width <= 576)\r\n                    return \"100%\";\r\n                else return \"500px\";\r\n            },\r\n            dialogTop() {\r\n                if (screen.width <= 576)\r\n                    return \"0\";\r\n                else return \"15vh\";\r\n            },\r\n            marks() {\r\n                const marks = reactive({\r\n                    0: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '0%',\r\n                    },\r\n                    20: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '20%',\r\n                    },\r\n                    40: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '40%',\r\n                    },\r\n                    60: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '60%',\r\n                    },\r\n                    80: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '80%',\r\n                    },\r\n                    100: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '100%',\r\n                    },\r\n                })\r\n                return marks;\r\n            },\r\n            ...mapGetters([\r\n                'hasRunningEvent', 'runningEventEndDate'\r\n            ])\r\n        },\r\n        created() {\r\n            this.isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);\r\n            initFacebookSdk();\r\n            axios.get('/api/stores/' + this.$route.params.id).then(response => {\r\n                this.loading = false;\r\n                this.store = response.data;\r\n                this.storeEdit.id = this.store.id;\r\n                this.storeEdit.title = this.store.title;\r\n                this.storeEdit.description = this.store.description;\r\n                this.storeEdit.targetamount = this.store.targetAmount;\r\n\r\n                this.smsUrl = \"sms:?&body=\" + encodeURI('Hi, please checkout my new Colorado Jack Giveback fundraising store: ' + '\\n' + this.store.title + ' ' + this.store.publicUrl + '\\n' + this.store.description);\r\n\r\n                axios.get('/api/stores/StoreOrderDetails/' + this.store.id).then(response => {\r\n                    this.storeorderdetails = response.data;\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });   \r\n            }).catch((error) => {\r\n                this.loading = false;\r\n            });\r\n\r\n\r\n        },\r\n        methods: {           \r\n            // 🟢 **Apply Cell Class Based on Column**\r\n            getCellClass({ column }) {\r\n                const greenColumns = [\"Order Earnings\", \"Popcorn Sales\", \"Direct Donations\"];\r\n                const redColumns = [\"Shipping Fee\", \"Fees Deducted\"];\r\n\r\n                if (greenColumns.includes(column.label)) {\r\n                    return \"green-cell\";\r\n                } else if (redColumns.includes(column.label)) {\r\n                    return \"red-cell\";\r\n                }\r\n                return \"\";\r\n            },\r\n            // 🟢 **Calculate Total Earnings Per Store**\r\n            calculateEarningsPerStore() {\r\n                if (!this.storeorderdetails || !Array.isArray(this.storeorderdetails) || this.storeorderdetails.length === 0) {\r\n                    return \"$0.00\";\r\n                }\r\n\r\n                // Sum the earnings for all orders in this store\r\n                const totalEarnings = this.storeorderdetails.reduce((sum, order) => {\r\n                    return sum + this.extractRawEarnings(order);\r\n                }, 0);\r\n\r\n                return this.formatCurrency(null, null, totalEarnings);\r\n            },\r\n            // 🟢 **Extract Raw Earnings for an Order**\r\n            extractRawEarnings(order) {\r\n                if (!order || typeof order !== \"object\") return 0;\r\n\r\n                const subTotal = parseFloat(order.subTotal) || 0;\r\n                let directDonationAmount = parseFloat(order.directDonationAmount) || 0;\r\n                const directDonationFee = directDonationAmount * 0.10; // Always deduct 10%\r\n\r\n                // Calculate Net Direct Donation (after fee deduction)\r\n                const netDirectDonations = directDonationAmount - directDonationFee;\r\n\r\n                // Calculate Popcorn Earnings (50% of Popcorn Sales)\r\n                const popcornEarnings = (subTotal - directDonationAmount) / 2;\r\n\r\n                return popcornEarnings + netDirectDonations;\r\n            },\r\n            // 🟢 **Open Sales Breakdown Modal**\r\n            openSalesBreakdown() {\r\n                if (!Array.isArray(this.storeorderdetails) || this.storeorderdetails.length === 0) {\r\n                    console.error(\"No sales data available!\");\r\n                    return;\r\n                }\r\n                this.showSalesBreakdown = true;\r\n            },\r\n            // 🟢 **Format Date to MM/DD/YYYY**\r\n            formatDate(_, __, date) {\r\n                if (!date) return \"\";\r\n                const d = new Date(date);\r\n                return isNaN(d.getTime()) ? \"\" : d.toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\", year: \"numeric\" });\r\n            },\r\n            // 🟢 **Calculate Popcorn Earnings per Order**\r\n            calculatePopcornAmount(row) {\r\n                if (!row || typeof row !== \"object\") return \"$0.00\";\r\n                const subTotal = parseFloat(row.subTotal) || 0;\r\n                const directDonationAmount = parseFloat(row.directDonationAmount) || 0;\r\n                return this.formatCurrency(null, null, (subTotal - directDonationAmount) / 2);\r\n            },\r\n            // 🟢 **Calculate Fees Deducted per Order**\r\n            calculateFeesDeducted(row) {\r\n                if (!row || typeof row !== \"object\") return \"$0.00\";\r\n\r\n                const directDonationAmount = parseFloat(row.directDonationAmount) || 0;\r\n                const directDonationFee = directDonationAmount * 0.10; // Always deduct 10%\r\n\r\n                return this.formatCurrency(null, null, directDonationFee);\r\n            },\r\n            // 🟢 **Calculate Total Earnings per Order**\r\n            calculateEarnings(row) {\r\n                if (!row || typeof row !== \"object\") return \"$0.00\";\r\n\r\n                const subTotal = parseFloat(row.subTotal) || 0;\r\n                let directDonationAmount = parseFloat(row.directDonationAmount) || 0;\r\n                const directDonationFee = directDonationAmount * 0.10; // Always deduct 10%\r\n\r\n                // Net Direct Donations\r\n                const netDirectDonations = directDonationAmount - directDonationFee;\r\n\r\n                // Popcorn Earnings (50% of Popcorn Sales)\r\n                const popcornEarnings = (subTotal - directDonationAmount) / 2;\r\n\r\n                // Final Total Earnings\r\n                const totalEarnings = popcornEarnings + netDirectDonations;\r\n\r\n                return this.formatCurrency(null, null, totalEarnings);\r\n            },\r\n            // 🟢 **Format Currency to USD**\r\n            formatCurrency(_, __, value) {\r\n                if (value == null || isNaN(value)) return \"$0.00\";\r\n                return new Intl.NumberFormat(\"en-US\", {\r\n                    style: \"currency\",\r\n                    currency: \"USD\"\r\n                }).format(value);\r\n            },\r\n            downloadCSV() {\r\n                if (!Array.isArray(this.storeorderdetails) || this.storeorderdetails.length === 0) {\r\n                    console.error(\"No event order details available!\");\r\n                    return;\r\n                }\r\n\r\n                console.log(\"Downloading CSV...\");\r\n\r\n                const headers = [\r\n                    \"ORDER DATE\", \"ORDER NUMBER\", \"BUYER NAME\", \"SELLER NAME\",\r\n                    \"POPCORN SALE EARNING\", \"DIRECT DONATION SALES\", \"PROCESSING FEE\",\r\n                    \"SHIPPING FEE\", \"SUBTOTAL\", \"ORDER TOTAL\", \"ORDER EARNINGS\"\r\n                ];\r\n\r\n                const csvRows = this.storeorderdetails.map(row => {\r\n                    console.log(\"Row data:\", row); // Debug each row\r\n\r\n                    // Ensure numbers are valid and correctly formatted\r\n                    const directDonationAmount = parseFloat(row.directDonationAmount) || 0;\r\n                    const directDonationFee = directDonationAmount * 0.10; // Always 10% deduction\r\n\r\n                    return [\r\n                        this.formatDate(null, null, row.createdAt),\r\n                        row.number,\r\n                        row.buyerName,\r\n                        row.seller,\r\n                        this.calculatePopcornAmount(row),\r\n                        this.formatCurrency(null, null, directDonationAmount),\r\n                        this.formatCurrency(null, null, directDonationFee),\r\n                        this.formatCurrency(null, null, row.shippingFee),\r\n                        this.formatCurrency(null, null, row.subTotal),\r\n                        this.formatCurrency(null, null, row.total),\r\n                        this.calculateEarnings(row)\r\n                    ].map(value => {\r\n                        if (value == null) return \"\"; // Prevent null errors\r\n                        return `\"${String(value).replace(/\"/g, '\"\"')}\"`; // Escape quotes for CSV\r\n                    }).join(\",\");\r\n                });\r\n\r\n                const csvContent = [headers.join(\",\"), ...csvRows].join(\"\\n\");\r\n\r\n                console.log(\"Generated CSV:\", csvContent); // Debug the final CSV\r\n\r\n                // Create and trigger a download link\r\n                const blob = new Blob([csvContent], { type: \"text/csv;charset=utf-8;\" });\r\n                const link = document.createElement(\"a\");\r\n                link.href = URL.createObjectURL(blob);\r\n                link.setAttribute(\"download\", \"fundraiser_sales.csv\");\r\n                document.body.appendChild(link);\r\n                link.click();\r\n                document.body.removeChild(link);\r\n            },\r\n            addInvitedDonator() {\r\n                this.errorMessage = '';\r\n                let last = this.invitedDonators[this.invitedDonators.length - 1];\r\n                if (this.validateEmail(last.email.trim())) {\r\n                    this.invitedDonators.push({ counter: this.invitedDonators.length, email: '' });\r\n                }\r\n            },\r\n            validateEmail(email) {\r\n                var regExp = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,6}$/;\r\n                if (email.trim().match(regExp)) {\r\n                    return true;\r\n                }\r\n                else {\r\n                    return false;\r\n                }\r\n            },\r\n            removeDonator(p) {\r\n                for (var i = 0; i < this.invitedDonators.length; i++) {\r\n                    if (this.invitedDonators[i] === p) {\r\n                        this.invitedDonators.splice(i, 1);\r\n                        break;\r\n                    }\r\n                }\r\n            },\r\n            addInvitedDonatorSMS() {\r\n                this.errorMessage = '';\r\n                let last = this.invitedDonatorsSMS[this.invitedDonatorsSMS.length - 1];\r\n                if (last.phone.trim().length > 9) {\r\n                    //validate phone against regex\r\n                    if (this.validatePhone(last.phone.trim())) {\r\n                        this.invitedDonatorsSMS.push({ counter: this.invitedDonatorsSMS.length, phone: '' });\r\n                    }\r\n                    else {\r\n                        this.errorMessage = 'invalid phone number!';\r\n                    }\r\n                }\r\n            },\r\n            validatePhone(phone) {\r\n                var regExp = /^[+]?[(]?[0-9]{3}[)]?[-\\s.]?[0-9]{3}[-\\s.]?[0-9]{4,6}$/;\r\n                if (regExp.test(phone)) {\r\n                    return true;\r\n                }\r\n                else {\r\n                    return false;\r\n                }\r\n            },\r\n            removeDonatorSMS(p) {\r\n                for (var i = 0; i < this.invitedDonatorsSMS.length; i++) {\r\n                    if (this.invitedDonatorsSMS[i] === p) {\r\n                        this.invitedDonatorsSMS.splice(i, 1);\r\n                        break;\r\n                    }\r\n                }\r\n            },\r\n            inviteDonators() {\r\n                this.loading = true;\r\n                var emails = [];\r\n                this.invitedDonators.forEach(p => {\r\n                    if (p != '' && this.validateEmail(p.email))\r\n                        emails.push(p.email);\r\n                });\r\n\r\n                axios.post('/api/participants/InviteDonator/', { storeId: this.store.id, emails: emails }).then(response => {\r\n                    this.loading = false;\r\n                    this.invDonatorVisible = false;\r\n                    this.$message({\r\n                        message: 'Donator emails have been sent and invited to view your store! - Emails: ' + emails.toString(),\r\n                        type: 'success'\r\n                    });\r\n\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            inviteDonatorsSMS() {\r\n                this.loading = true;\r\n                var phones = [];\r\n                this.invitedDonatorsSMS.forEach(p => {\r\n                    if (p != '' && this.validatePhone(p.phone))\r\n                        phones.push(p.phone);\r\n                });\r\n\r\n                axios.post('/api/participants/SendSMSDonorInvite/', { storeId: this.store.id, phones: phones }).then(response => {\r\n                    this.loading = false;\r\n                    this.invDonatorSMSVisible = false;\r\n                    this.$message({\r\n                        message: 'Donators have been sent an sms message and invited to view your store!',\r\n                        type: 'success'\r\n                    });\r\n\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            shareOnFacebook3() {\r\n                window.FB.ui(\r\n                    {\r\n                        method: 'feed',\r\n                        name: this.store.title,\r\n                        link: this.store.publicUrl,\r\n                        description: this.store.description,\r\n                        display: 'popup',\r\n                        picture: this.store.imageSrc\r\n                    },\r\n                    // callback\r\n                    function (response) {\r\n                        if (response && !response.error_message) {\r\n                            this.$message({\r\n                                message: 'Successfully shared your public fundraising store on facebook!',\r\n                                type: 'success'\r\n                            });\r\n                        } else {\r\n                            this.$message({\r\n                                message: 'Error sharing your public fundraising store on facebook! ' + response.error_message,\r\n                                type: 'error'\r\n                            });\r\n                        }\r\n                    }\r\n                );\r\n            },\r\n            shareOnFacebook2() {\r\n                window.FB.ui(\r\n                    {\r\n                        method: 'share_open_graph',\r\n                        action_type: 'og.shares',\r\n                        display: 'popup',\r\n                        action_properties: JSON.stringify({\r\n                            object: {\r\n                                'og:url': this.store.publicUrl,\r\n                                'og:title': this.store.title,\r\n                                'og:description': this.store.description,\r\n                                'og:image:width': '600',\r\n                                'og:image:height': '600',\r\n                                'og:image': this.store.imageSrc\r\n                            }\r\n                        })\r\n                    },\r\n                    // callback\r\n                    function (response) {\r\n                        if (response && !response.error_message) {\r\n                            this.$message({\r\n                                message: 'Successfully shared your public fundraising store on facebook!',\r\n                                type: 'success'\r\n                            });\r\n                        } else {\r\n                            this.$message({\r\n                                message: 'Error sharing your public fundraising store on facebook! ' + response.error_message,\r\n                                type: 'error'\r\n                            });\r\n                        }\r\n                    }\r\n                );\r\n            },\r\n            shareOnFacebook() {\r\n                window.FB.ui(\r\n                    {\r\n                        method: 'share',\r\n                        href: this.store.publicUrl,\r\n                    },\r\n                    // callback\r\n                    function (response) {\r\n                        if (response && !response.error_message) {\r\n                            this.$message({\r\n                                message: 'Successfully shared your public fundraising store on facebook!',\r\n                                type: 'success'\r\n                            });\r\n                        } else {\r\n                            this.$message({\r\n                                message: 'Error sharing your public fundraising store on facebook! ' + response.error_message,\r\n                                type: 'error'\r\n                            });\r\n                        }\r\n                    }\r\n                );\r\n            },\r\n            sendOnFacebook() {\r\n                window.FB.ui(\r\n                    {\r\n                        method: 'send',\r\n                        link: this.store.publicUrl,\r\n                    },\r\n                    // callback\r\n                    function (response) {\r\n                        if (response && !response.error_message) {\r\n                            this.$message({\r\n                                message: 'Successfully shared your public fundraising store on facebook!',\r\n                                type: 'success'\r\n                            });\r\n                        } else {\r\n                            this.$message({\r\n                                message: 'Error sharing your public fundraising store on facebook! ' + response.error_message,\r\n                                type: 'error'\r\n                            });\r\n                        }\r\n                    }\r\n                );\r\n            },\r\n            //sendSMS() {\r\n            //    this.smsUrl = \"sms:?& body=\" + this.store.publicUrl\r\n            //},\r\n            shareOnTwitter() {\r\n                window.open(\"https://twitter.com/share?url=\" + this.store.publicUrl, \"_blank\");\r\n            },\r\n            copyCode() {\r\n                copyToClipboard(\"storeCode\");\r\n            },\r\n            setCropData(data) {\r\n                this.storeEdit.imageCropData = data;\r\n            },\r\n            setSelectedImage(file) {\r\n                this.file = file;\r\n            },\r\n            saveChanges() {\r\n                this.$refs[\"storeEditForm\"].validate((valid) => {\r\n                    if (valid) {\r\n                        this.loading = true;\r\n                        var formData = new FormData();\r\n                        if (this.file != null) {\r\n                            formData.append(\"file\", this.file.raw);\r\n                            for (const [key, value] of Object.entries(this.storeEdit.imageCropData)) {\r\n                                formData.append(\"imageCropData.\" + key, value);\r\n                            }\r\n                        }\r\n\r\n                        for (const [key, value] of Object.entries(this.storeEdit)) {\r\n                            if (key === \"imageCropData\")\r\n                                continue;\r\n                            formData.append(key, value);\r\n                        }\r\n\r\n                        axios.put('/api/stores', formData, {\r\n                            headers: {\r\n                                'Content-Type': 'multipart/form-data'\r\n                            }\r\n                        }).then(response => {\r\n                            this.loading = false;\r\n                            this.editMode = false;\r\n                            this.store.imageSrc = response.data;\r\n                            this.$message({\r\n                                message: 'Changes saved to the store.',\r\n                                type: 'success'\r\n                            });\r\n                        }).catch((error) => {\r\n                            this.loading = false;\r\n                        });\r\n                    }\r\n                });\r\n            },\r\n            toEvent() {\r\n                router.push(\"/event/running\");\r\n            },\r\n        }\r\n    }\r\n</script>\r\n\r\n<style scoped>\r\n    img {\r\n        height: 300px;\r\n        object-fit: cover;\r\n        border-radius: 4px;\r\n        width: 100%\r\n    }\r\n\r\n    .fundraiser-earnings-explainer {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 15px;\r\n        background-color: #f9f9f9;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer ul {\r\n        padding-left: 20px;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer code {\r\n        background: #eee;\r\n        padding: 3px 6px;\r\n        border-radius: 5px;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer ul {\r\n        list-style-type: disc; /* Ensures bullets are shown */\r\n        margin-left: 20px; /* Adds left indentation */\r\n        padding-left: 20px;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer li {\r\n        display: list-item; /* Ensures each <li> behaves as a block */\r\n        margin-bottom: 5px; /* Adds spacing between items */\r\n    }\r\n\r\n    .green-cell {\r\n        color: green !important;\r\n        font-weight: bold;\r\n    }\r\n\r\n    .red-cell {\r\n        color: red !important;\r\n        font-weight: bold;\r\n    }\r\n\r\n\r\n    .participants, .donators {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 20px;\r\n        min-height: 250px;\r\n    }\r\n\r\n    .top-label {\r\n        position: relative;\r\n        top: 22px;\r\n        background: #fff;\r\n        left: 15px;\r\n        font-weight: normal;\r\n        padding: 0 5px;\r\n    }\r\n\r\n    .count {\r\n        top: 25px;\r\n        left: 15px;\r\n    }\r\n\r\n    .title {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 20px;\r\n        /*min-height: 200px;*/\r\n        flex-direction: inherit;\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 370px) {\r\n        h5 {\r\n            font-size: 1.0rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: .80rem;\r\n            font-weight: normal;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 544px) {\r\n        h5 {\r\n            font-size: 1.00rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: .90rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */\r\n    @media (min-width: 768px) {\r\n        h5 {\r\n            font-size: 1.25rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: .95rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Large devices (desktops, 992px and up) */\r\n    @media (min-width: 992px) {\r\n        h5 {\r\n            font-size: 1.5rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Extra large devices (large desktops, 1200px and up) */\r\n    @media (min-width: 1200px) {\r\n        h5 {\r\n            font-size: 1.75rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.25rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n</style>","import { render } from \"./StoreDetail.vue?vue&type=template&id=ed6598c2&scoped=true\"\nimport script from \"./StoreDetail.vue?vue&type=script&lang=js\"\nexport * from \"./StoreDetail.vue?vue&type=script&lang=js\"\n\nimport \"./StoreDetail.vue?vue&type=style&index=0&id=ed6598c2&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-ed6598c2\"\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./Profile.vue?vue&type=style&index=0&id=9e818b86&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./PrivacyPolicy.vue?vue&type=style&index=0&id=7fc1c8cc&scoped=true&lang=css\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./RunningEvent.vue?vue&type=style&index=0&id=410da691&scoped=true&lang=css\"","<script>\r\nimport { defineComponent } from 'vue'\r\nimport { Line, Pie } from 'vue3-chart-v2'\r\n\r\nexport default defineComponent({\r\n  name: 'PieChart',\r\n    extends: Pie,\r\n  props: {\r\n    chartData: {\r\n      type: Object,\r\n      required: true\r\n    },\r\n    chartOptions: {\r\n      type: Object,\r\n      required: false\r\n    },\r\n  },\r\n    mounted() {\r\n    this.renderChart(this.chartData, this.chartOptions)\r\n  }\r\n})\r\n</script>","import script from \"./PieChart.vue?vue&type=script&lang=js\"\nexport * from \"./PieChart.vue?vue&type=script&lang=js\"\n\nexport default script","<template>  \r\n    <div class=\"container\">\r\n        <div class=\"row col-12 center pt-5\" style=\"justify-content:center\">\r\n            <iframe src=\"https://coloradojackgivebacksa.blob.core.windows.net/termsandconditions/ColoradoJackGiveBack.TERMS.pdf#zoom=75\" id=\"child-iframe\"></iframe>\r\n        </div>        \r\n    </div>\r\n  </template>\r\n\r\n<script>    \r\n    import * as $ from \"jquery\"\r\n    import router from \"../router\";\r\n\r\n    export default {\r\n        name: 'TermsOfUse',\r\n        props: {\r\n            msg: String\r\n        },    \r\n        methods: {\r\n            back() {\r\n                router.push(\"/Login\");\r\n            }\r\n        },\r\n        mounted() {\r\n            var wi = $(window).width();\r\n            var hi = $(window).height();\r\n\r\n            var iframe = document.querySelector(\"#child-iframe\");\r\n            if (wi <= 576) {\r\n                iframe.width = \"100%\";\r\n                iframe.height = hi - 200;\r\n            }\r\n            else {\r\n                iframe.width = \"80%\";\r\n                iframe.height = hi - 250;\r\n            }\r\n        }\r\n    }\r\n\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>   \r\n\r\n    /* page content */\r\n    h1, h2 {\r\n        color: white;\r\n        /*font-family: Trebuchet MS;*/\r\n        font-weight: bold;\r\n        text-align: center;\r\n    }\r\n\r\n    h1 {\r\n        font-size: 6rem;\r\n        margin-top: 30vh;\r\n    }\r\n\r\n    h2 {\r\n        font-size: 3rem;\r\n    }\r\n\r\n</style>\r\n","import { render } from \"./TermsOfUse.vue?vue&type=template&id=7e17e8e2&scoped=true\"\nimport script from \"./TermsOfUse.vue?vue&type=script&lang=js\"\nexport * from \"./TermsOfUse.vue?vue&type=script&lang=js\"\n\nimport \"./TermsOfUse.vue?vue&type=style&index=0&id=7e17e8e2&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-7e17e8e2\"\n\nexport default script","<template>\r\n    <div class=\"container\">\r\n        <div class=\"row col-12 center pt-5\" style=\"justify-content:center\">\r\n            <iframe src=\"https://coloradojackgivebacksa.blob.core.windows.net/termsandconditions/PrivacyPolicyColoradoJackGiveback.pdf#zoom=50\" id=\"child-iframe\"></iframe>\r\n        </div>\r\n    </div>\r\n</template>\r\n\r\n<script>    \r\n    import * as $ from \"jquery\"\r\n    import router from \"../router\";\r\n\r\n    export default {\r\n        name: 'PrivacyPolicy',\r\n        props: {\r\n            msg: String\r\n        },\r\n        computed: {\r\n            dialogWidth() {\r\n                if (screen.width <= 576)\r\n                    return \"100%\";\r\n                else return \"500px\";\r\n            },\r\n            dialogTop() {\r\n                if (screen.width <= 576)\r\n                    return \"0\";\r\n                else return \"15vh\";\r\n            },\r\n            screenWidth() {\r\n                return screen.width;\r\n            }\r\n        },\r\n        methods: {\r\n            back() {\r\n                router.push(\"/Login\");\r\n            }\r\n        },\r\n        mounted() {\r\n            var wi = $(window).width();\r\n            var hi = $(window).height();\r\n\r\n            var iframe = document.querySelector(\"#child-iframe\");\r\n            if (wi <= 576) {\r\n                iframe.width = \"100%\";\r\n                iframe.height = hi - 200;\r\n            }\r\n            else {\r\n                iframe.width = \"80%\";\r\n                iframe.height = hi - 250;\r\n            }\r\n        }\r\n    }\r\n\r\n</script>\r\n\r\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\r\n<style scoped>\r\n\r\n    iframe {\r\n        overflow: scroll;\r\n    }\r\n    /* page content */\r\n    h1, h2 {\r\n        color: white;\r\n        font-family: Trebuchet MS;\r\n        font-weight: bold;\r\n        text-align: center;\r\n    }\r\n\r\n    h1 {\r\n        font-size: 6rem;\r\n        margin-top: 30vh;\r\n    }\r\n\r\n    h2 {\r\n        font-size: 3rem;\r\n    }\r\n\r\n</style>\r\n","import { render } from \"./PrivacyPolicy.vue?vue&type=template&id=7fc1c8cc&scoped=true\"\nimport script from \"./PrivacyPolicy.vue?vue&type=script&lang=js\"\nexport * from \"./PrivacyPolicy.vue?vue&type=script&lang=js\"\n\nimport \"./PrivacyPolicy.vue?vue&type=style&index=0&id=7fc1c8cc&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-7fc1c8cc\"\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./VirtualFundraising.vue?vue&type=style&index=0&id=eb5eab24&scoped=true&lang=css\"","<template>\r\n    <div class=\"container\" :loading=\"loading\">\r\n        <template v-if=\"store.id!=null\">\r\n            <div class=\"row col-10 pt-4 center\">\r\n                <!--<h6><a :href=\"store.publicUrl\">{{store.title}}</a></h6>-->\r\n                <h6 class=\"center\" style=\"justify-content:center; font-size: .75rem;\">Store created by: {{store.storeOwner.firstName}} {{store.storeOwner.lastName}}</h6>\r\n            </div>\r\n            <div class=\"row col-10 center\">\r\n                <h6 class=\"center\" style=\"justify-content:center; font-size: .75rem;\">On behalf of the fundraising event:</h6>\r\n            </div>\r\n            <div class=\"row col-10 pb-sm-2 center\">\r\n                <h6 class=\"center\" style=\"justify-content:center; font-size: .75rem;\">{{store.eventTitle}}</h6>\r\n            </div>\r\n            <div class=\"pb-3\">\r\n                <div class=\"image-cover\">\r\n                    <el-image :src=\"store.imageSrc\" style=\"border-radius:30px;\">\r\n                        <template #error>\r\n                            <div class=\"image-slot\">\r\n                                <i class=\"el-icon-picture-outline\"></i>\r\n                            </div>\r\n                        </template>\r\n                    </el-image>\r\n                    <div class=\"img-overlay\">\r\n                        <el-image :src=\"store.eventImageSrc\">\r\n                            <template #error>\r\n                                <div class=\"image-slot\">\r\n                                    <i class=\"el-icon-picture-outline\"></i>\r\n                                </div>\r\n                            </template>\r\n                        </el-image>\r\n                    </div>\r\n                </div>\r\n                <div class=\"row no-gutters\">\r\n                    <div class=\"row col-10 font-weight-bold center mt-1\" style=\"justify-content:center\">\r\n                        <h2 class=\"font-weight-bolder center\" style=\"color: #983222\">{{store.title}}</h2>\r\n                    </div>\r\n                    <div class=\"row col-10 center mb-4\">\r\n                        <h5 class=\"center\" style=\"color: #983222\">{{store.description}}</h5>\r\n                    </div>\r\n                    <!--<div class=\"header-text col-12 col-lg-6 pt-3 elipssis\">Overall Event title: {{store.eventTitle}} fundraiser</div>-->\r\n                    <template v-if=\"store.status=='Open'\">\r\n                        <div class=\"cojackdesc row col-12 center\">\r\n                            <div class=\"header-text pt-2 pb-2 col-12 col-lg-6 row no-gutters\">\r\n                                <div class=\"col-10 font-weight-bold ml-2\"><h5 class=\"font-weight-bold\">{{store.storeOwner.firstName}} {{store.storeOwner.lastName}}'s store will be closed in:</h5></div>\r\n                                <div class=\"col-10 mb-3 ml-5 mr-2\">\r\n                                    <EventTimer v-bind:startDate=\"store.startDate\" v-bind:endDate=\"store.endDate\"></EventTimer>\r\n                                </div>\r\n                            </div>\r\n                            <div class=\"header-text pt-2 pb-2 col-12 col-lg-6 row no-gutters\">\r\n                                <div class=\"col-10 font-weight-bold mb-1 ml-2\">\r\n                                    <h5 class=\"font-weight-bold\">Store Sales Attained:</h5>\r\n                                    <h6>${{store.subTotal}} in sales towards goal of ${{store.targetAmount}}</h6>\r\n                                </div>\r\n                                <div class=\"col-10 mb-3 ml-5 mr-2\">\r\n                                    <!--<el-slider v-model=\"storePercent\" range :marks=\"marks\"></el-slider>-->\r\n                                    <el-progress text-inside=\"true\" stroke-width=\"30\" :percentage=\"storePercentEl\" status=\"success\"/>\r\n\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n                    </template>\r\n                </div>\r\n            </div>\r\n        </template>\r\n\r\n        <div class=\"center row align-items-center\">\r\n            <template v-if=\"store.status=='Closed'\">\r\n                <div class=\"col-12 text-center\"><i class=\"el-icon-lock\" style=\"font-size:10rem\"></i></div>\r\n                <div class=\"col-12 text-center mt-5 h2 font-weight-bold\">CLOSED</div>\r\n            </template>\r\n            <template v-else-if=\"store.status=='Draft'\">\r\n                <div class=\"col-12 text-center\"><i class=\"el-icon-time\" style=\"font-size:10rem\"></i></div>\r\n                <div class=\"col-12 text-center mt-2 h2 font-weight-bold\">OPENING SOON</div>\r\n                <div class=\"col-12 text-center mt-2 h2 font-weight-bold\">{{new Date(store.startDate).toLocaleDateString(\"en-US\",{  year: 'numeric', month: 'long', day: 'numeric' })}}</div>\r\n            </template>\r\n            <template v-else-if=\"!store.status && !loading\">\r\n                <div class=\"col-12 text-center\"><i class=\"el-icon-warning\" style=\"font-size:10rem\"></i></div>\r\n                <div class=\"col-12 text-center mt-5 h3 font-weight-bold\">STORE DOES NOT EXIST</div>\r\n            </template>\r\n        </div>\r\n\r\n        <div class=\"row mt-2\">\r\n            <div class=\"col-12 col-md-6\" v-for=\"product in store.products\" :key=\"product.id\">\r\n                <div v-if=\"store.status=='Open'\">\r\n                    <Product :product=\"product\" @click=\"showProduct(product)\"></Product>\r\n                </div>\r\n                <div v-else>\r\n                    <Product :product=\"product\" @click=\"closedProduct(product)\"></Product>\r\n                </div>\r\n            </div>\r\n        </div>\r\n\r\n        <div class=\"leaders row no-gutters\" style=\"justify-content:center;\" v-if=\"!loading\">\r\n            <div class=\"col-12 row no-gutters\" style=\"justify-content:center\">\r\n                <h5 class=\"\" style=\"text-align: center; padding-top:1rem;\">50% of each bag you purchase will be donated back to the fundraiser!</h5>\r\n            </div>\r\n            <div class=\"mt-1 mb-1 col-12 row no-gutters\" style=\"border-radius: 10px; justify-content: center\">\r\n                <hr class=\"row col-12\" style=\"color:red\" />\r\n                <h5 class=\"col-12 row no-gutters\" style=\"justify-content: center; color: #9A3324\">Fundraiser Top Sellers:</h5>\r\n                <ul class=\"infinite-list row col-12\" style=\"justify-content:center; border-radius:10px\">\r\n                    <li class=\"infinite-list-item row col-12 col-md-12\" v-for=\"(storeleader,index) in leaderstores\" :key=\"storeleader.id\">\r\n                        <div class=\"col-2\"><h5>{{index + 1}}</h5></div>\r\n                        <div class=\"col-2\">\r\n                            <el-image :src=\"storeleader.imageSrc\" class=\"smallimg-overlay\" style=\"border-radius: 10px; max-height: 40px; max-width: 40px\"></el-image>\r\n                        </div>\r\n                        <div class=\"col-6\"><a :href=\"store.publicUrl\" target=\"_blank\" class=\"center\"><h6 class=\"center\" style=\"justify-content: center; color: #9A3324\">{{storeleader.storeOwner.name}}</h6></a></div>\r\n                        <div class=\"col-2\"><h5>${{storeleader.subTotal}}</h5></div>\r\n                       <!-- <div class=\"col-2\" v-if=\"storeleader.subTotal>'0'\"><h5>${{storeleader.subTotal}}</h5></div>-->\r\n                    </li>\r\n                </ul>\r\n            </div>\r\n        </div>\r\n\r\n    </div>\r\n    <ProductDetail ref=\"productDetail\" ></ProductDetail>\r\n</template>\r\n\r\n<script>\r\n    import axios from \"axios\"\r\n    import Product from \"./Product.vue\";\r\n    import ProductDetail from \"./ProductDetail.vue\";\r\n    import store from \"@/store\"\r\n    import EventTimer from \"./EventTimer.vue\";\r\n    import { initFacebookSdk, } from '@/services';\r\n    import { reactive } from 'vue';\r\n    import { ElMessage, ElMessageBox } from 'element-plus';\r\n\r\n    export default {\r\n        name: \"PublicStore\",\r\n        components: { Product, ProductDetail, EventTimer },\r\n        data() {\r\n            return {\r\n                store: { products: [] },\r\n                leaderstores: [],\r\n                currentProduct: {},\r\n                loading: false,\r\n                storeState: true\r\n            }\r\n        },\r\n        computed: {\r\n            storePercentEl() {\r\n                const percentage1 = Math.trunc(((this.store.subTotal) / this.store.targetAmount) * 100);\r\n\r\n                return percentage1;\r\n            },\r\n            storePercent() {\r\n                const percentage = Math.trunc(((this.store.subTotal) / this.store.targetAmount) * 100);\r\n               \r\n                return [0, percentage];\r\n            },\r\n            marks() {\r\n                const test = Math.trunc(((this.store.subTotal) / this.store.targetAmount) * 100);\r\n                //this.value = [0, test];\r\n                const marks = reactive({\r\n                    0: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '0%',\r\n                    },\r\n                    20: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '20%',\r\n                    },\r\n                    40: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '40%',\r\n                    },\r\n                    60: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '60%',\r\n                    },\r\n                    80: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '80%',\r\n                    },\r\n                    100: {\r\n                        style: {\r\n                            color: '#1989FA',\r\n                        },\r\n                        label: '100%',\r\n                    },\r\n                })\r\n                return marks;\r\n            },          \r\n        },\r\n        created() {\r\n            initFacebookSdk();\r\n            //get store detail\r\n            //save store\r\n            store.dispatch(\"setStoreCode\", this.$route.params.code);\r\n            this.loading = true;\r\n            axios.get(\"/api/stores/public/\" + this.$route.params.code).then(response => {\r\n                this.loading = false;\r\n                this.store = response.data;\r\n\r\n                axios.get('/api/stores/getPublicStoresByEvent/' + response.data.eventCode).then(response => {\r\n                    this.leaderstores = response.data;\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            }).catch((error) => {\r\n                this.loading = false;\r\n            });            \r\n\r\n        },\r\n        methods: {\r\n            showProduct(product) {\r\n                if (this.store.status != 'Open') {\r\n                    this.storeState = false;\r\n                }\r\n\r\n                this.currentProduct = product;\r\n                this.$refs.productDetail.showProduct(this.currentProduct.id);\r\n            },  \r\n            closedProduct(product) {\r\n                if (this.store.status == \"Draft\") {\r\n                    let opendate = new Date(this.store.startDate).toLocaleDateString(\"en-US\", { year: 'numeric', month: 'long', day: 'numeric' });\r\n                    ElMessageBox.alert('This store will be opening soon! ' + opendate, 'Store coming soon!', {\r\n                        // if you want to disable its autofocus\r\n                        // autofocus: false,\r\n                        confirmButtonText: 'OK',\r\n                    })\r\n                }\r\n\r\n                if (this.store.status == \"Closed\") {\r\n                    ElMessageBox.alert('This fundraiser has ended and the store has been closed!', 'Store closed!', {\r\n                        // if you want to disable its autofocus\r\n                        // autofocus: false,\r\n                        confirmButtonText: 'OK',\r\n                    })\r\n                }                \r\n            }\r\n        }\r\n    }\r\n</script>\r\n\r\n<style scoped>\r\n\r\n    .cojackdesc {\r\n        position: relative;\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;        \r\n    }\r\n\r\n    .container{\r\n        padding-right:1px;\r\n        padding-left:1px;\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 350px) {\r\n        p {\r\n            font-size: 1.0rem;\r\n        }\r\n\r\n        h1 {\r\n            font-size: 1.5rem;\r\n        }\r\n\r\n        h2 {\r\n            font-size: 1.2rem;\r\n        }\r\n\r\n        h5 {\r\n            font-size: 1.0rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: .80rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 544px) {\r\n        p {\r\n            font-size: 1.0rem;\r\n        }\r\n\r\n        h1 {\r\n            font-size: 1.5rem;\r\n        }\r\n\r\n        h2 {\r\n            font-size: 1.25rem;\r\n        }\r\n\r\n        h5 {\r\n            font-size: 1.00rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */\r\n    @media (min-width: 768px) {\r\n        p {\r\n            font-size: 1.0rem;\r\n        }\r\n\r\n        h1 {\r\n            font-size: 2.0rem;\r\n        }\r\n\r\n        h2 {\r\n            font-size: 1.75rem;\r\n        }\r\n\r\n        h5 {\r\n            font-size: 1.25rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Large devices (desktops, 992px and up) */\r\n    @media (min-width: 992px) {\r\n        p {\r\n            font-size: 1.25rem;\r\n        }\r\n\r\n        h1 {\r\n            font-size: 2.5rem;\r\n        }\r\n\r\n        h2 {\r\n            font-size: 2.0rem;\r\n        }\r\n\r\n        h5 {\r\n            font-size: 1.5rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.25rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Extra large devices (large desktops, 1200px and up) */\r\n    @media (min-width: 1200px) {\r\n        p {\r\n            font-size: 1.50rem;\r\n        }\r\n\r\n        h1 {\r\n            font-size: 3.0rem;\r\n        }\r\n\r\n        h2 {\r\n            font-size: 2.5rem;\r\n        }\r\n\r\n        h5 {\r\n            font-size: 2.0rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.60rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    .card-header {\r\n        display: flex;\r\n        justify-content: space-between;\r\n        align-items: center;\r\n    }\r\n\r\n    .text {\r\n        font-size: 10px;\r\n    }\r\n\r\n    .item {\r\n        margin-bottom: 10px;\r\n    }\r\n\r\n    .infinite-list {\r\n        /*height: 250px;*/\r\n        padding: 0px;\r\n        margin: 10px;\r\n        list-style: none;\r\n        border-radius:10px;\r\n    }\r\n\r\n    .infinite-list .infinite-list-item {\r\n        display: flex;\r\n        align-items: center;\r\n        justify-content: center;\r\n        height: 40px;\r\n        background: #f2f2f2;\r\n        margin: 2px;\r\n       /* border: solid #ccc;\r\n        border-radius: 1px;*/\r\n        /* color: var(--el-color-primary);*/\r\n    }\r\n\r\n    .infinite-list .infinite-list-item + .list-item {\r\n        margin-top: 12px;\r\n    }\r\n\r\n    .smallimg-overlay {\r\n        border: 1px solid #fff;\r\n        border-radius: 100%;\r\n        overflow: hidden;\r\n    }\r\n\r\n    .leaders {\r\n        position: relative;\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n    }\r\n       \r\n\r\n</style>","<template>    \r\n    <div class=\"product mb-4 c-pointer p-3\" onmouseover=\"this.style.background='#f2f2f2';\" onmouseout=\"this.style.background='white';\">\r\n        <!--<div class=\"free-shipping h3 font-weight-bold text-center bg-danger text-white p-2\" v-bind:class=\"{hidden:!product.freeShipping}\">FREE SHIPPING</div>-->\r\n        <div v-if=\"product.id<4\" class=\"free-shipping h3 font-weight-bold text-center text-white p-2\" style=\"background-color: #983222\" v-bind:class=\"{hidden:product.id>3}\">CREATE YOUR OWN VARIETY PACK</div>\r\n        <div v-else class=\"free-shipping h3 font-weight-bold text-center text-white p-2\" style=\"background-color: #983222\"  v-bind:class=\"{show:product.id<4}\">INDIVIDUAL SNACK PACKS</div>\r\n\r\n\r\n        <!--<div class=\"free-shipping h3 font-weight-bold text-center text-white p-2\" style=\"background-color: #983222\" v-bind:class=\"{hidden:product.id<4}\">INDIVIDUAL SNACK SIZES</div>-->\r\n        <div class=\"prod-image\">\r\n            <el-image :src=\"product.imageSrc\">\r\n                <template #error>\r\n                    <div class=\"image-slot\">\r\n                        <i class=\"el-icon-picture-outline\"></i>\r\n                    </div>\r\n                </template>\r\n            </el-image>\r\n        </div>\r\n\r\n        <div class=\"prod-info\">\r\n            <div class=\"prod-title font-weight-bold text-center mt-1\">{{product.name}}</div>\r\n            <!-- <div class=\"prod-price d-flex\" v-if=\"product.price>0\"><span class=\"bg-warning\">${{product.price}}</span></div>-->\r\n        </div>\r\n      \r\n\r\n    </div>\r\n</template>\r\n\r\n<script>\r\n\r\n    export default {\r\n        name: \"Product\",\r\n        components: {},\r\n        props: {\r\n            product: Object\r\n        },\r\n        data() {\r\n            return {\r\n              \r\n            }\r\n        },       \r\n        created() {\r\n         \r\n        },\r\n        methods: {\r\n           \r\n        }\r\n    }\r\n</script>\r\n\r\n<style scoped>\r\n    .product {\r\n        position:relative;\r\n        border: 1px solid #ccc;\r\n        border-radius:10px;\r\n    }\r\n    img {\r\n        width: 100%;\r\n        height: 360px;\r\n        object-fit: contain;\r\n    }\r\n    .price {\r\n        background: #EA6E41;\r\n        border-radius: 100%;\r\n        font-weight: 700;\r\n        font-size: 1rem;\r\n        color: white;\r\n    }\r\n    .prod-info {\r\n        background-repeat: no-repeat;\r\n        background-position: center;\r\n        font-size: 1.2rem;\r\n        height: 100px;       \r\n    }\r\n    .prod-title {\r\n        font-size: 1.5rem;\r\n        height: 200px;\r\n        text-align: center;\r\n        font-weight:bold;\r\n    }\r\n    .prod-price {\r\n        position: absolute;\r\n        right: 10px;\r\n        bottom: 10px;\r\n        color: rgb(118,108,105);\r\n        font-weight: bold;\r\n        display: flex;\r\n        justify-content: center;\r\n        align-items: center;\r\n    }\r\n    .prod-price span {\r\n        border-radius: 100%;\r\n        width: 65px;\r\n        height: 65px;\r\n        text-align: center;\r\n        line-height: 4rem;\r\n    }\r\n    .prod-image{\r\n        height:400px;\r\n    }\r\n</style>","import { render } from \"./Product.vue?vue&type=template&id=03db784c&scoped=true\"\nimport script from \"./Product.vue?vue&type=script&lang=js\"\nexport * from \"./Product.vue?vue&type=script&lang=js\"\n\nimport \"./Product.vue?vue&type=style&index=0&id=03db784c&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-03db784c\"\n\nexport default script","<template>\r\n    <el-dialog fullscreen=\"true\"\r\n               v-model=\"visible\" :before-close=\"open=false\">\r\n        <div class=\"container content\">\r\n            <template v-if=\"product.bagsList.length==1\">\r\n                <div class=\"row\">\r\n                    <div class=\"col-12 col-sm-8\" style=\"text-align:center\">\r\n                        <div class=\"col-12 font-weight-bold title\">\r\n                            <div class=\"h5 text-center font-weight-bold\" style=\"word-break: keep-all; text-align: center;\">{{product.name}}</div>\r\n                            <div class=\"h5 mt-2\" style=\"word-break: keep-all; text-align: center;\">{{product.description}}</div>\r\n                            <!--<div class=\"h6 mt-2\">Product Ingredients: {{product.bagsList[0].ingredients}}</div>-->\r\n                        <div class=\"h6 mt-2\">Product Weight: {{product.bagsList[0].weight}}</div>\r\n                        </div>\r\n                        <div class=\"col-12 text-center\">\r\n                            <el-image :src=\"product.bagsList[0].imageSrc\" style=\"max-width:170px\">\r\n                                <template #error>\r\n                                    <div class=\"image-slot\">\r\n                                        <i class=\"el-icon-picture-outline\"></i>\r\n                                    </div>\r\n                                </template>\r\n                            </el-image>\r\n                        </div>\r\n                    </div>\r\n                    <div class=\"col-12 col-sm-4 text-center\">\r\n                        <!--<div class=\"free-shipping h3 font-weight-bold text-center bg-danger text-white p-2\" v-bind:class=\"{hidden:!product.freeShipping}\">FREE SHIPPING</div>-->\r\n                        <div class=\"free-shipping h3 font-weight-bold text-center bg-danger text-white p-2\" v-if=\"product.freeShipping\">FREE SHIPPING</div>\r\n                        <div class=\"h3 mt-3\">SUBTOTAL</div>\r\n                        <div class=\"total h2 mt-3 font-weight-bold\">${{totalPrice.toFixed(2)}}</div>\r\n                        <!--<div class=\"mt-5\">To add more than one of these Quantity configurations, add to the overall quanity field below.</div>-->\r\n                        <div class=\"h4 mt-3\">Overall Quantity</div>\r\n                        <div class=\"counter mt-2 row align-items-center no-gutters\" style=\"margin:0 auto\">\r\n                            <div class=\"col p-0\">\r\n                                <el-button icon=\"el-icon-minus\" circle @click=\"setCount(-1)\"></el-button>\r\n                            </div>\r\n                            <div class=\"count-box-mul col p-0\">\r\n                                <el-input v-model=\"product.count\"></el-input>\r\n                            </div>\r\n                            <div class=\"col p-0\">\r\n                                <el-button icon=\"el-icon-plus\" circle @click=\"setCount(1)\"></el-button>\r\n                            </div>\r\n                        </div>\r\n\r\n                        <div class=\"mt-3 row addcart\">\r\n                            <el-button type=\"danger\" style=\"background-color: #983222; font-size:inherit\" class=\"addCartBtn\" :disabled=\"!enableAddToCart\" @click=\"addToCart()\">ADD TO CART ${{totalPrice.toFixed(2)}}</el-button>\r\n                            <el-button class=\"addCartBtn\" @click=\"visible=false\">CANCEL</el-button>\r\n\r\n                        </div>\r\n                        <div class=\"col-12\">\r\n                            <payment-form-button v-on:payment-success=\"paymentSuccess\" :product=\"this.product\" :total=\"totalPrice.toFixed(2)\" :filledBags=\"this.filledBags\" ref=\"paymentFormButton\" :key=\"foraceUpdate\"></payment-form-button>\r\n                        </div>\r\n                    </div>\r\n                </div>\r\n            </template>\r\n            <template v-else >\r\n                <div class=\"row\">\r\n                    <div class=\"col-12\">\r\n                        <div class=\"font-weight-bold title\">\r\n                            <template v-if=\"screenWidth<992\">\r\n                                <div class=\"h6 text-center font-weight-bold\" style=\"word-break: normal\">{{product.name}}</div>\r\n                                <div class=\"mt-1 h5 font-weight-bold text-center color\" style=\"color: #983222\">CHOOSE YOUR FLAVORS</div>\r\n                            </template>\r\n                            <template v-else>\r\n                                <div class=\"h4 text-center font-weight-bold\" style=\"word-break: normal\">{{product.name}}</div>\r\n                                <div class=\"mt-3 h3 font-weight-bold text-center\" style=\"color: #983222\">CHOOSE YOUR FLAVORS</div>\r\n                            </template>                            \r\n                        </div>\r\n                        <div class=\"bags-slots mt-2\" style=\"overflow:auto\">\r\n                            <template v-if=\"screenWidth<992\">\r\n                                <ul style=\"width:780px;margin:0 auto;\">\r\n                                    <li class=\"mr-1 ml-1 text-center bag-slot\" :class=\"{'empty':bag.id==null,'filled':bag.id!==null}\" style=\"position:relative\" v-for=\"(bag,index) in selectedBags\" :key=\"bag.id\">\r\n                                        <div :class=\"{hidden:bag.id==null}\" class=\"h6 font-weight-bold\">{{bag.count}}</div>\r\n                                        <img :class=\"{'empty-slot':bag.id==null,'filled-slot':bag.id!==null}\" @click=\"addFlavour(bag)\" :src=\"bag.imageSrc\" />\r\n                                        <div :class=\"{hidden:bag.id!==null}\" class=\"h6 font-weight-bold\" style=\"margin-top:-40px\">{{index + 1}}</div>\r\n                                        <a :class=\"{hidden:bag.id==null}\" class=\"d-inline-block mt-2 text-danger font-weight-bold caps c-pointer\" @click=\"removeFlavour(bag)\" style=\"text-decoration:none\">REMOVE</a>\r\n                                    </li>\r\n                                </ul>\r\n                            </template>\r\n                            <template v-else>\r\n                                <ul style=\"width:780px;margin:0 auto;text-align:center\">\r\n                                    <li class=\"mr-1 ml-1 text-center bag-slot\" :class=\"{'empty':bag.id==null,'filled':bag.id!==null}\" style=\"position:relative\" v-for=\"(bag,index) in selectedBags\" :key=\"bag.id\">\r\n                                        <div :class=\"{hidden:bag.id==null}\" class=\"h2 font-weight-bold\">{{bag.count}}</div>\r\n                                        <el-button @click=\"addFlavour(bag)\" class=\"add-flavour-action absolute-center\" v-if=\"selectedBagsCount<product.quantity\">ADD FLAVOR</el-button>\r\n                                        <img :class=\"{'empty-slot':bag.id==null,'filled-slot':bag.id!==null}\" :src=\"bag.imageSrc\" />\r\n                                        <div :class=\"{hidden:bag.id!==null}\" class=\"h2 font-weight-bold\" style=\"margin-top:-40px\">{{index + 1}}</div>\r\n                                        <a :class=\"{hidden:bag.id==null}\" class=\"d-inline-block mt-2 text-danger font-weight-bold caps c-pointer\" @click=\"removeFlavour(bag)\" style=\"text-decoration:none\">REMOVE</a>\r\n                                    </li>\r\n                                </ul>\r\n                            </template>\r\n                        </div>\r\n\r\n                        <el-carousel arrow=\"always\" height=\"575px\" interval=\"5000\" indicator-position=\"none\">\r\n                            <el-carousel-item class=\"bag-slot\"  v-for=\"bag in product.bagsList\" :key=\"bag.id\" width=\"300\">\r\n                                <div class=\"product-image\" style=\"max-width:220px; margin:20px auto\">\r\n                                    <template v-if=\"screenWidth<992\">\r\n                                        <el-button @click=\"addFlavour(bag)\" :loading=\"loading\" class=\"add-flavour-action absolute-center\" v-if=\"selectedBagsCount<product.quantity\">ADD FLAVOR</el-button>\r\n                                        <el-image :src=\"bag.imageSrc\">\r\n                                            <template #error>\r\n                                                <div class=\"image-slot\">\r\n                                                    <i class=\"el-icon-picture-outline\"></i>\r\n                                                </div>\r\n                                            </template>\r\n                                        </el-image>\r\n                                    </template>\r\n                                    <template v-else text-align:center>\r\n                                        <el-button @click=\"addFlavour(bag)\" :loading=\"loading\" class=\"add-flavour-action absolute-center\" v-if=\"selectedBagsCount<product.quantity\">ADD FLAVOR</el-button>\r\n                                        <el-image :src=\"bag.imageSrc\">\r\n                                            <template #error>\r\n                                                <div class=\"image-slot\">\r\n                                                    <i class=\"el-icon-picture-outline\"></i>\r\n                                                </div>\r\n                                            </template>\r\n                                        </el-image>\r\n                                    </template>\r\n                                    <div class=\"h5 caps\" style=\"height:auto; max-width: 300px; margin: 0 auto; word-break: normal; text-align: center\">\r\n                                        {{bag.name}}\r\n                                    </div>\r\n                                    <div class=\"h6 caps\" style=\"height: 25px; max-width: 300px; margin: 0 auto; word-break: normal; text-align: center\">\r\n                                        {{bag.weight}}\r\n                                    </div>\r\n                                    <div class=\"h6 mt-2\" style=\"margin:0 auto; word-break:normal; text-align:center\">\r\n                                        {{bag.description}}\r\n                                    </div>\r\n                                    <div class=\"h4 font-weight-bold mt-2\" style=\"color: #983222; text-align: center\">\r\n                                        ${{bag.price.toFixed(2)}}\r\n                                    </div>\r\n                                    <div class=\"h-75 mt-1\" style=\"margin:0 auto; word-break:normal; text-align:center\" v-if=\"bag.ingredients!=null\">\r\n                                        Ingredients: {{bag.ingredients}}\r\n                                    </div>\r\n                                    <!--<div class=\"col-12 row counter mt-3 align-items-center\" style=\"max-width: 380px;margin: 0 auto\">\r\n    </div>-->\r\n                                </div>\r\n                            </el-carousel-item>\r\n                        </el-carousel>\r\n                    </div>\r\n                </div>\r\n                <el-dialog :show-close=\"false\" :close-on-click-modal =\"false\" v-model=\"enableAddToCart\" :width=\"dialogWidth\" :top=\"dialogTop\"  >\r\n                    <div class=\"text-center\">\r\n                        <div class=\"free-shipping h3 font-weight-bold text-center bg-danger text-white p-2\" v-bind:class=\"{hidden:!product.freeShipping}\">FREE SHIPPING</div>\r\n                        <div class=\"h3 mt-5\">SUBTOTAL</div>\r\n                        <div class=\"total h2 mt-3 font-weight-bold\">${{totalPrice.toFixed(2)}}</div>\r\n                        <div class=\"mt-3 text-center\">\r\n                            <!--<div class=\"mt-5\">Quantity configuration, you can add multiple product configurations below</div>-->\r\n                            <div class=\"mt-2\" style=\"margin:0 auto\">\r\n                                <div class=\"h4\">Overall Product Quantity</div>\r\n                                <div class=\"counter mt-2 row align-items-center no-gutters\" style=\"margin:0 auto\">\r\n                                    <div class=\"col p-0\">\r\n                                        <el-button icon=\"el-icon-minus\" circle @click=\"setCount(-1)\"></el-button>\r\n                                    </div>\r\n                                    <div class=\"count-box-mul col p-0\">\r\n                                        <el-input v-model=\"product.count\"></el-input>\r\n                                    </div>\r\n                                    <div class=\"col p-0\">\r\n                                        <el-button icon=\"el-icon-plus\" circle @click=\"setCount(1)\"></el-button>\r\n                                    </div>\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n\r\n                        <div class=\"mt-5 addcart text-center\">\r\n                            <el-button type=\"danger\" style=\"background-color: #983222\" class=\"addCartBtn\" :disabled=\"!enableAddToCart\" @click=\"addToCart()\">ADD TO CART ${{totalPrice.toFixed(2)}}</el-button>\r\n                            <el-button class=\"addCartBtn\" @click=\"showProduct(product.id)\">CANCEL</el-button>\r\n                            <payment-form-button v-on:payment-success=\"paymentSuccess\" :product=\"this.product\" :total=\"totalPrice.toFixed(2)\" :filledBags=\"this.filledBags\" ref=\"paymentFormButton\" :key=\"foraceUpdate\"></payment-form-button>\r\n                        </div>\r\n                        <div class=\"h5 mt-5\">\r\n                            <div class=\"text-danger\" v-if=\"selectedBagsCount>product.quantity\">\r\n                                You have selected {{selectedBagsCount}} bag<span v-if=\"selectedBagsCount>1\">s</span>. Please remove {{selectedBagsCount-product.quantity}} bag<span v-if=\"selectedBagsCount-product.quantity>1\">s</span> to enable the Add To Cart button...\r\n                            </div>\r\n                            <div class=\"text-info\" v-if=\"selectedBagsCount > 0 && selectedBagsCount<product.quantity\">\r\n                                You have selected {{selectedBagsCount}} bag<span v-if=\"selectedBagsCount>1\">s</span>. Please add {{product.quantity-selectedBagsCount}} bag<span v-if=\"product.quantity-selectedBagsCount>1\">s</span> to enable the Add To Cart button...\r\n                            </div>\r\n                        </div>\r\n                    </div>\r\n                </el-dialog>\r\n            </template>    \r\n        </div>\r\n       \r\n    </el-dialog>\r\n</template>\r\n\r\n<script>\r\n\r\n    import axios from \"axios\"\r\n    import store from \"@/store\"\r\n    import PaymentFormButton from \"./PaymentFormButton\"\r\n    import OrderReview from \"./OrderReview\"\r\n    import router from \"../router\";\r\n\r\n    export default {\r\n        name: \"ProductDetail\",\r\n        components: { PaymentFormButton },\r\n        data() {\r\n            return {\r\n                product: {},\r\n                visible: false,\r\n                selectedBags: [],\r\n                loading: false,\r\n                foraceUpdate: 0,                \r\n               // productCountDialogVisible: false;\r\n            }\r\n        },\r\n        computed: {\r\n            filledBags() {\r\n                return this.selectedBags.filter(b=>b.id!=null);\r\n            },\r\n            totalPrice() {\r\n                if (this.product.bagsList.length == 1)\r\n                    return this.product.count * this.product.price;\r\n                else {\r\n                    let total = 0;\r\n                    this.filledBags.forEach((item) => {\r\n                        total += (item.price * item.count);\r\n                    });\r\n                    return total * this.product.count;\r\n                }\r\n            },\r\n            enableAddToCart() {\r\n                if (this.product.bagsList.length == 1)\r\n                    return true;\r\n                else {\r\n                    let count = 0;\r\n                    this.filledBags.forEach(item => {\r\n                        count += item.count;\r\n                    });\r\n\r\n                    return count == this.product.quantity;\r\n                }\r\n            },\r\n            selectedBagsCount() {\r\n                let count = 0;\r\n                this.filledBags.forEach(item => {\r\n                    count += item.count;\r\n                });\r\n                return count;\r\n            },\r\n            dialogWidth() {\r\n                if (screen.width <= 576)\r\n                    return \"100%\";\r\n                else return \"500px\";\r\n            },\r\n            dialogTop() {\r\n                if (screen.width <= 576)\r\n                    return \"0\";\r\n                else return \"15vh\";\r\n            },\r\n            screenWidth() {\r\n                return screen.width;\r\n            }\r\n        },\r\n        methods: {\r\n           \r\n            showProduct(id) {\r\n                //get store detail\r\n                this.product.count = 1;\r\n                axios.get(\"/api/products/\" + id).then(response => {\r\n                    this.product = response.data;\r\n                    this.product.count = 1;\r\n                    this.selectedBags=[];\r\n                    this.product.bagsList.forEach((item, index) => {\r\n                        if (index < this.product.quantity) {\r\n                            item.count = 0;\r\n                            item.selected = false;\r\n                            this.selectedBags.push({ id: null, count: 0, imageSrc: 'https://coloradojackgivebacksa.blob.core.windows.net/bags/empty-slot.png' })\r\n                        }\r\n                    });\r\n\r\n                    this.visible = true;\r\n                    this.foraceUpdate++;\r\n                }).catch((error) => {\r\n                });\r\n            },\r\n            addFlavour(bag) {\r\n                this.loading = true;\r\n                let sBag = this.selectedBags.filter(item => item.id == bag.id);\r\n                if (sBag.length > 0)\r\n                    sBag[0].count++;\r\n                else {\r\n                    let emptyItems = this.selectedBags.filter(item => item.id == null);\r\n                    if (emptyItems.length > 0) {\r\n                        bag.selected = true;\r\n                        emptyItems[0].id = bag.id;\r\n                        emptyItems[0].name = bag.name;\r\n                        emptyItems[0].price = bag.price;\r\n                        emptyItems[0].count = 1;                        \r\n                        emptyItems[0].imageSrc = bag.imageSrc;\r\n                    }\r\n                }\r\n                this.loading = false;\r\n            },\r\n            removeFlavour(bag) {\r\n                bag.count--;\r\n                if (bag.count == 0) {                    \r\n                    bag.id = null;\r\n                    bag.imageSrc = 'https://coloradojackgivebacksa.blob.core.windows.net/bags/empty-slot.png';\r\n                }\r\n            },\r\n            setCount(v) {\r\n                if (this.product.count + v > 0)\r\n                    this.product.count += v;\r\n            },\r\n            //setBagCount(bagId,v) {\r\n            //    //get bag\r\n            //    const bag = this.product.bagsList.filter(b => b.id === bagId)[0];\r\n            //    if (bag.count + v >= 0) \r\n            //        bag.count += v;                   \r\n            //},\r\n            addToCart() {\r\n                //define product to add to cart\r\n                let product = {\r\n                    id: this.product.id, name: this.product.name, freeShipping: this.product.freeShipping, ShippingMethodID: this.product.shippingMethodID, shippingCost: this.product.shippingCost, total: this.totalPrice, quantity: this.product.quantity, count: this.product.count, price: this.product.price, imageSrc: this.product.imageSrc, bags: []\r\n                };\r\n\r\n                if (this.product.bagsList.length == 1) {\r\n                    let item = this.product.bagsList[0];\r\n                    product.bags.push({ id: item.id, name: item.name, imageSrc: item.imageSrc, price: product.price, total: product.price, count: product.quantity });\r\n                   \r\n                    product.total = product.price * product.count;\r\n                }\r\n                else if (this.product.bagsList.length > 1) {\r\n                    this.product.price = 0;\r\n                    product.total = 0;\r\n                    this.filledBags.forEach((item) => {\r\n                        let bag = { id: item.id, name: item.name, imageSrc: item.imageSrc, price: item.price, total: (item.count * item.price), count: item.count };\r\n                        product.bags.push(bag);\r\n                        product.price += item.price * item.count;\r\n                    });\r\n                    product.total = product.price * product.count;                \r\n                }\r\n               \r\n                //send to cart\r\n                store.dispatch(\"addToCart\", product);\r\n                this.visible = false;\r\n            },\r\n            paymentFail(paymentMethod, orderStatus) {\r\n                this.paymentError = orderStatus.message;\r\n                // alert(failError);\r\n            },\r\n            //will be called from payment form when user payes with Google/Apple pay\r\n            paymentSuccess(paymentMethod, orderData) {\r\n                    let order = {};\r\n                    order.number = orderData.orderNum;\r\n                    order.total = parseFloat(orderData.total);\r\n                    order.deliveryMethod = orderData.deliveryMethod;\r\n                    order.email = orderData.email;\r\n                    order.shippingAddressString = orderData.shippingAddressString;\r\n                    order.billingAddressString = orderData.billingAddressString;\r\n                    store.dispatch('setCompletedOrder', order);\r\n            }\r\n        }\r\n    }\r\n</script>\r\n\r\n<style>\r\n    .counter .el-button {\r\n        width: 50px;\r\n        height: 50px;\r\n    }\r\n    .el-button.is-circle {\r\n        border-radius: 50%;\r\n        padding: 8px !important;\r\n    }\r\n    .counter .count {\r\n        padding: 0px 50px;\r\n        font-size: 56px;\r\n        font-weight: bold;\r\n    }\r\n\r\n    .counter .el-button i {\r\n        font-size: 32px;\r\n    }\r\n\r\n    .addcart .el-button {\r\n        font-size: 20px;\r\n    }\r\n\r\n    .count-box input {\r\n        width: 100px;\r\n        font-size: 24px;\r\n        text-align: center;\r\n        font-weight: bold;\r\n    }\r\n    .count-box-mul input {\r\n        font-size: 24px;\r\n        text-align: center;\r\n        font-weight: bold;\r\n    }\r\n    img.empty-slot {\r\n        /*max-width:120px;*/\r\n        max-width: 70px;\r\n    }\r\n    img.filled-slot {\r\n        height: 80px;\r\n    }\r\n\r\n    .product-image {\r\n        max-width: 170px;\r\n        margin: 0 auto;\r\n        position: relative;       \r\n    }\r\n        .product-image img {\r\n            transition: all .5s ease-out;\r\n        }\r\n        .product-image:hover img, .bag-slot.filled:hover img {\r\n            opacity: .3;\r\n        }\r\n        .product-image:hover .add-flavour-action, .bag-slot.filled:hover .add-flavour-action {\r\n            opacity: 1;\r\n        }\r\n\r\n    .add-flavour-action {\r\n        z-index: 1;\r\n        opacity: 0;\r\n        box-shadow: 0 5px 20px 0 rgb(0 0 0 / 50%);\r\n        transition: all .5s ease-out !important;\r\n        background-color: #983222 !important;\r\n        color: #fff !important;\r\n        border: none !important;\r\n    }\r\n\r\n    .bag-slot .add-flavour-action {\r\n        padding: 10px !important;\r\n        font-size: 12px !important;\r\n    }\r\n\r\n    .addcart button {\r\n        width: 48%;\r\n        border-radius: 1px;\r\n    }\r\n    .addCartBtn {\r\n        font-size: 12px !important;\r\n        /*padding-right: 60px !important;*/\r\n        text-align:center;\r\n    }\r\n    .el-carousel__item h3 {\r\n        /*color: #475669;*/\r\n        font-size: 14px;\r\n        /*opacity: 0.75;*/\r\n        /*line-height: 200px;*/\r\n        margin: 0;\r\n        text-align: center;\r\n    }\r\n\r\n    .el-carousel__item:nth-child(2n) {\r\n        /*background-color: azure #99a9bf;*/\r\n        background-color: white;\r\n    }\r\n\r\n    .el-carousel__item:nth-child(2n + 1) {\r\n        /*background-color: #d3dce6;*/\r\n        background-color: white;\r\n    }\r\n\r\n    .el-carousel__arrow {\r\n        background-color: #262626;\r\n    }\r\n\r\n</style>","import { render } from \"./ProductDetail.vue?vue&type=template&id=16b07b16\"\nimport script from \"./ProductDetail.vue?vue&type=script&lang=js\"\nexport * from \"./ProductDetail.vue?vue&type=script&lang=js\"\n\nimport \"./ProductDetail.vue?vue&type=style&index=0&id=16b07b16&lang=css\"\nscript.render = render\n\nexport default script","import { render } from \"./PublicStore.vue?vue&type=template&id=a663680a&scoped=true\"\nimport script from \"./PublicStore.vue?vue&type=script&lang=js\"\nexport * from \"./PublicStore.vue?vue&type=script&lang=js\"\n\nimport \"./PublicStore.vue?vue&type=style&index=0&id=a663680a&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-a663680a\"\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./Product.vue?vue&type=style&index=0&id=03db784c&scoped=true&lang=css\"","<template>\r\n    <div class=\"container mt-5\">\r\n        <el-tabs :tab-position=\"tabsPosition\" style=\"min-height: 400px; overflow: auto;\">\r\n            <el-tab-pane label=\"Profile\"><profile></profile></el-tab-pane>\r\n            <el-tab-pane label=\"Address\"><Address></Address></el-tab-pane>\r\n            <!--<el-tab-pane label=\"Identity Verification\"><IdentityVerification></IdentityVerification></el-tab-pane>\r\n            <el-tab-pane label=\"Password & Security\"><PasswordAndSecurity></PasswordAndSecurity></el-tab-pane>-->\r\n            <el-tab-pane label=\"Payment Methods\" v-if=\"checkIfUserIsOrganizer\">\r\n                <!--<section class=\"h5 font-weight-medium mt-5\">\r\n                    <div class=\"row col-md-10 mb-2\">\r\n                        <h5 style=\"color: #983222\">Thank you for participating in a Colorado Jack Fundraiser! We are ready to prepare your check for 50% of your gross sales (sales less shipping costs). </h5>\r\n                    </div>\r\n                </section>-->\r\n                <section class=\"h5 font-weight-medium mt-5\">\r\n                    <span>FUNDRAISER PAYOUT INFORMATION</span>\r\n                    <h5 class=\"mt-3\">Thank you for participating in a Colorado Jack Fundraiser!</h5>\r\n                    <h6>Click on the fundraiser title below and complete the form then click submit to provide your information to our staff for final payout review. </h6>\r\n                    <!-- <span class=\"float-right\"><el-button icon=\"el-icon-edit\" circle @click=\"editMode=true\"></el-button></span>-->\r\n                </section>\r\n                <template v-if=\"editMode\">\r\n                    <div class=\"row mt-3\">\r\n                        <div class=\"col-12 col-sm-6\">\r\n                            <el-form :model=\"event\" :rules=\"event1Rules\" ref=\"event1Form\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n                                <el-collapse class=\"ml-3\" style=\"white-space: nowrap;overflow: hidden;text-overflow: clip\">\r\n                                    <el-collapse-item v-for=\"event in events\" :title=\"event.title\" :name=\"event.id\" :key=\"event.id\" @change=\"selectedevent(event)\" style=\"color: #983222; font-size:medium\">\r\n                                        <div v-if=\"event.status=='Ended'\" class=\"col-12\" style=\"background-color:lightgrey\">                                           \r\n                                            <div class=\"row col-md-12 mb-2\" style=\"white-space: normal;overflow: auto;\">\r\n                                                <h6>We are ready to prepare your check for 50% of your gross sales (sales less shipping costs). </h6>\r\n                                            </div>                                           \r\n                                            <section style=\"height: 720px;white-space: normal;overflow: auto;text-overflow: ellipsis\">\r\n                                                <div class=\"row\">\r\n                                                    <div class=\"col-6 font-weight-medium text-left\" style=\"font-size:14px\">FUNDRAISER TITLE</div>\r\n                                                    <div class=\"col-6  font-weight-medium text-left\" style=\"font-size:14px\">ESTIMATED PAYOUT</div>\r\n                                                </div>\r\n                                                <hr class=\"m-1\" />\r\n                                                <div class=\"row \">\r\n                                                    <div class=\"col-6 font-weight-medium  text-left\">{{event.title}}</div>\r\n                                                    <div class=\"col-6 font-weight-medium  text-left\">${{event.allStoresSubTotal / 2}}</div>\r\n                                                </div>\r\n                                                <hr class=\"m-1 mb-2\" />\r\n                                                <section>\r\n                                                    <el-form-item label=\"MAKE CHECK PAYABLE TO:\" prop=\"eventPayToName\">\r\n                                                        <el-input type=\"text\" v-model=\"event.eventPayToName\" autocomplete=\"off\" v-focus v-fancylabel v-on:keyup.enter=\"submitChanges\"></el-input>\r\n                                                    </el-form-item>\r\n                                                </section>\r\n                                                <section style=\"padding:0px\">\r\n                                                    <el-form-item label=\"ADDRESS TO SEND CHECK TO:\" prop=\"eventPayToAddress\">\r\n                                                        <el-input type=\"text\" v-model=\"event.eventPayToAddress\" autocomplete=\"off\" v-focus v-fancylabel v-on:keyup.enter=\"submitChanges\"></el-input>\r\n                                                    </el-form-item>\r\n                                                </section>\r\n                                                <section style=\"padding:0px\">\r\n                                                    <h6 class=\"text-center\" style=\"font-weight:500\">Please upload your W-9 information! If you need the W-9 form you can fill out a PDF online at <a href=\"https://www.irs.gov/pub/irs-pdf/fw9.pdf\" target=\"_blank\">Visit irs w-9</a> then upload to this site.  If you have questions email us at <a href=\"mailto:info@coloradojackgiveback.com\">info@coloradojackgiveback.com</a>.</h6>\r\n                                                    <div style=\"height:200px;margin: 0 auto; margin-bottom:20px\">\r\n                                                        <el-upload class=\"avatar-uploader\" drag:action=\"url+filename+query\" :on-change=\"w9Selected\" :auto-upload=\"false\" drag>\r\n                                                            <i class=\"el-icon-upload\"></i>\r\n                                                            <div class=\"el-upload__text\">Drop file here or <em>click to upload</em></div>\r\n                                                            <div class=\"el-upload__tip\">Only files with an and .pdf .jpg .jpeg extension</div>\r\n                                                        </el-upload>\r\n                                                    </div>\r\n                                                </section>\r\n                                                <hr />\r\n                                                <section style=\"padding:0px\">\r\n                                                    <el-form-item>\r\n                                                        <div style=\"text-align:center;justify-content:center\">\r\n                                                            <h6 v-if=\"submitPayinfo&&event.w9file!=null\" style=\"color: #983222; font-size:large\">Thanks, we have submitted your information! </h6>\r\n                                                            <el-button v-else type=\"primary\" :disabled=\"!this.enableSubmit\" @click=\"submitChanges\" :loading=\"loading\" class=\"float-left\">SUBMIT</el-button>\r\n                                                        </div>\r\n                                                    </el-form-item>\r\n                                                </section>\r\n                                            </section>\r\n                                            </div>\r\n                                        <div v-else>\r\n                                            <h6 style=\"color: #983222\">Looks like this fundraiser hasn't ended yet. Check back here once the fundraiser has ended. </h6>\r\n                                        </div>\r\n                                    </el-collapse-item>\r\n                                </el-collapse>\r\n                              \r\n                            </el-form>\r\n                        </div>\r\n                    </div>\r\n                </template>\r\n                <hr />\r\n                <div class=\"row center col-md-10 justify-content-center mt-lg-5 mb-5\">\r\n                    <div class=\"col-md-5\">\r\n                        <H2 class=\"center\" style=\"color: #983222\">If you need more help please contact us.</H2>\r\n                        <p class=\"mt-3 font-weight-medium\" style=\"color: #983222;\">EMAIL ADDRESS</p>\r\n                        <p class=\"mt-2\"><a href=\"mailto:info@coloradojackgiveback.com\">info@coloradojackgiveback.com</a></p>\r\n                        <p class=\"mt-2 font-weight-medium\" style=\"color: #983222\">MAILING ADDRESS</p>\r\n                        <p class=\"mt-2\">1702 Schwan Ave NE, Devils Lake, ND 58301</p>\r\n                    </div>\r\n                    <div class=\"col-md-5 \">\r\n                        <div class=\"row justify-content-center mt-3 \">\r\n                            <img src=\"https://coloradojackgivebacksa.blob.core.windows.net/vuepublicpage/normalpopcorn.png\" class=\"img-fluid mb-3\" />\r\n                        </div>\r\n                    </div>\r\n                </div>\r\n            </el-tab-pane>\r\n        </el-tabs>\r\n    </div>\r\n</template>\r\n\r\n<script>\r\n    import Profile from \"./Profile\"\r\n    import Address from \"./Address\"\r\n    //import PasswordAndSecurity from \"./PasswordAndSecurity\"\r\n    //import IdentityVerification from \"./IdentityVerification\"\r\n    import axios from \"axios\"\r\n    import store from \"@/store\"\r\n    import { mapGetters } from \"vuex\"\r\n\r\n    export default {\r\n        name: 'Settings',\r\n        //components: { Profile, Address, PasswordAndSecurity, IdentityVerification },\r\n        components: { Profile, Address },\r\n        data() {\r\n            return {\r\n                editMode: true,\r\n                submitPayinfo: false,\r\n                loading: false,\r\n                events: {},\r\n                event: {},\r\n                email: '',\r\n                status: '',\r\n                w9Url: \"\",\r\n                enableSubmit: false,\r\n                event1Rules: {\r\n                    eventPayToAddress: [\r\n                        { required: true, message: 'Check Mailing address is required', trigger: 'blur' }\r\n                    ],\r\n                    eventPayToName: [\r\n                        { required: true, message: 'Check payable to is required', trigger: 'blur' }\r\n                    ]\r\n                }\r\n            }\r\n        },\r\n        methods: {\r\n            selectedevent(val) {\r\n                this.event = val;\r\n                this.event.eventPayOutAmount = this.event.allStoresSubTotal / 2;\r\n                this.event.email = this.email;\r\n                this.event.organizerName = this.currentUserDetail.firstName.concat(\" \", this.currentUserDetail.lastName);\r\n                //this.event.eventPaidOut = false;\r\n            },   \r\n            w9Selected(file) {\r\n                this.w9Url = URL.createObjectURL(file.raw);\r\n                this.event.w9file = file;\r\n                if (this.event.w9file != '') {\r\n                    this.enableSubmit = true;\r\n                }\r\n                console.log(this.w9Url);\r\n            },\r\n            handleUploadError() {\r\n                console.log(\"File upload failed.\");\r\n            },\r\n            handleUploadSuccess() {\r\n                console.log(\"File upload succeeded!\");\r\n            },\r\n            validateForm(form) {\r\n                let isValid = false;\r\n                this.$refs[form].validate((valid) => {\r\n                    isValid = valid;\r\n                });\r\n                return isValid;\r\n            },\r\n            submitChanges() {             \r\n                if (this.event.eventPayToAddress != '' && this.event.eventPayToName != '' && this.event.w9file != null) {\r\n                    //var test = this.settings.event;\r\n                    var formData = new FormData();\r\n                    // formData.append(\"allStoresSubTotal:\", this.event.allStoresSubTotal)\r\n                    for (const [key, value] of Object.entries(this.event)) {\r\n                        formData.append(key, value);\r\n                    }\r\n\r\n                    //add w9file to formdata\r\n                    if (this.event.w9file != null) {\r\n                        formData.append(\"w9file\", this.event.w9file.raw);\r\n                        //for (const [key, value] of Object.entries(this.event.w9file)) {\r\n                        //    formData.append(\"w9filedata.\" + key, value);\r\n                        //}                                   \r\n                    }\r\n\r\n                    this.loading = true;\r\n                    axios.put(\"/api/events/\", formData, {\r\n                        headers: {\r\n                            'Content-Type': 'multipart/form-data'\r\n                        }\r\n                    }).then(response => {\r\n                        this.$message({\r\n                            message: 'Changes saved to the payment method.',\r\n                            type: 'success'\r\n                        });\r\n                        this.submitPayinfo = true;\r\n                        this.loading = false;\r\n                    }).catch((error) => {\r\n                        this.loading = false;\r\n                    });\r\n                }\r\n                else {\r\n                    this.$message({\r\n                        message: 'Not all required fields have been filled.',\r\n                        type: 'failure'\r\n                    });\r\n                }\r\n            },\r\n            async getEventDetails() {\r\n                await axios.get('/api/events/').then(response => {\r\n                    this.events = response.data;\r\n                }).catch((error) => {\r\n\r\n                });\r\n            },\r\n        },\r\n        computed: {\r\n            tabsPosition() {\r\n                if (screen.width <= 768)\r\n                    return \"'top'\";\r\n                else\r\n                    return \"left\";\r\n            },            \r\n            ...mapGetters([\r\n                'isAuthenticated', 'currentUserDetail', 'hasRunningEvent', 'runningEventEndDate'\r\n            ]),\r\n            checkIfUserIsOrganizer() {\r\n                if (this.status) {\r\n                    return this.status.includes(\"o/e\");\r\n                }    \r\n                return false;\r\n            },\r\n        },\r\n        mounted() {\r\n            \r\n        },\r\n        created() {\r\n            this.getEventDetails();           \r\n            this.email = this.currentUserDetail.email;\r\n            this.status = this.currentUserDetail.status;            \r\n        }\r\n    }\r\n</script>\r\n\r\n\r\n<style scoped>\r\n   \r\n</style>\r\n","<template>\r\n    <section class=\"h5 font-weight-medium mt-5\">\r\n        <span>PROFILE</span>\r\n        <span class=\"float-right\"><el-button icon=\"el-icon-edit\" circle @click=\"editMode=true\"></el-button></span>\r\n    </section>\r\n    <hr />  \r\n    <template v-if=\"editMode\">\r\n        <div class=\"row mt-5\">           \r\n            <div class=\"col-12 col-sm-6\" style=\"height: 300px\">\r\n                <section>\r\n                    <div class=\"font-weight-medium\">\r\n                        EMAIL\r\n                    </div>\r\n                    <div class=\"mt-2\" style=\"color: #983222\">\r\n                        {{profile.email}}\r\n                    </div>\r\n                </section>\r\n                <section>\r\n                    <div class=\"font-weight-medium\">\r\n                        MOBILE PHONE\r\n                    </div>\r\n                    <div class=\"mt-2\" style=\"color: #983222\">\r\n                        {{profile.phone}}\r\n                    </div>\r\n                </section>\r\n                <el-form :model=\"profile\" :rules=\"profileRules\" ref=\"profileForm\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n                    <section>\r\n                        <el-form-item label=\"FIRST NAME\" prop=\"firstName\" style=\"color: #983222\">\r\n                            <el-input type=\"text\" v-model=\"profile.firstName\" autocomplete=\"off\" v-focus v-fancylabel v-on:keyup.enter=\"submitChanges\"></el-input>\r\n                        </el-form-item>\r\n                    </section>\r\n                    <section>\r\n                        <el-form-item label=\"LAST NAME\" prop=\"lastName\" style=\"color: #983222\">\r\n                            <el-input type=\"text\" v-model=\"profile.lastName\" autocomplete=\"off\" v-fancylabel v-on:keyup.enter=\"submitChanges\"></el-input>\r\n                        </el-form-item>\r\n                    </section>\r\n                </el-form>\r\n            </div>\r\n            <div class=\"col-12 col-sm-6 justify-content-end d-flex\" style=\"height: 200px\" >\r\n                <div style=\"width:250px;height:250px\">\r\n                    <ImageUploader @crop=\"setCropData\" @image-selected=\"setSelectedImage\" :image=\"profile.imageSrc\"></ImageUploader>\r\n                </div>\r\n            </div>\r\n        </div>\r\n        <div class=\"row mt-5\" style=\"padding-top:30px; justify-content:center\">\r\n            <el-form-item>\r\n                <el-button type=\"primary\" plain @click=\"editMode=false\" class=\"center\">CANCEL</el-button>\r\n                <el-button type=\"primary\" @click=\"submitChanges\" :loading=\"loading\" class=\"center\">SUBMIT CHANGES</el-button>\r\n            </el-form-item>\r\n        </div>\r\n    </template>\r\n    <template v-else>\r\n        <div class=\"row\">           \r\n            <div class=\"col-12 col-sm-6\">\r\n                <section>\r\n                    <div class=\"font-weight-medium\">\r\n                        EMAIL\r\n                    </div>\r\n                    <div class=\"mt-2 font-weight-light\">\r\n                        {{profile.email}}\r\n                    </div>\r\n                </section>\r\n                <section>\r\n                    <div class=\"font-weight-medium\">\r\n                        MOBILE PHONE\r\n                    </div>\r\n                    <div class=\"mt-2 font-weight-light\">\r\n                        {{profile.phone}}\r\n                    </div>\r\n                </section>\r\n                <section>\r\n                    <div class=\"font-weight-medium\">\r\n                        FIRST NAME\r\n                    </div>\r\n                    <div class=\"mt-2 font-weight-light\">\r\n                        {{profile.firstName}}\r\n                    </div>\r\n                </section>\r\n                <section>\r\n                    <div class=\"font-weight-medium\">\r\n                        LAST NAME\r\n                    </div>\r\n                    <div class=\"mt-2 font-weight-light\">\r\n                        {{profile.lastName}}\r\n                    </div>\r\n                </section>\r\n            </div>\r\n            <div class=\"col-12 col-sm-6 justify-content-end d-flex\">\r\n                <div style=\"width:300px;height:300px\" class=\"profile-image\">\r\n                    <el-image :src=\"profile.imageSrc\">\r\n                        <template #error>\r\n                            <div class=\"image-slot\">\r\n                                <i class=\"el-icon-picture-outline\"></i>\r\n                            </div>\r\n                        </template>\r\n                    </el-image>\r\n                </div>\r\n            </div>\r\n        </div>\r\n    </template>\r\n\r\n</template>\r\n\r\n<script>\r\n    import axios from \"axios\"\r\n    import store from \"@/store\"\r\n    import { mapGetters } from \"vuex\"\r\n    import ImageUploader from \"./ImageUploader\"\r\n\r\n    export default {\r\n        name: 'Profile',\r\n        components: { ImageUploader },\r\n        data() {\r\n            return {\r\n                editMode: false,\r\n                loading: false,\r\n                file: null,\r\n                profile: {\r\n                    email: '',\r\n                    phone: '',\r\n                    firstName: '',\r\n                    lastName: '',\r\n                    imageSrc: '',\r\n                    imageCropData: {}\r\n                },\r\n                profileRules: {\r\n                    firstName: [\r\n                        { required: true, message: 'First Name is required', trigger: 'blur' }\r\n                    ],\r\n                    lastName: [\r\n                        { required: true, message: 'Last Name is required', trigger: 'blur' }\r\n                    ]\r\n                }\r\n            }\r\n        },\r\n        methods: {\r\n            setSelectedImage(file) {\r\n                this.file = file;\r\n            },\r\n            setCropData(data) {\r\n                this.profile.imageCropData = data;\r\n            },\r\n            submitChanges() {\r\n                this.$refs[\"profileForm\"].validate((valid) => {\r\n                    if (valid) {\r\n                        var formData = new FormData();\r\n                        if (this.file != null) {\r\n                            formData.append(\"file\", this.file.raw);\r\n                            for (const [key, value] of Object.entries(this.profile.imageCropData)) {\r\n                                formData.append(\"imageCropData.\" + key, value);\r\n                            }\r\n                        }\r\n\r\n                        for (const [key, value] of Object.entries(this.profile)) {\r\n                            if (key === \"imageCropData\")\r\n                                continue;\r\n                            formData.append(key, value);\r\n                        }\r\n                        this.loading = true;\r\n                        axios.put(\"/api/users\", formData, {\r\n                            headers: {\r\n                                'Content-Type': 'multipart/form-data'\r\n                            }\r\n                        }).then(response => {\r\n                            this.currentUserDetail.firstName = this.profile.firstName;\r\n                            this.currentUserDetail.lastName = this.profile.lastName;\r\n                            this.currentUserDetail.imageSrc = response.data;\r\n                            this.profile.imageSrc = response.data;\r\n                            store.commit(\"setLoggedInUser\", this.currentUserDetail);\r\n                            this.$message({\r\n                                message: 'Changes saved to the event.',\r\n                                type: 'success'\r\n                            });\r\n                            this.editMode = false;\r\n                            this.loading = false;\r\n                        }).catch((error) => {\r\n                            this.loading = false;\r\n                        });   \r\n                    }\r\n                });                \r\n            }\r\n        },\r\n        computed:{\r\n            ...mapGetters([\r\n                'currentUserDetail'\r\n            ])\r\n        },\r\n        mounted() {\r\n           \r\n        },\r\n        created() {\r\n            this.profile.email = this.currentUserDetail.email;\r\n            this.profile.phone = this.currentUserDetail.phone;\r\n            this.profile.firstName = this.currentUserDetail.firstName;\r\n            this.profile.lastName = this.currentUserDetail.lastName;\r\n            this.profile.imageSrc = this.currentUserDetail.imageSrc;\r\n        }\r\n    }\r\n</script>\r\n\r\n\r\n<style>\r\n   .profile-image img{\r\n       border-radius:100% !important;\r\n   }\r\n</style>\r\n","import { render } from \"./Profile.vue?vue&type=template&id=9e818b86\"\nimport script from \"./Profile.vue?vue&type=script&lang=js\"\nexport * from \"./Profile.vue?vue&type=script&lang=js\"\n\nimport \"./Profile.vue?vue&type=style&index=0&id=9e818b86&lang=css\"\nscript.render = render\n\nexport default script","import { render } from \"./Settings.vue?vue&type=template&id=149ab26d\"\nimport script from \"./Settings.vue?vue&type=script&lang=js\"\nexport * from \"./Settings.vue?vue&type=script&lang=js\"\nscript.render = render\n\nexport default script","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--0-1!./TermsOfUse.vue?vue&type=style&index=0&id=7e17e8e2&scoped=true&lang=css\"","<template>\r\n    <div class=\"container\" :loading=\"loading\">\r\n        <div class=\"row pt-5\" style=\"justify-content:center\" v-if=\"!editMode\">\r\n            <h5 style=\"color: #983222\">Fundraiser Details:</h5>\r\n        </div>\r\n        <!--<div class=\"row no-gutters\" v-if=\"!editMode\">\r\n        <div class=\"h4 font-weight-medium pt-2 pb-2 p-sm-0 pb-sm-3 elipssis center\" v-if=\"event.storeId!=null\"><router-link :to=\"{ name: 'OpenStore',params: { id: event.storeId }}\" style=\"color: #9A3324\">{{eventEdit.title}}</router-link></div>\r\n    </div>-->\r\n        <div class=\"row no-gutters\" v-if=\"!editMode\">\r\n            <div class=\"center\"><h6 style=\"\">Fundraiser default image - you can edit this image by choosing \"Edit Fundraiser\" button below.  Participants will choose there own image for there online store, but the default fundraiser image will be displayed in a circle in the upper right hand corner of each participants store.</h6></div>\r\n        </div>\r\n        <div class=\"row no-gutters\">\r\n            <div class=\"col image-cover\">\r\n                <el-image :src=\"event.imageSrc\" style=\"border-radius:30px\" v-if=\"!editMode\">\r\n                    <template #error>\r\n                        <div class=\"image-slot\">\r\n                            <i class=\"el-icon-picture-outline\"></i>\r\n                        </div>\r\n                    </template>\r\n                </el-image>\r\n                <ImageUploader @crop=\"setCropData\" @image-selected=\"setSelectedImage\" v-if=\"editMode\" :image=\"event.imageSrc\"></ImageUploader>\r\n            </div>\r\n        </div>\r\n        <div class=\"row pt-3 pb-3\" style=\"justify-content:center; text-align:center\">\r\n            <div class=\"header-text col-10 col-lg-6 mb-1 mb-lg-0 mt-5\">\r\n                <div class=\"row no-gutters\">\r\n                    <div class=\"col-4\"><h5 style=\"color: #983222\">Time Remaining:</h5></div>\r\n                    <div class=\"col-8\"><h5 style=\"color: #983222\"><EventTimer v-bind:startDate=\"event.startDate\" v-bind:endDate=\"event.endDate\" v-if=\"event.endDate!=null\"></EventTimer></h5></div>\r\n                </div>\r\n            </div>\r\n        </div>\r\n        <div class=\"row no-gutters mt-lg-5\" v-if=\"editMode\">\r\n            <div class=\"col-12\">\r\n                <el-form :model=\"eventEdit\" :rules=\"eventEditRules\" ref=\"eventEditForm\" :label-position=\"top\" hide-required-asterisk=\"true\">\r\n                    <el-form-item label=\"TITLE\" prop=\"title\">\r\n                        <el-input v-model=\"eventEdit.title\" v-fancylabel v-on:keyup.enter=\"saveChanges\"></el-input>\r\n                    </el-form-item>\r\n                    <el-form-item label=\"DESCRIPTION\" prop=\"description\">\r\n                        <el-input v-model=\"eventEdit.description\" v-fancylabel v-on:keyup.enter=\"saveChanges\"></el-input>\r\n                    </el-form-item>\r\n                </el-form>\r\n            </div>\r\n        </div>\r\n        <div class=\"row\">\r\n            <div class=\"col-12\">\r\n                <label class=\"top-label\">Fundraiser Information</label>\r\n                <div class=\"title\">\r\n                    <div style=\"overflow: hidden;\">\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4\"><h6>Edit Fundraiser:</h6></div>\r\n                            <div class=\"col-8\">\r\n                                <el-button-group>\r\n                                    <el-button style=\"width:150px\" class=\"mr-2\" type=\"primary\" size=\"small\" icon=\"el-icon-edit-outline\" @click=\"editMode=true\" v-if=\"!editMode\" title=\"Edit Fundraiser, this button allows you to make changes to Fundraiser title, Description and Event Picture!\">Edit Fundraiser</el-button>\r\n                                    <el-button style=\"width:150px\" class=\"mr-2\" type=\"primary\" size=\"small\" icon=\"el-icon-check\" :loading=\"loading\" @click=\"saveChanges\" v-if=\"editMode\" title=\"Save Changes to Store!\">Save Changes</el-button>\r\n                                    <el-button type=\"danger\" style=\"background-color: #983222; width:150px\" size=\"small\" icon=\"el-icon-remove\" @click=\"confirmStopEvent\" title=\"Warning: this button removes the Fundraiser!\">Delete Fundraiser</el-button>\r\n                                </el-button-group>\r\n                            </div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 \"><h6>Fundraiser Title:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{eventEdit.title}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 \"><h6>Fundraiser Description:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{eventEdit.description}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4 \"><h6>Store Details Page:</h6></div>\r\n                            <div class=\"col-8 text-left\" v-if=\"event.storeId!=null\"><h6><router-link style=\"color: #9A3324\" :to=\"{ name: 'OpenStore',params: { id: event.storeId }}\">{{eventEdit.title}}</router-link></h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4\"><h6>Organizer Email:</h6></div>\r\n                            <h6 class=\"col-8 text-left\">{{profile.email}}</h6>\r\n                        </div>\r\n                        <hr />\r\n\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4\"><h6>START DATE:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{new Date(event.startDate).toLocaleDateString(\"en-US\",{  year: 'numeric', month: 'long', day: 'numeric' })}}</h6></div>\r\n                        </div>\r\n                        <div class=\"row\">\r\n                            <div class=\"col-4\"><h6>END DATE:</h6></div>\r\n                            <div class=\"col-8 text-left\"><h6>{{new Date(event.endDate).toLocaleDateString(\"en-US\",{  year: 'numeric', month: 'long', day: 'numeric' })}}</h6></div>\r\n                        </div>\r\n                        <hr />\r\n                        <div class=\"statistics\">\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6>Fundraiser Goal:</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6>${{parseFloat(event.targetAmount).toFixed(2)}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6>Total Popcorn Earnings (50%):</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6 style=\"color:green\">${{ totalPopcornSalesNet }}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6>Total Direct Donations (After Fees):</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6 style=\"color:green\">${{ totalDirectDonationsNet }}</h6></div>\r\n                            </div>\r\n                            <!--<div class=\"row\">\r\n                            <div class=\"col-4\"><h6><strong>Total Net Earnings:</strong></h6></div>\r\n                            <div class=\"col-8 text-left\"><h6 style=\"color:green\"><strong>${{ totalNetEarnings }}</strong></h6></div>\r\n                        </div>-->\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6><strong>Total Fundraiser Earnings:</strong></h6></div>\r\n                                <div class=\"col-8 text-left\">\r\n                                    <el-button class=\"earnings-button\"\r\n                                               type=\"primary\"\r\n                                               size=\"medium\"\r\n                                               @click=\"eventBreakDown=true\"\r\n                                               title=\"Click to view fundraiser dollar breakdown\">\r\n                                        💰 ${{ parseFloat(totalNetEarnings).toFixed(2) }}\r\n                                    </el-button>\r\n                                </div>\r\n\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6>Number of Participants:</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6>{{event.participantsCount}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6>Number of Donations:</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6>{{event.donationsCount}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4\"><h6>Master Invite Code:</h6></div>\r\n                                <div class=\"col-8 text-left\"><h6 style=\"color: #983222\">{{event.code}}</h6></div>\r\n                            </div>\r\n                            <div class=\"row\">\r\n                                <div class=\"col-4 font-weight-normal\"><h6>Master invite Link</h6></div>\r\n                                <el-popover placement=\"top\"\r\n                                            :width=\"650\"\r\n                                            auto-close=\"4000\"\r\n                                            :trigger=\"click\"\r\n                                            effect=\"dark\"\r\n                                            content=\"Copied participant invite url, you can now paste the link into an Email or SMS message!\">\r\n                                    <template #reference>\r\n                                        <h6 class=\"col-7 el-icon-copy-document c-pointer h6\" style=\"color: #9A3324\" title=\"Copied participant invite url to your clipboard, then you can paste into an email or text message\" id=\"eventCode\" :data-copy=\"masterInviteUrl\" @click=\"copyCode\"> MasterUrlInviteCode</h6>\r\n                                    </template>\r\n                                </el-popover>\r\n                            </div>\r\n                            <div class=\"row\" v-if=\"isMobile\">\r\n                                <div class=\"col-4\"><h6>Invite Sellers with your phones SMS:</h6></div>\r\n                                <div class=\"col-8 text-left\">\r\n                                    <a style=\"background-color:aquamarine\" class=\"el-button el-button--large mr-2\" v-bind:href=\"smsUrl\" v-if=\"isMobile\"><i class=\"fas fa-sms\" style='color: white'></i></a>\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n        </div>\r\n\r\n        <div class=\"fundraiser-earnings-explainer\">\r\n            <h6>📊 How Fundraiser Earnings Are Calculated:</h6>\r\n            <ul>\r\n                <li><strong>Popcorn Sales:</strong> 50% of total popcorn sales go directly to the fundraiser.</li>\r\n                <li><strong>Direct Donations:</strong> 90% of each donation goes to the fundraiser, with a 10% fee deducted to cover credit card processing, hosting, website maintenance, and operational costs.</li>\r\n            </ul>\r\n            <p><strong>Final Formula:</strong></p>\r\n            <p>\r\n                <code>Total Earnings = (Popcorn Sales / 2) + (Direct Donations × 90%)</code>\r\n            </p>\r\n        </div>\r\n\r\n        <div class=\"row\">\r\n            <div class=\"col-12\">\r\n                <label class=\"top-label\">SELLER INVITE STATUS</label>\r\n                <el-badge :value=\"event.participantsCount\" v-if=\"parseInt(event.participantsCount)>0\" class=\"count\" title=\"This is the status of the email invitation that was sent to the sellers!\"></el-badge>\r\n\r\n                <div class=\"participants\">\r\n                    <div class=\"row col-10 center\" style=\"text-align:left\">\r\n                        <ul>\r\n                            <li><h6><el-button type=\"info\" @click=\"invPartInfoVisible=true\" icon=\"el-icon-info\" circle title=\"more info\"></el-button> To get started, please invite Sellers(team members) to create their own fully functional eCommerce store front! Just click the 'Invite Sellers With Email/SMS' buttons below and enter their email address or phone number. The email and sms messages are sent from our servers.</h6></li>\r\n                            <li><h6>It should only take a few minutes for the Seller to setup their site, once they start the setup.</h6></li>\r\n                            <li><h6>As you invite more sellers, it allows your fundraising event to reach more potential buyers!</h6></li>\r\n                            <li>\r\n                                <h6>\r\n                                    If you would like to send the email or sms out to the sellers yourself, and bypass our servers, use the copy seller invite url:\r\n                                    <el-popover placement=\"top\"\r\n                                                :width=\"650\"\r\n                                                auto-close=\"4000\"\r\n                                                :trigger=\"click\"\r\n                                                effect=\"dark\"\r\n                                                content=\"Copied seller invite url, you can now paste the link into an Email or SMS message!\">\r\n                                        <template #reference>\r\n                                            <h6 class=\"el-icon-copy-document c-pointer h6\" style=\"color: #983222\" title=\"Copied participant invite url to your clipboard, then you can paste into an email or text message\" id=\"eventCode\" :data-copy=\"masterInviteUrl\" @click=\"copyCode\"> MasterUrlInviteCode</h6>\r\n                                        </template>\r\n                                    </el-popover>\r\n                                </h6>\r\n                            </li>\r\n                            <li><h6 style=\"\">Also you can send the Master Invite Code - {{event.code}} directly to your participants they can use this in the mobile app to join your fundraiser or to join through the website.</h6></li>\r\n                        </ul>\r\n                    </div>\r\n                    <hr />\r\n                    <div class=\"row col-12 center\" style=\"justify-content:center\">\r\n                        <div class=\"col-sm-6\" style=\"text-align:center\">\r\n                            <el-button size=\"medium\" style=\"background-color: #983222; justify-content:center; width:230px\" type=\"danger\" @click=\"invPartVisible=true\" title=\"Invite others to participate/sell in the Fundraiser, they will create their own unique eCommerce store, under your Fundraiser!\">INVITE SELLERS WITH EMAIL</el-button>\r\n                        </div>\r\n                        <div class=\"col-sm-6\" style=\"text-align:center\">\r\n                            <el-button size=\"medium\" style=\"background-color: #008000; justify-content: center; width: 230px\" type=\"primary\" @click=\"invPartVisibleSMS=true\" title=\"Invite others to participate/sell in the Fundraiser, they will create their own unique eCommerce store, under your Fundraiser!\">INVITE SELLERS WITH SMS</el-button>\r\n                        </div>\r\n                    </div>\r\n                    <hr />\r\n                    <div class=\"row no-gutters\">\r\n                        <div class=\"col-4 text-left\"><h6>Email/Phone:</h6></div>\r\n                        <div class=\"col-2 text-right\"><h6>Status:</h6></div>\r\n                        <div class=\"col-2 text-right\"><h6>Invite Date:</h6></div>\r\n                        <div class=\"col-4 text-right\"><h6>Resend Invite:</h6></div>\r\n                    </div>\r\n                    <hr class=\"m-1\" />\r\n                    <div style=\"overflow: auto; height: 300px; \">\r\n                        <div class=\"row pt-1 pb-1 no-gutters\" v-for=\"participanttest in invitedParticipants2\" :key=\"participanttest.status\">\r\n                            <!-- <div class=\"col-4 elipssis pl-0\" v-if=\"participanttest.storeCode!=null\"><a :href=\"store.publicUrl\" target=\"_blank\" class=\"center\"><h6 class=\"center\" style=\"justify-content: center; color: #9A3324\">{{participanttest.email ?? participanttest.phone}}</h6></a></div>-->\r\n                            <div class=\"col-4 elipssis pl-0\"><h6>{{participanttest.email ?? participanttest.phone}}</h6></div>\r\n                            <div class=\"col-2 text-right\"><h6>{{participanttest.inviteStatus}}</h6></div>\r\n                            <div class=\"col-2 text-right\"><h6>{{(new Date(participanttest.createDate)).toLocaleDateString(\"en-US\")}}</h6></div>\r\n                            <div class=\"col-4\">\r\n                                <div class=\"row col-12 center\" style=\"justify-content:right\">\r\n                                    <el-button size=\"small\" v-if=\"participanttest.inviteStatus=='Invited'\" style=\"background-color: #983222;\" type=\"danger\" :loading=\"loading\" @click=\"resendInvite(participanttest)\" title=\"Resend invite to participant!\">RESEND</el-button>\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n                    </div>\r\n                    <hr />\r\n                    <div class=\"row col-10 center\">\r\n                        <h6>If you have many participants to invite, you can upload a comma delimted .csv or .txt file that contains emails that you would like to invite to participate in the Event! The format example: email1@example.com,email2@example.com with no space between the comma and email address.</h6>\r\n                    </div>\r\n                    <div class=\"row col-10 center mb-5\" style=\"justify-content:center; align-content:center\">\r\n                        <FileUploader @file-selected=\"setSelectedFile\" :file=\"invitedParticipant.file\" class=\"center\" style=\"justify-content:center; align-content:center\"></FileUploader>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n        </div>\r\n        <div class=\"row\">\r\n            <div class=\"col-12 sellers-container\" v-if=\"parseInt(event.participantsCount) > 0\">\r\n                <label class=\"top-label\">TOP ACTIVE SELLERS</label>\r\n                <div class=\"sellers\">\r\n                    <!-- Column Headers -->\r\n                    <div class=\"row no-gutters sellers-header\">\r\n                        <div class=\"col-4 mb-2 ml-2\"></div>\r\n                        <div class=\"col-3 text-right\"><h6>GOAL</h6></div>\r\n                        <div class=\"col-1 text-right\"><h6>POPCORN</h6></div>\r\n                        <div class=\"col-1 text-right\"><h6>DONATIONS</h6></div>\r\n                        <div class=\"col-1 text-right\"><h6>NET SALES</h6></div>\r\n                        <div class=\"col-1 text-right\"><h6>EARNED</h6></div>\r\n                    </div>\r\n                    <hr class=\"m-1\" />\r\n\r\n                    <!-- Seller Data -->\r\n                    <div>\r\n                        <div class=\"row pt-1 pb-1 no-gutters seller-row\" v-for=\"store in storeGoalData\" :key=\"store.name\">\r\n                            <div class=\"header-text col-12 row no-gutters\">\r\n                                <div class=\"col-12 font-weight-medium mb-1 ml-2 seller-name\">\r\n                                    <h6>{{ store.owner }} - Store Goal Attained:</h6>\r\n                                </div>\r\n                                <div class=\"col-4 mb-2 ml-2\">\r\n                                    <el-progress text-inside=\"true\" stroke-width=\"15\" :percentage=\"store.percentage\" />\r\n                                </div>\r\n                                <div class=\"col-3 text-right\"><h6>${{ store.targetAmount.toFixed(2) }}</h6></div>\r\n                                <div class=\"col-1 text-right\"><h6>${{ store.netPopcornEarnings }}</h6></div>\r\n                                <div class=\"col-1 text-right\"><h6>${{ store.netDirectDonations }}</h6></div>\r\n                                <div class=\"col-1 text-right\"><h6>${{ store.amount.toFixed(2) }}</h6></div>\r\n                                <div class=\"col-1 text-right\"><h6 style=\"color: green;\">${{ store.earnedAmount }}</h6></div>\r\n                            </div>\r\n                        </div>\r\n                        <hr />\r\n\r\n                        <!-- Totals Row -->\r\n                        <div class=\"row no-gutters totals-row\">\r\n                            <div class=\"col-4 mb-2 ml-2\"><h6>TOTALS:</h6></div>\r\n                            <div class=\"col-3 text-right\"></div>\r\n                            <div class=\"col-1 text-right\"></div>\r\n                            <div class=\"col-1 text-right\"></div>\r\n                            <div class=\"col-1 text-right\"><h6>${{ parseFloat(this.event.allStoresSubTotal).toFixed(2) }}</h6></div>\r\n                            <div class=\"col-1 text-right\"><h6 style=\"color: green;\">${{ parseFloat(totalEarnedProfits).toFixed(2) }}</h6></div>\r\n                        </div>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n\r\n\r\n            <el-dialog title=\"TOTAL PROFITS\" style=\"font-weight:normal\" :width=\"dialogWidth\" :top=\"dialogTop\" v-model=\"eventBreakDown\">\r\n                <div class=\"\">\r\n                    <el-form :model=\"calculatedTotals\" show-message=\"false\" @submit.prevent>\r\n                        <div class=\"row no-gutters pb-2 h5\">\r\n                            <div class=\"col-12\">\r\n                                <div class=\"word-line-break mt-3\"><span>ORDERS BREAKDOWN</span></div>\r\n                                <div class=\"word-line-break mt-5\"><span>FUNDRAISER SALES - All BUYERS AND SELLERS</span></div>\r\n                                <el-button type=\"primary\" @click=\"downloadCSV\">Download CSV</el-button>\r\n                                <div class=\"donators\">\r\n                                    <el-table :data=\"this.eventorderdetails\" size=\"mini\" style=\"width:100%\" height=\"350\">\r\n                                        <el-table-column prop=\"createdAt\" label=\"Order Date\" width=\"150\" :formatter=\"formatDate\" />\r\n                                        <el-table-column prop=\"number\" label=\"Order Number\" width=\"175\" />\r\n                                        <el-table-column prop=\"buyerName\" label=\"Buyer Name\" width=\"150\" />\r\n                                        <!--<el-table-column prop=\"status\" label=\"Order Status\" width=\"150\" />-->\r\n                                        <el-table-column prop=\"seller\" label=\"Seller Name\" width=\"150\" />\r\n                                        <el-table-column label=\"Popcorn Sales\" width=\"160\" :formatter=\"calculatePopcornAmount\" />\r\n                                        <el-table-column prop=\"directDonationAmount\" label=\"Direct Donations\" width=\"150\" :formatter=\"formatCurrency\" />\r\n                                        <el-table-column prop=\"shippingFee\" label=\"Shipping\" width=\"150\" :formatter=\"formatCurrency\" />\r\n                                        <el-table-column prop=\"directDonationFee\" label=\"Processing Fees\" width=\"165\" :formatter=\"formatCurrency\" />\r\n                                        <el-table-column prop=\"subTotal\" label=\"Order Subtotal\" width=\"150\" :formatter=\"formatCurrency\" />\r\n                                        <el-table-column prop=\"total\" label=\"Order Total\" width=\"150\" :formatter=\"formatCurrency\" />\r\n                                        <el-table-column label=\"Order Earnings\" width=\"150\" :formatter=\"calculateEarnings\" />\r\n                                    </el-table>\r\n                                </div>\r\n                                <!-- Summary Section Moved Below -->\r\n                                <div class=\"mt-4\">\r\n                                    <hr />\r\n                                    <div class=\"center\">\r\n                                        <div class=\"row\">\r\n                                            <div class=\"col-6\"><h6>Total Popcorn Sales (Net):</h6></div>\r\n                                            <div class=\"col-6 text-left\"><h6 style=\"color:green\">${{ totalPopcornSalesNet }}</h6></div>\r\n                                        </div>\r\n                                        <div class=\"row\">\r\n                                            <div class=\"col-6\"><h6>Total Direct Donations (Net):</h6></div>\r\n                                            <div class=\"col-6 text-left\"><h6 style=\"color:green\">${{ totalDirectDonationsNet }}</h6></div>\r\n                                        </div>\r\n                                        <div class=\"row\">\r\n                                            <div class=\"col-6\"><h6><strong>Total Net Earnings:</strong></h6></div>\r\n                                            <div class=\"col-6 text-left\"><h6 style=\"color:green\"><strong>${{ totalNetEarnings }}</strong></h6></div>\r\n                                        </div>\r\n                                    </div>\r\n                                </div>\r\n                                <hr />\r\n                                <div class=\"fundraiser-earnings-explainer\">\r\n                                    <h6>📊 How Fundraiser Earnings Are Calculated:</h6>\r\n                                    <ul>\r\n                                        <li><strong>Popcorn Sales:</strong> 50% of total popcorn sales go directly to the fundraiser.</li>\r\n                                        <li><strong>Direct Donations:</strong> 90% of each donation goes to the fundraiser, with a 10% fee deducted to cover credit card processing, hosting, website maintenance, and operational costs.</li>\r\n                                    </ul>\r\n                                    <p><strong>Final Formula:</strong></p>\r\n                                    <p>\r\n                                        <code>Total Earnings = (Popcorn Sales / 2) + (Direct Donations × 90%)</code>\r\n                                    </p>\r\n                                </div>\r\n                            </div>\r\n                        </div>\r\n                    </el-form>\r\n                </div>\r\n                <template #footer>\r\n                    <span class=\"dialog-footer\">\r\n                        <el-button @click=\"eventBreakDown=false\">Close</el-button>\r\n                    </span>\r\n                </template>\r\n            </el-dialog>\r\n\r\n            <el-dialog title=\"Example Seller Invite Email\" :width=\"dialogWidth\" :top=\"dialogTop\" v-model=\"invPartInfoVisible\">\r\n                <div class=\"\" style=\"overflow:auto\">\r\n                    <div class=\"row no-gutters pb-2\">\r\n                        <div class=\"col-12 text-break\">\r\n                            This is an example of the email the seller will recieve to sign up for the Fundraiser.\r\n                        </div>\r\n                    </div>\r\n                    <div class=\"row no-gutters pb-2\">\r\n                        <div class=\"col-12 text-break\">\r\n                            The seller will click on the Join Fundraiser button to start setting up their account and fundraiser store.\r\n                        </div>\r\n                    </div>\r\n                    <div class=\"row no-gutters pb-2\">\r\n                        <div class=\"col-12 text-break\">\r\n                            The email will be sent from info@coloradojackgiveback.com.\r\n                        </div>\r\n                    </div>\r\n                    <div class=\"row no-gutters pb-2 h5\">\r\n                        <img src=\"https://coloradojackgivebacksa.blob.core.windows.net/vuepublicpage/participantInvite.jpg\" class=\"img-fluid center\" style=\"max-width:100%; height:auto\" />\r\n                    </div>\r\n                </div>\r\n                <template #footer>\r\n                    <span class=\"dialog-footer\">\r\n                        <el-button type=\"danger\" style=\"background-color: #983222\" @click=\"invPartInfoVisible=false\" :loading=\"loading\">Ok</el-button>\r\n                    </span>\r\n                </template>\r\n            </el-dialog>\r\n\r\n            <el-dialog title=\"INVITE SELLERS WITH EMAIL\" :width=\"dialogWidth\" :top=\"dialogTop\" v-model=\"invPartVisible\">\r\n                <div class=\"\">\r\n                    <el-alert v-show=\"emailErrorMessage.length > 0\" :title=\"emailErrorMessage\" :closable=\"false\"\r\n                              type=\"error\"\r\n                              effect=\"dark\">\r\n                    </el-alert>\r\n                </div>\r\n                <div class=\"\" style=\"overflow:auto\">\r\n                    <el-form :model=\"invitedParticipant\" :rules=\"emailValidRules\" ref=\"emailValid\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n\r\n                        <!--<form :rules=\"emailValidRules\">-->\r\n                        <div class=\"row no-gutters pb-2\">\r\n                            <div class=\"col-12 text-break\">\r\n                                Invite others to Sell on behalf of your Fundraiser via an Email address.  Enter their email address below and they will recieve an email to signup for this Fundraiser.\r\n                            </div>\r\n                        </div>\r\n                        <div class=\"row no-gutters pb-2 h5\">\r\n                            <div class=\"col-12\">\r\n                                EMAIL\r\n                            </div>\r\n                        </div>\r\n                        <el-form-item label=\"EMAIL\" prop=\"email\">\r\n                            <!--<el-input type=\"email\" v-model=\"invitedParticipant.email\" autocomplete=\"on\" v-fancylabel v-on:keyup.enter=\"addEmailField\"></el-input>-->\r\n                            <el-input type=\"email\" v-model=\"invitedParticipant.email\" autocomplete=\"on\" v-fancylabel></el-input>\r\n                        </el-form-item>\r\n                    </el-form>\r\n                </div>\r\n                <template #footer>\r\n                    <span class=\"dialog-footer\">\r\n                        <el-button @click=\"invPartVisible=false\">Cancel</el-button>\r\n                        <el-button type=\"danger\" style=\"background-color: #983222\" @click=\"inviteParticipants\" :loading=\"loading\">INVITE</el-button>\r\n                    </span>\r\n                </template>\r\n            </el-dialog>\r\n\r\n            <el-dialog title=\"INVITE SELLERS WITH SMS\" :width=\"dialogWidth\" :top=\"dialogTop\" v-model=\"invPartVisibleSMS\">\r\n                <div class=\"\">\r\n                    <el-alert v-show=\"emailErrorMessage.length > 0\" :title=\"emailErrorMessage\" :closable=\"false\"\r\n                              type=\"error\"\r\n                              effect=\"dark\">\r\n                    </el-alert>\r\n                </div>\r\n                <div class=\"\" style=\"overflow:auto\">\r\n                    <el-form :model=\"invitedParticipant\" :rules=\"phoneValidRules\" ref=\"phoneValid\" :label-position=\"top\" hide-required-asterisk=\"true\" show-message=\"false\" @submit.prevent>\r\n\r\n                        <!--<form :rules=\"emailValidRules\">-->\r\n                        <div class=\"row no-gutters pb-2\">\r\n                            <div class=\"col-12 text-break\">\r\n                                Invite Sellers to your Fundraiser via an SMS text message.  Enter the Sellers phone number below and they will recieve an sms from our server number(701-929-7768) with a link to signup for this Fundraiser.\r\n                            </div>\r\n                        </div>\r\n                        <div class=\"row no-gutters pb-2 h5\">\r\n                            <div class=\"col-12\">\r\n                                Phone Number\r\n                            </div>\r\n                        </div>\r\n                        <el-form-item label=\"Phone\" prop=\"phone\">\r\n                            <!--<el-input type=\"email\" v-model=\"invitedParticipant.email\" autocomplete=\"on\" v-fancylabel v-on:keyup.enter=\"addEmailField\"></el-input>-->\r\n                            <el-input type=\"string\" v-model=\"invitedParticipant.phone\" autocomplete=\"on\" v-fancylabel></el-input>\r\n                        </el-form-item>\r\n                    </el-form>\r\n                </div>\r\n                <template #footer>\r\n                    <span class=\"dialog-footer\">\r\n                        <el-button @click=\"invPartVisibleSMS=false\">Cancel</el-button>\r\n                        <el-button type=\"danger\" style=\"background-color: green\" @click=\"inviteParticipantsSMS\" :loading=\"loading\">INVITE</el-button>\r\n                    </span>\r\n                </template>\r\n            </el-dialog>\r\n\r\n\r\n            <el-dialog title=\"INVITE BUYERS TO STORE WITH EMAIL\" :width=\"dialogWidth\" :top=\"dialogTop\" v-model=\"invDonatorVisible\">\r\n                <div class=\"\" style=\"overflow:auto\">\r\n                    <form novalidate>\r\n                        <div class=\"row no-gutters pb-2\">\r\n                            <div class=\"col-12 text-break\">\r\n                                Invite Buyers to Donate to your Fundraiser via Email.  Enter their email address below and they will recieve an email which will include a direct link to your Fundraising Store.\r\n                            </div>\r\n                        </div>\r\n                        <div class=\"row no-gutters pb-2 h5\">\r\n                            <div class=\"col-12\">\r\n                                EMAIL\r\n                            </div>\r\n                        </div>\r\n                        <div class=\"row no-gutters align-items-center pb-2\" v-for=\"donator in invitedDonators\" :key=\"donator.counter\">\r\n                            <div class=\"col-9\">\r\n                                <el-input type=\"text\" size=\"medium\" @input=\"addInvitedDonator\" v-model=\"donator.email\"></el-input>\r\n                            </div>\r\n                            <div class=\"col-1\"></div>\r\n                            <div class=\"col-2\" v-if=\"donator.counter > 0\">\r\n                                <el-button type=\"danger\" style=\"background-color: #983222\" icon=\"el-icon-close\" circle @click=\"removeDonator(donator)\"></el-button>\r\n                            </div>\r\n                        </div>\r\n                    </form>\r\n                </div>\r\n\r\n                <template #footer>\r\n                    <span class=\"dialog-footer\">\r\n                        <el-button @click=\"invDonatorVisible=false\">Cancel</el-button>\r\n                        <el-button type=\"danger\" style=\"background-color: #983222\" @click=\"inviteDonators\" :loading=\"loading\">INVITE</el-button>\r\n                    </span>\r\n                </template>\r\n            </el-dialog>\r\n        </div>\r\n\r\n        <!--<label class=\"top-label\">Fundriaser Charts</label>\r\n        <div class=\"participants\">\r\n            <div class=\"row\">\r\n                <div class=\"col-12 col-lg-4 pl-0 center\" style=\"text-align:center\">\r\n                    <label class=\"font-weight-medium\" style=\"justify-content:center\">Fundraiser Goal chart:</label>\r\n                    <DoughnutChart v-bind:chartData=\"eventChartData\" v-bind:chartOptions=\"chartOptions\" :key=\"eventChartData.labels\" />\r\n                </div>\r\n                <div class=\"col-12 col-lg-4 pl-0 center\" style=\"text-align:center\" v-if=\"parseInt(event.participantsCount)>0\">\r\n                    <label class=\"font-weight-medium\" style=\"justify-content:center\">Seller totals chart:</label>\r\n                    <PieChart v-bind:chartData=\"participantsChartData\" v-bind:chartOptions=\"chartOptions\" :key=\"participantsChartData.labels\" />\r\n                </div>\r\n                <div class=\"col-12 col-lg-4 pl-0 center\" style=\"text-align:center\" v-if=\"parseInt(event.donationsCount)>0\">\r\n                    <label class=\"font-weight-medium\" style=\"justify-content:center\">Donator totals chart:</label>\r\n                    <PieChart v-bind:chartData=\"donatorsChartData\" v-bind:chartOptions=\"chartOptions\" :key=\"donatorsChartData.labels\" />\r\n                </div>\r\n            </div>\r\n        </div>-->\r\n    </div>\r\n</template>\r\n\r\n<script>\r\n\r\n    import axios from \"axios\"\r\n    import EventTimer from \"./EventTimer.vue\";\r\n    import { copyToClipboard } from \"../assets/js/app.js\";\r\n    //import PieChart from './PieChart.vue'\r\n    //import DoughnutChart from './DoughnutChart.vue'\r\n    import ImageUploader from \"./ImageUploader\"\r\n    import ChartDataLabels from 'chartjs-plugin-datalabels';\r\n    import router from \"../router\";\r\n    import { mapGetters } from \"vuex\"\r\n    import { initFacebookSdk, } from '@/services';\r\n    import _ from \"lodash\";        \r\n    import FileUploader from \"./FileUploader\"\r\n    \r\n    export default {\r\n        name: \"RunningEvent\",\r\n        components: { EventTimer, ImageUploader, FileUploader },\r\n        data() {\r\n            return {\r\n                smsUrl: '',\r\n                isMobile: false,\r\n                calculatedTotals: {\r\n                    totalSales: 0,\r\n                    eventSubtotal: 0,\r\n                    totalElgibleProfit: 0,\r\n                    shippingCosts:0,\r\n                    adminFee:0,\r\n                },\r\n                emailErrorMessage: '',\r\n                invPartVisible: false,\r\n                invPartVisibleSMS: false,\r\n                invPartInfoVisible: false,\r\n                eventBreakDown: false,\r\n                invitedParticipants: [{ counter: 0, email: '' }],\r\n                invitedParticipants2: [{ email: '', phone: '', invitestatus: '', organizername: '', createdate: '', storecode: ''}],\r\n                invitedParticipant: {\r\n                    email: '',\r\n                    phone: '',\r\n                    invitestatus: '',\r\n                    organizername: '',\r\n                    createdate: '',\r\n                    file:''\r\n                },\r\n                masterInviteUrl: '',\r\n                csvEmails: null,\r\n                file: null,\r\n                invDonatorVisible: false,\r\n                invitedDonators: [{ counter: 0, email: '' }],\r\n                event: {},\r\n                stores: {\r\n                    storeOwner: {}\r\n                },\r\n                eventorderdetails: {},\r\n                eventEdit: {\r\n                    imageCropData: {}\r\n                },                \r\n                loading: true,\r\n                editMode: false,\r\n                eventEditRules: {\r\n                    title: [\r\n                        { required: true, message: 'Title is required', trigger: 'change' }\r\n                    ],\r\n                    description: [\r\n                        { required: true, message: 'Description reason is required', trigger: 'change' }\r\n                    ]\r\n                },\r\n                emailValidRules: {\r\n                    email: [\r\n                        { required: true, type: 'email', message: 'Invalid email address', trigger: 'blur' }\r\n                    ]\r\n                },\r\n                phoneValidRules: {\r\n                    phone: [\r\n                        { required: true, type: 'string', pattern: /^\\(?\\d{3}\\)?[-\\s]?\\d{3}[-\\s]?\\d{4}$/g, message: 'A valid Phone Number is required', trigger: 'blur' }\r\n                    ],\r\n                },\r\n                profile: {\r\n                    email: '',\r\n                    firstName: '',\r\n                    lastName: '',\r\n                    imageSrc: '',\r\n                    imageCropData: {}\r\n                },\r\n                chartOptions: {\r\n                    responsive: true,\r\n                    animation: {\r\n                        duration:0\r\n                    },\r\n                    hover: {\r\n                        animationDiration:0\r\n                    },\r\n                    responsiveAnimationDuration:0,\r\n                    plugins: {\r\n                        ChartDataLabels:{\r\n                            labels: [\r\n                                {\r\n                                    render: 'label',\r\n                                    position: 'outside'\r\n                                },\r\n                                {\r\n                                    render: 'percentage'\r\n                                }\r\n                            ]\r\n                        }\r\n                    }\r\n                }\r\n            }\r\n        },\r\n        computed: {   \r\n            storeGoalData() {\r\n                if (!this.eventorderdetails || !Array.isArray(this.eventorderdetails)) return [];\r\n\r\n                console.log(\"Event Order Details:\", this.eventorderdetails);\r\n                console.log(\"Store Data from API:\", this.stores);\r\n\r\n                // Ensure we have stores before trying to access index 0\r\n                if (this.stores.length > 0 && this.stores[0].storeOwner) {\r\n                    console.log(\"First Store Owner Name:\", this.stores[0].storeOwner.name);\r\n                } else {\r\n                    console.log(\"No valid store owners found.\");\r\n                }\r\n\r\n                // Create a map for store target amounts and owners using `storeOwner.name`\r\n                const storeMap = {};\r\n                if (this.stores && Array.isArray(this.stores)) {\r\n                    this.stores.forEach(store => {\r\n                        storeMap[store.storeOwner.name.toLowerCase().trim()] = {\r\n                            targetAmount: parseFloat(store.targetAmount) || 0,\r\n                            owner: store.storeOwner && store.storeOwner.name ? store.storeOwner.name : \"No Owner\"\r\n                        };\r\n                    });\r\n                }\r\n\r\n                console.log(\"Store Data Map:\", storeMap);\r\n\r\n                // Group sales by seller name and calculate earnings\r\n                const salesMap = this.eventorderdetails.reduce((acc, order) => {\r\n                    const sellerName = order.seller ? order.seller.toLowerCase().trim() : \"unknown seller\";\r\n\r\n                    if (!acc[sellerName]) {\r\n                        acc[sellerName] = {\r\n                            seller: sellerName,\r\n                            amount: 0, // Total sales\r\n                            targetAmount: storeMap[sellerName] ? storeMap[sellerName].targetAmount : 0,\r\n                            owner: storeMap[sellerName] ? storeMap[sellerName].owner : \"No Owner\",\r\n                            earnedAmount: 0, // Total earnings\r\n                            netPopcornEarnings: 0, // New: Net Popcorn Earnings\r\n                            netDirectDonations: 0 // New: Net Direct Donations\r\n                        };\r\n                    }\r\n\r\n                    // Add order subtotal (total sales)\r\n                    acc[sellerName].amount += parseFloat(order.subTotal) || 0;\r\n\r\n                    // Extract earnings-related values\r\n                    const directDonationAmount = parseFloat(order.directDonationAmount) || 0;\r\n                    const directDonationFee = parseFloat(order.directDonationFee) || 0;\r\n                    const popcornSales = acc[sellerName].amount - directDonationAmount;\r\n\r\n                    // Calculate net earnings separately\r\n                    const netPopcornEarnings = popcornSales / 2; // 50% of popcorn sales\r\n                    const netDirectDonations = directDonationAmount - directDonationFee; // 90% of donations\r\n\r\n                    // Assign values\r\n                    acc[sellerName].netPopcornEarnings = netPopcornEarnings;\r\n                    acc[sellerName].netDirectDonations = netDirectDonations;\r\n                    acc[sellerName].earnedAmount = netPopcornEarnings + netDirectDonations; // Total earnings\r\n\r\n                    return acc;\r\n                }, {});\r\n\r\n                console.log(\"Final Store Sales & Earnings Map:\", salesMap);\r\n\r\n                // Convert to an array for looping in the template\r\n                return Object.values(salesMap).map(store => ({\r\n                    ...store,\r\n                    percentage: store.targetAmount > 0\r\n                        ? Math.min((store.amount / store.targetAmount) * 100, 100).toFixed(2)\r\n                        : 0,\r\n                    earnedAmount: store.earnedAmount.toFixed(2), // Store's total earnings\r\n                    netPopcornEarnings: store.netPopcornEarnings.toFixed(2), // Net Popcorn Earnings\r\n                    netDirectDonations: store.netDirectDonations.toFixed(2) // Net Direct Donations\r\n                }));\r\n            },\r\n            // Total Popcorn Sales (Net) - 50% of total popcorn sales\r\n            totalPopcornSalesNet() {\r\n                if (!this.eventorderdetails || !Array.isArray(this.eventorderdetails)) return 0;\r\n\r\n                return this.eventorderdetails.reduce((sum, order) => {\r\n                    const popcornSales = (parseFloat(order.subTotal) || 0) - (parseFloat(order.directDonationAmount) || 0);\r\n                    return sum + (popcornSales / 2); // 50% of popcorn sales\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Direct Donations (Net)** - Direct donations minus **10% fees** (always)\r\n            totalDirectDonationsNet() {\r\n                if (!this.eventorderdetails || !Array.isArray(this.eventorderdetails)) return 0;\r\n\r\n                return this.eventorderdetails.reduce((sum, order) => {\r\n                    let directDonation = parseFloat(order.directDonationAmount) || 0;\r\n                    const directDonationFee = directDonation * 0.10; // Always take 10%\r\n\r\n                    return sum + (directDonation - directDonationFee); // Net donation amount\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Net Earnings** = (Popcorn Earnings) + (Net Direct Donations)\r\n            totalNetEarnings() {\r\n                return (parseFloat(this.totalPopcornSalesNet) + parseFloat(this.totalDirectDonationsNet)).toFixed(2);\r\n            },\r\n            // 🟢 **Gross Sales** = Total of all orders\r\n            grossSales() {\r\n                if (!this.eventorderdetails || !Array.isArray(this.eventorderdetails)) return 0;\r\n\r\n                return this.eventorderdetails.reduce((sum, order) => {\r\n                    if (!order || typeof order !== \"object\") return sum; // Skip invalid orders\r\n\r\n                    const orderTotal = parseFloat(order.total) || 0; // Ensure total is a number\r\n                    return sum + orderTotal;\r\n                }, 0).toFixed(2);\r\n            },\r\n            // 🟢 **Total Net Sales** = Sum of all order subtotals (excluding shipping)\r\n            totalNetSales() {\r\n                if (!this.eventorderdetails || !Array.isArray(this.eventorderdetails)) return 0;\r\n\r\n                return this.eventorderdetails.reduce((sum, order) => {\r\n                    if (!order || typeof order !== \"object\") return sum; // Skip invalid orders\r\n\r\n                    const subTotal = parseFloat(order.subTotal) || 0; // Ensure subTotal is a number\r\n                    return sum + subTotal;\r\n                }, 0).toFixed(2);\r\n            },\r\n            //// 🟢 **Total Earned Profits** = Sum of all store earnings\r\n            //totalEarnedProfits() {\r\n            //    if (!this.participants || this.participants.length === 0) return 0;\r\n\r\n            //    return this.participants.reduce((sum, participant) => {\r\n            //        return sum + this.calculateEarningsPerStore(participant);\r\n            //    }, 0).toFixed(2);\r\n            //},\r\n            totalEarnedProfits() {\r\n                if (!this.stores || !Array.isArray(this.stores) || this.stores.length === 0) return \"0.00\";\r\n\r\n                return this.stores.reduce((sum, store) => {\r\n                    return sum + this.calculateEarningsPerStore(store);\r\n                }, 0).toFixed(2);\r\n            },\r\n            safeEventOrderDetails() {\r\n                return Array.isArray(this.eventorderdetails) ? this.eventorderdetails : [];\r\n            },\r\n            storePercentEl(subtotal, targetamount) {\r\n                const percentage1 = Math.trunc(((subtotal / 2) / targetamount) * 100);\r\n\r\n                return percentage1;\r\n            },\r\n            participants() {\r\n                let ps = [];\r\n                if (this.event.participants != null) {\r\n                    this.event.participants.split(',').forEach(p => {\r\n                        let items = p.split('_');\r\n                        ps.push({ name: items[0], targetAmount: items[1], amount: parseInt(items[2]) });\r\n                    });\r\n                }\r\n                //let ps1 = ps.sort((a, b) => (a.amount > b.amount) ? 1 : -1);      \r\n                let test = _.orderBy(ps, 'amount','desc');\r\n                \r\n                return test;\r\n            },\r\n            donators() {\r\n                let dn = [];\r\n                if (this.event.donators != null) {\r\n                    this.event.donators.split(',').forEach(p => {\r\n                        let items = p.split('_');\r\n                        dn.push({ name: items[0], amount: items[1] });\r\n                    });\r\n                }               \r\n                return dn;\r\n            },\r\n            donatorsOrders() {\r\n                let dn = [];\r\n                if (this.event.donatorsOrders != null) {\r\n                    this.event.donatorsOrders.split(',').forEach(p => {\r\n                        let items = p.split('_');\r\n                        dn.push({ name: items[0], amount: items[1], ordernum: items[2], orderdate: items[3], participantname: items[4] });\r\n                    });\r\n                }\r\n                return dn;\r\n            },\r\n            eventChartData() {\r\n                let datatemplate = {\r\n                    labels: [], datasets: [{ label:'Fundraiser Totals', \r\n                        data: [], backgroundColor: []\r\n                    }]\r\n                };\r\n                if (this.event != null) {\r\n                    // Calculate percentage of fundraiser progress\r\n                    let percentage = (this.totalSales * 100) / this.event.targetAmount;\r\n\r\n                    // Event Goal Data\r\n                    datatemplate.labels.push('Event Goal: $' + parseFloat(this.event.targetAmount).toFixed(2));\r\n                    datatemplate.datasets[0].data.push(100 - Math.round(percentage));\r\n                    datatemplate.datasets[0].backgroundColor.push('#E46651');\r\n\r\n                    // Eligible Payout Amount (Updated)\r\n                    datatemplate.labels.push('Eligible Payout Amount: $' + parseFloat(this.totalStoresEarned).toFixed(2));\r\n                    datatemplate.datasets[0].data.push(Math.round(percentage));\r\n                    datatemplate.datasets[0].backgroundColor.push('#41B883');\r\n                }\r\n                return datatemplate;\r\n            },\r\n            participantsChartData() {\r\n                let datatemplate = {\r\n                    labels: [], datasets: [{\r\n                        data: [], backgroundColor: [] }]\r\n                };\r\n                if (this.event.participants != null) {\r\n                    this.event.participants.split(',').forEach(p => {\r\n                        if (p != null) {\r\n                            let items = p.split('_');\r\n                            if (items != null) {\r\n                                var letters = '0123456789ABCDEF';\r\n                                var color = '#';\r\n                                for (var i = 0; i < 6; i++) {\r\n                                    color += letters[Math.floor(Math.random() * 16)];\r\n                                }\r\n                                datatemplate.labels.push(items[0].trim());\r\n                                datatemplate.datasets[0].data.push(items[2]);\r\n                                datatemplate.datasets[0].backgroundColor.push(color);\r\n                            }\r\n                        }\r\n                    });\r\n                }\r\n                return datatemplate;                                \r\n            },\r\n            donatorsChartData() {\r\n                let datatemplate = {\r\n                    labels: [], datasets: [{\r\n                        data: [], backgroundColor: []\r\n                    }]\r\n                };\r\n                if (this.event.donators != null) {\r\n                    this.event.donators.split(',').forEach(p => {\r\n                        if (p != null) {\r\n                            let items = p.split('_');\r\n                            if (items != null) {\r\n                                var letters = '0123456789ABCDEF';\r\n                                var color = '#';\r\n                                for (var i = 0; i < 6; i++) {\r\n                                    color += letters[Math.floor(Math.random() * 16)];\r\n                                }\r\n                                datatemplate.labels.push(items[0].trim());\r\n                                datatemplate.datasets[0].data.push(items[1].toString());\r\n                                datatemplate.datasets[0].backgroundColor.push(color);\r\n                            }\r\n                        }\r\n                    });\r\n                }\r\n\r\n                return datatemplate;\r\n            },\r\n            ...mapGetters([\r\n                'currentUserDetail'\r\n            ]),\r\n            dialogWidth() {\r\n                if (screen.width <= 576)\r\n                    return \"100%\";\r\n                else return \"80%\";\r\n            },\r\n            dialogTop() {\r\n                if (screen.width <= 576)\r\n                    return \"0\";\r\n                else return \"15vh\";\r\n            }\r\n        },\r\n        created() {\r\n            axios.get('/api/events/running/').then(response => {\r\n                this.loading = false;\r\n                this.event = response.data;\r\n                this.event.storeLink = \"/store/open/\" + this.event.storeId;\r\n                this.eventEdit.id = response.data.id;\r\n                this.eventEdit.title = this.event.title;\r\n                this.eventEdit.code = this.event.code;\r\n                this.eventEdit.description = this.event.description;\r\n                this.calcTotals();\r\n\r\n                axios.get('/api/participants/getparticipants?id=' + response.data.id).then(response => {\r\n                    this.invitedParticipants2 = response.data;\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n\r\n                axios.get('/api/participants/getmasterinvitecodeurl?eventId=' + this.eventEdit.id).then(response => {\r\n                    this.masterInviteUrl = response.data;\r\n                    this.loading = false;\r\n                    this.smsUrl = \"sms:?&body=\" + encodeURI('Hi, please checkout new Colorado Jack Giveback fundraiser, click the link below to setup your online store: ' + '\\n' + this.event.title + ' ' + this.masterInviteUrl);\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n\r\n                axios.get('/api/organizers/eventorderdetails?eventId=' + response.data.id).then(response => {\r\n                    this.eventorderdetails = response.data;\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });             \r\n\r\n                axios.get('/api/stores/getPublicStoresByEvent/' + this.event.code).then(response => {\r\n                    this.stores = response.data;\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n\r\n            }).catch((error) => {\r\n                this.loading = false;\r\n            });\r\n            this.profile.email = this.currentUserDetail.email;\r\n            this.profile.firstName = this.currentUserDetail.firstName;\r\n            this.profile.lastName = this.currentUserDetail.lastName;\r\n            this.profile.imageSrc = this.currentUserDetail.imageSrc;\r\n            initFacebookSdk();\r\n            this.isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);\r\n        },\r\n        methods: {\r\n            calculateStoreGoalPercentage(amount, targetAmount) {\r\n                if (!targetAmount || targetAmount <= 0) return 0; // Prevent division by zero\r\n                let percentage = (parseFloat(amount) / parseFloat(targetAmount)) * 100;\r\n                return Math.min(percentage, 100).toFixed(2); // Ensure it doesn't exceed 100%\r\n            },\r\n            calculateEarningsPerStore(store) {\r\n                if (!store || typeof store !== \"object\") return 0;\r\n\r\n                // Find all orders that belong to this store\r\n                const storeOrders = this.eventorderdetails.filter(order =>\r\n                    order.title.toLowerCase().trim() === store.title.toLowerCase().trim()\r\n                );\r\n                console.log('store owner:' + store )\r\n\r\n                if (storeOrders.length === 0) return 0; // No matching orders\r\n\r\n                // Aggregate order earnings\r\n                const subTotal = storeOrders.reduce((sum, order) => sum + (parseFloat(order.subTotal) || 0), 0);\r\n                let directDonationAmount = storeOrders.reduce((sum, order) => sum + (parseFloat(order.directDonationAmount) || 0), 0);\r\n                const directDonationFees = storeOrders.reduce((sum, order) => sum + (parseFloat(order.directDonationFee) || 0), 0);\r\n\r\n                // Popcorn Sales (Subtotal - Direct Donations)\r\n                const popcornAmount = subTotal - directDonationAmount;\r\n\r\n                // Popcorn Earnings (50% of Popcorn Sales)\r\n                const popcornEarnings = popcornAmount / 2;\r\n\r\n                // **Deduct direct donation fees** to get Net Direct Donations\r\n                const netDirectDonations = directDonationAmount - directDonationFees;\r\n\r\n                // Final Store Earnings Calculation\r\n                const totalEarnings = popcornEarnings + netDirectDonations;\r\n\r\n                console.log(`Store Earnings Calculation: Popcorn (${popcornEarnings.toFixed(2)}) + Net Donations (${netDirectDonations.toFixed(2)}) = ${totalEarnings.toFixed(2)}`);\r\n\r\n                return totalEarnings;\r\n            },           \r\n            openSalesBreakdown() {\r\n                if (!Array.isArray(this.eventorderdetails) || this.eventorderdetails.length === 0) {\r\n                    console.error(\"No sales data available!\");\r\n                    return;\r\n                }\r\n                this.showSalesBreakdown = true;\r\n            },\r\n            formatDate(_, __, date) {\r\n                if (!date) return \"\";\r\n                const d = new Date(date);\r\n                return isNaN(d.getTime()) ? \"\" : d.toLocaleDateString(\"en-US\", { month: \"short\", day: \"numeric\", year: \"numeric\" });\r\n            },\r\n            calculatePopcornAmount(row) {\r\n                if (!row || typeof row !== \"object\") return \"$0.00\";\r\n                const subTotal = parseFloat(row.subTotal) || 0;\r\n                const directDonationAmount = parseFloat(row.directDonationAmount) || 0;\r\n                return this.formatCurrency(null, null, subTotal - directDonationAmount);\r\n            },\r\n            calculateEarnings(row) {\r\n                if (!row || typeof row !== \"object\") return 0;\r\n\r\n                // Ensure values are valid numbers\r\n                const subTotal = parseFloat(row.subTotal) || 0;\r\n                let directDonationAmount = parseFloat(row.directDonationAmount) || 0;\r\n                const directDonationFee = parseFloat(row.directDonationFee) || 0; // New column\r\n\r\n                // 1. Calculate Popcorn Earnings (50% of Popcorn Sales)\r\n                const popcornEarnings = (subTotal - directDonationAmount) / 2;\r\n\r\n                // 2. Deduct 10% from Direct Donations\r\n                const netDirectDonations = directDonationAmount - directDonationFee;\r\n\r\n                // 3. Final Fundraiser Earnings Calculation\r\n                const totalEarnings = popcornEarnings + netDirectDonations;\r\n\r\n                console.log(`Order Earnings Calculation: Popcorn (${popcornEarnings}) + Net Donations (${netDirectDonations}) = ${totalEarnings}`);\r\n\r\n                // Ensure a valid currency format\r\n                return isNaN(totalEarnings) ? 0 : totalEarnings;\r\n            },\r\n            formatCurrency(_, __, value) {\r\n                if (value == null || isNaN(value)) return \"$0.00\";\r\n                return new Intl.NumberFormat(\"en-US\", {\r\n                    style: \"currency\",\r\n                    currency: \"USD\"\r\n                }).format(value);\r\n            },\r\n            downloadCSV() {\r\n                if (!Array.isArray(this.eventorderdetails) || this.eventorderdetails.length === 0) {\r\n                    console.error(\"No event order details available!\");\r\n                    return;\r\n                }\r\n\r\n                console.log(\"Downloading CSV...\");\r\n\r\n                const headers = [\r\n                    \"ORDER DATE\", \"ORDER NUMBER\", \"BUYER NAME\", \"SELLER NAME\",\r\n                    \"POPCORN SALES\", \"DIRECT DONATION SALES\", \"DIRECT DONATION FEE\",\r\n                    \"SHIPPING FEES\", \"SUBTOTAL\", \"ORDER TOTAL\", \"ORDER EARNINGS\"\r\n                ];\r\n\r\n                const csvRows = this.eventorderdetails.map(row => {\r\n                    console.log(\"Row data:\", row); // Debug each row\r\n\r\n                    return [\r\n                        this.formatDate(null, null, row.createdAt),\r\n                        row.number,\r\n                        row.buyerName,\r\n                        row.seller,\r\n                        this.calculatePopcornAmount(row),\r\n                        this.formatCurrency(null, null, row.directDonationAmount),\r\n                        this.formatCurrency(null, null, row.directDonationFee),\r\n                        this.formatCurrency(null, null, row.shippingFee),\r\n                        this.formatCurrency(null, null, row.subTotal),\r\n                        this.formatCurrency(null, null, row.total),\r\n                        this.calculateEarnings(row)\r\n                    ].map(value => {\r\n                        if (value == null) return \"\"; // Prevent null errors\r\n                        return `\"${String(value).replace(/\"/g, '\"\"')}\"`; // Escape quotes\r\n                    }).join(\",\");\r\n                });\r\n\r\n                const csvContent = [headers.join(\",\"), ...csvRows].join(\"\\n\");\r\n\r\n                console.log(\"Generated CSV:\", csvContent); // Debug the final CSV\r\n\r\n                // Create and trigger a download link\r\n                const blob = new Blob([csvContent], { type: \"text/csv;charset=utf-8;\" });\r\n                const link = document.createElement(\"a\");\r\n                link.href = URL.createObjectURL(blob);\r\n                link.setAttribute(\"download\", \"fundraiser_sales.csv\");\r\n                document.body.appendChild(link);\r\n                link.click();\r\n                document.body.removeChild(link);\r\n            },    \r\n            safeCalculateEarnings(row) {\r\n                const earnings = this.calculateEarnings(row);\r\n                return isNaN(earnings) ? \"0.00\" : earnings.toFixed(2); // Ensure valid earnings\r\n            },\r\n            extractRawFeeDeducted(row) {\r\n                if (!row || typeof row !== \"object\") return \"0.00\";\r\n\r\n                // Convert formatted string back to number (remove `$` and `,`)\r\n                const rawFee = this.calculateFeesDeducted(row).replace(/[$,]/g, \"\");\r\n\r\n                return rawFee; // Return raw number for CSV\r\n            },      \r\n            calcTotals() {\r\n                this.calculatedTotals.totalSales = this.event.organizerStoreTotal;\r\n                this.calculatedTotals.shippingCosts = parseFloat(this.event.organizerStoreTotal - this.event.organizerStoreSubTotal).toFixed(2);\r\n                this.calculatedTotals.eventSubtotal = parseFloat(this.event.organizerStoreSubTotal - (this.event.organizerStoreTotal * .035)).toFixed(2);\r\n                this.calculatedTotals.adminFee = parseFloat(this.event.organizerStoreTotal * .035).toFixed(2);\r\n                this.calculatedTotals.totalElgibleProfit = parseFloat((this.event.organizerStoreSubTotal - (this.event.organizerStoreTotal * .035)) / 2).toFixed(2);\r\n            },\r\n            async setSelectedFile(file) {\r\n                if (file.raw.type == 'text/csv' || file.raw.type == 'text/plain') {\r\n                    const resp1 = await this.readFile(file);\r\n                    this.csvEmails = resp1.split(\",\");\r\n                    this.inviteParticipantsCSV(this.csvEmails);\r\n                }\r\n                else {\r\n                    this.$message({\r\n                        message: 'Invalid file type! Please choose a .txt or csv file type.',\r\n                        type: 'warning'\r\n                    });\r\n                }\r\n            },\r\n            readFile(file) {\r\n                return new Promise((resolve, reject) => {\r\n                    let fr = new FileReader();\r\n                    fr.onload = x => resolve(fr.result);\r\n                    fr.onerrror = reject;\r\n                    fr.readAsText(file.raw) // or readAsText(file) to get raw content\r\n                })\r\n            },\r\n            validateForm(form) {\r\n                let isValid = false;\r\n                this.$refs[form].validate((valid) => {\r\n                    isValid = valid;\r\n                });\r\n                return isValid;\r\n            },           \r\n            loadparticipants() {\r\n                axios.get('/api/participants/getparticipants?id=' + this.event.id).then(response => {\r\n                    this.invitedParticipants2 = response.data;\r\n                    this.loading = false;\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            copyCode() {\r\n                copyToClipboard(\"eventCode\");\r\n            },\r\n            setSelectedImage(file) {\r\n                this.file = file;\r\n            },\r\n            setCropData(data) {\r\n                this.eventEdit.imageCropData = data;\r\n            },\r\n\r\n            addInvitedDonator() {\r\n                let last = this.invitedDonators[this.invitedDonators.length - 1];\r\n                if (last.email.trim().length > 0)\r\n                    this.invitedDonators.push({ counter: this.invitedDonators.length, email: '' });\r\n            },\r\n            removeDonator(p) {\r\n                for (var i = 0; i < this.invitedDonators.length; i++) {\r\n                    if (this.invitedDonators[i] === p) {\r\n                        this.invitedDonators.splice(i, 1);\r\n                        break;\r\n                    }\r\n                }\r\n            },\r\n            inviteDonators() {\r\n                this.loading = true;\r\n                var emails = [];\r\n                this.invitedDonators.forEach(p => {\r\n                    if (p != '')\r\n                        emails.push(p.email);\r\n                });\r\n\r\n                axios.post('/api/participants/InviteDonator/', { storeId: this.event.storeId, emails: emails }).then(response => {\r\n                    this.loading = false;\r\n                    this.invDonatorVisible = false;\r\n                    this.$message({\r\n                        message: 'Buyers have been sent an email and invited to view your store!',\r\n                        type: 'success'\r\n                    });\r\n\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            addInvitedParticipant() {\r\n                //let last = this.invitedParticipants2[this.invitedParticipants2.length - 1];\r\n                //if (last.email.trim().length > 0)\r\n                //    this.invitedParticipants2.push({ counter: this.invitedParticipants2.length, email: '' });\r\n               \r\n                //let last = this.invitedParticipants2[this.invitedParticipants2.length - 1];\r\n                //if (last.email.trim().length > 0)\r\n                //    this.invitedParticipants2.push({ email: '', invitestatus: '', organizername: '', emailcreatedate: '' });\r\n            },\r\n            removeParticipant(p) {\r\n                for (var i = 0; i < this.invitedParticipants2.length; i++) {\r\n                    if (this.invitedParticipants2[i] === p) {\r\n                        this.invitedParticipants2.splice(i, 1);\r\n                        break;\r\n                    }\r\n                }\r\n            },\r\n            inviteParticipantsCSV(emails) {\r\n                this.loading = true;\r\n                axios.post('/api/participants/invite/', { eventId: this.event.id, emails: emails }).then(response => {\r\n                    this.loading = false;\r\n                    this.invPartVisible = false;\r\n                    this.$message({\r\n                        message: 'Participant invited to the event.',\r\n                        type: 'success'\r\n                    });\r\n                    this.invitedParticipant.email = '';\r\n                    //reload particpant view\r\n                    this.loadparticipants();\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            inviteParticipants() {\r\n                if (this.validateForm('emailValid') === true) {\r\n                    this.loading = true;\r\n                    var emails = [];\r\n                    if (this.invitedParticipant.email != this.profile.email) {\r\n                        emails.push(this.invitedParticipant.email);\r\n                        //this.invitedParticipants2.forEach(p => {\r\n                        //    if (p != '')\r\n                        //        emails.push(p.email);\r\n                        //});\r\n\r\n                        axios.post('/api/participants/invite/', { eventId: this.event.id, emails: emails }).then(response => {\r\n                            this.loading = false;\r\n                            this.invPartVisible = false;\r\n                            this.$message({\r\n                                message: 'Participant invited to the event.',\r\n                                type: 'success'\r\n                            });\r\n                            this.invitedParticipant.email = '';\r\n                            //reload particpant view\r\n                            this.loadparticipants();\r\n                        }).catch((error) => {\r\n                            this.emailErrorMessage = error.response.data;\r\n                            this.loading = false;\r\n                        });\r\n                    }\r\n                    else {\r\n                        this.emailErrorMessage = \"Fundraising Organizer Email not allowed to be added to Participant Invite list!\";\r\n                        this.loading = false;\r\n                    }\r\n                   \r\n                }                \r\n            },\r\n            inviteParticipantsSMS() {\r\n                if (this.validateForm('phoneValid') === true) {\r\n                    this.loading = true;\r\n                    var phones = [];\r\n                    if (this.invitedParticipant.phone != this.profile.phone) {\r\n                        phones.push(this.invitedParticipant.phone);\r\n\r\n                        axios.post('/api/participants/inviteSMS/', { eventId: this.event.id, phones: phones }).then(response => {\r\n                            this.loading = false;\r\n                            this.invPartVisibleSMS = false;\r\n                            this.$message({\r\n                                message: 'Participant invited via sms to the event.',\r\n                                type: 'success'\r\n                            });\r\n                            //reload particpant view\r\n                            this.loadparticipants();\r\n                        }).catch((error) => {\r\n                            this.emailErrorMessage = error.response.data;\r\n                            this.loading = false;\r\n                        });\r\n                    }\r\n                    else {\r\n                        this.emailErrorMessage = \"Fundraising Organizer phone not allowed to be added to Participant Invite list!\";\r\n                        this.loading = false;\r\n                    }\r\n\r\n                }\r\n            },\r\n            resendInvite(inviteRec) {\r\n                this.loading = true;\r\n                var emails = [];\r\n                var phones = [];\r\n\r\n                if (inviteRec.phone != null) {\r\n                    phones.push(inviteRec.phone);\r\n                    axios.post('/api/participants/ResendInviteSMS/', { eventId: this.event.id, phones: phones }).then(response => {\r\n\r\n                        this.invPartVisibleSMS = false;\r\n                        this.$message({\r\n                            message: 'Participant resent SMS invite to the event.',\r\n                            type: 'success'\r\n                        });\r\n\r\n                    }).catch((error) => {\r\n                        this.loading = false;\r\n                    });\r\n                }\r\n                else {\r\n                    emails.push(inviteRec.email);  \r\n                    axios.post('/api/participants/ResendInvite/', { eventId: this.event.id, emails: emails }).then(response => {\r\n\r\n                        this.invPartVisible = false;\r\n                        this.$message({\r\n                            message: 'Participant resent email invite to the event.',\r\n                            type: 'success'\r\n                        });\r\n\r\n                    }).catch((error) => {\r\n                        this.loading = false;\r\n                    });\r\n                }\r\n                this.loading = false;\r\n            },\r\n            confirmStopEvent() {\r\n                this.$confirm('You will not be able to run the event again. Continue?', 'Warning', {\r\n                    confirmButtonText: 'OK',\r\n                    cancelButtonText: 'Cancel',\r\n                    type: 'warning'\r\n                }).then(() => {\r\n                    this.stopEvent();\r\n                });\r\n            },\r\n            stopEvent() {\r\n                this.loading = true;\r\n                axios.post('/api/events/stop/' + this.event.id).then(response => {\r\n                    this.loading = false;\r\n                    this.$message({\r\n                        message: 'The event stopped successfully.',\r\n                        type: 'success'\r\n                    });\r\n\r\n                    router.push('/event/detail/' + this.event.id);\r\n\r\n                }).catch((error) => {\r\n                    this.loading = false;\r\n                });\r\n            },\r\n            saveChanges() {\r\n                this.$refs[\"eventEditForm\"].validate((valid) => {\r\n                    if (valid) {\r\n                        this.loading = true;\r\n                        var formData = new FormData();\r\n                        if (this.file != null) {\r\n                            formData.append(\"file\", this.file.raw);\r\n                            for (const [key, value] of Object.entries(this.eventEdit.imageCropData)) {\r\n                                formData.append(\"imageCropData.\" + key, value);\r\n                            }\r\n                        }\r\n\r\n                        for (const [key, value] of Object.entries(this.eventEdit)) {\r\n                            if (key === \"imageCropData\")\r\n                                continue;\r\n                            formData.append(key, value);\r\n                        }\r\n\r\n                        axios.put('/api/events', formData, {\r\n                            headers: {\r\n                                'Content-Type': 'multipart/form-data'\r\n                            }\r\n                        }).then(response => {\r\n                            this.loading = false;\r\n                            this.editMode = false;\r\n                            this.event.imageSrc = response.data;\r\n                            this.event.title = this.eventEdit.title;\r\n                            this.event.description = this.eventEdit.description;\r\n                            this.$message({\r\n                                message: 'Changes saved to the event.',\r\n                                type: 'success'\r\n                            });\r\n                        }).catch((error) => {\r\n                            this.loading = false;\r\n                        });\r\n                    }\r\n                });              \r\n            }\r\n        }\r\n    }\r\n</script>\r\n\r\n<style scoped>\r\n    img {\r\n        height: 300px;\r\n        object-fit: cover;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 15px;\r\n        background-color: #f9f9f9;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer ul {\r\n        padding-left: 20px;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer code {\r\n        background: #eee;\r\n        padding: 3px 6px;\r\n        border-radius: 5px;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer ul {\r\n        list-style-type: disc; /* Ensures bullets are shown */\r\n        margin-left: 20px; /* Adds left indentation */\r\n        padding-left: 20px;\r\n    }\r\n\r\n    .fundraiser-earnings-explainer li {\r\n        display: list-item; /* Ensures each <li> behaves as a block */\r\n        margin-bottom: 5px; /* Adds spacing between items */\r\n    }\r\n\r\n    .participants, .donators {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 20px;\r\n        min-height: 370px;\r\n    }\r\n    .sellers {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 20px;\r\n    }\r\n\r\n    .top-label {\r\n        position: relative;\r\n        top: 22px;\r\n        background: #fff;\r\n        left: 15px;\r\n        font-weight: normal;\r\n        padding: 0 5px;\r\n        font-size:large;\r\n    }\r\n    .count {\r\n        top: 25px;\r\n        left: 15px;\r\n    }\r\n    .title {\r\n        border: 1px solid #ccc;\r\n        border-radius: 10px;\r\n        padding: 20px;\r\n        /*min-height: 250px;*/\r\n        flex-direction:inherit;\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 370px) {\r\n        h5 {\r\n            font-size: 1.0rem;\r\n        }\r\n        h6 {\r\n            font-size: .80rem;\r\n            font-weight:normal;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Small devices (landscape phones, 544px and up) */\r\n    @media (min-width: 544px) {        \r\n        h5 {\r\n            font-size: 1.00rem;\r\n        }\r\n        h6 {\r\n            font-size: .90rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Medium devices (tablets, 768px and up) The navbar toggle appears at this breakpoint */\r\n    @media (min-width: 768px) {        \r\n        h5 {\r\n            font-size: 1.25rem;\r\n        }\r\n        h6 {\r\n            font-size: .95rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }    \r\n\r\n    /* Large devices (desktops, 992px and up) */\r\n    @media (min-width: 992px) {\r\n        h5 {\r\n            font-size: 1.5rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.0rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* Extra large devices (large desktops, 1200px and up) */\r\n    @media (min-width: 1200px) {\r\n        h5 {\r\n            font-size: 1.75rem;\r\n        }\r\n\r\n        h6 {\r\n            font-size: 1.25rem;\r\n        }\r\n        /*1rem = 16px*/\r\n    }\r\n\r\n    /* General container for sellers */\r\n    .sellers-container {\r\n        font-size: 14px;\r\n    }\r\n\r\n    /* Make headers and totals row smaller */\r\n    .sellers-header h6,\r\n    .totals-row h6 {\r\n        font-size: 12px;\r\n        font-weight: bold;\r\n        white-space: nowrap; /* Prevent text wrapping */\r\n    }\r\n\r\n    /* Reduce spacing on smaller screens */\r\n    .seller-row {\r\n        font-size: 12px;\r\n        padding: 5px 0;\r\n    }\r\n\r\n    .seller-name h6 {\r\n        font-size: 13px;\r\n        font-weight: bold;\r\n    }\r\n\r\n    /* Make the progress bar smaller */\r\n    .el-progress {\r\n        max-width: 100%;\r\n    }\r\n\r\n    /* Responsive Design: Smaller font & stacked layout */\r\n    @media (max-width: 768px) {\r\n        .sellers-header h6{\r\n            font-size: 4px;\r\n        }\r\n        .totals-row h6,\r\n        .seller-row h6 {\r\n            font-size: 6px;\r\n        }\r\n\r\n        /* Stack columns */\r\n        .seller-row, .totals-row {\r\n            flex-wrap: wrap;\r\n        }\r\n\r\n        /* Reduce the progress bar size */\r\n        .el-progress {\r\n            width: 100%;\r\n        }\r\n\r\n        /* Adjust column widths for better fit */\r\n        .col-4 {\r\n            width: 70%;\r\n            text-align: center;\r\n            margin-bottom: 5px;\r\n        }\r\n\r\n        .col-3, .col-1 {\r\n            width: 20%;\r\n            text-align: center;\r\n            margin-bottom: 5px;\r\n        }\r\n    }\r\n\r\n    \r\n</style>","import { render } from \"./RunningEvent.vue?vue&type=template&id=410da691&scoped=true\"\nimport script from \"./RunningEvent.vue?vue&type=script&lang=js\"\nexport * from \"./RunningEvent.vue?vue&type=script&lang=js\"\n\nimport \"./RunningEvent.vue?vue&type=style&index=0&id=410da691&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-410da691\"\n\nexport default script"],"sourceRoot":""}