Mountain Report. The 250-kilometer Sundays River rises on the southern slope of the 2504-meter-high Kompasberg in the Sneeubergen, the highest mountain in the former Cape Province. About. Please upgrade your browser or use a different browser to improve your experience. Found a great deal or code? Sunday River Golf Club. You can find additional information about Sunday River Black Friday sale page on their official website - sundayriver.com. Tickets may be purchased anytime, including day-of-arrival, as long as inventory is available. Bethel Area. As no active threats were reported recently by users, shop.sundayriver.com is SAFE to browse. High quality Sunday River gifts and merchandise. Full view. PLUS get exclusive access to member only offers . To earn Boyne Rewards points, log-in with your BoyneRewards.com username & password. Today's Sunday River Offers. Shop our range of T-Shirts, Tanks, Hoodies, Dresses, and more. This app has it! It’s great. This video is unavailable. Please upgrade your browser or use a different browser to improve your experience. About Sunday River. A 3,200 foot long T-Bar served two intermediate slopes, while a rope tow was constructed on a smaller novice slope. For its third season, Sunday River expanded to the top of the ridge as it opened the Locke Mountain area. Events. Find your way around Sunday River's eight peaks in winter and summer. Sunday River offers amazing Black Friday Sales and deals every year. Events. !paymentDetails.length" :allow-row-selection="false" break-width="large" :headers="paymentTableHeaders" :items="paymentDetails"/>
Product total with deposit: ${{(totalPaymentPrice + totalDeposit).toFixed(2)}}
', created() { this.dates = window.datesArray this.paymentPrices = window.priceArray this.paymentPlanProductIds = window.productArray this.modalDescription = window.modalDescription this.widgetDescription = window.widgetDescription this.buildPaymentSchedule() }, computed: { productId() { return this.$store.getters['products/selectedProduct'].Id }, selectedAttributeValueIds() { return this.selectedAttributes .filter(function (attribute) { return !attribute.IsDisabled }) .map(function (obj) { return obj.SelectedValueId; }); }, selectedAttributes() { return this.$store.getters['products/selectedProductAttributes'] }, numberOfPayments() { return this.dates.length }, isPaymentPlanProduct() { let _this = this let foundProductId = this.paymentPlanProductIds.find(function (pid) { return pid === _this.productId; }); if (foundProductId){ return true } else { return false } }, }, methods: { buildPaymentSchedule() { this.paymentDetails = [] let paymentPriceRecord = null this.totalPaymentPrice = 0 this.totalDeposit = 0 //First we must determine which of the selected attributes have payment prices and calculate a total payment price for them let _this = this this.selectedAttributeValueIds.forEach(function (attributeId, index) { paymentPriceRecord = null paymentPriceRecord = _this.paymentPrices.filter(p => { return p.id.toString() === attributeId }) if (paymentPriceRecord && paymentPriceRecord.length > 0) { _this.totalPaymentPrice += paymentPriceRecord[0].paymentPrice _this.totalDeposit += paymentPriceRecord[0].deposit } }) if (_this.totalPaymentPrice > 0) { //Determine monthly payment let thisPayment = +(_this.totalPaymentPrice / _this.dates.length) _this.monthlyPayment = Math.floor(thisPayment * 100) / 100 //Determine if there is a remainder amount _this.paymentRemainder = +(_this.totalPaymentPrice - (_this.monthlyPayment * _this.dates.length)).toFixed(2) //Then we create payment record for each configured date _this.dates.forEach(function (paymentDate, index) { if (index === _this.dates.length - 1 && _this.paymentRemainder > 0) { let lastPayment = _this.monthlyPayment + _this.paymentRemainder _this.paymentDetails.push({ date: paymentDate, amount: `$${lastPayment.toFixed(2)}` }) } else { _this.paymentDetails.push({ date: paymentDate, amount: `$${_this.monthlyPayment.toFixed(2)}` }) } }) //Add a total amount row _this.paymentDetails.push({ date: 'TOTAL', amount: `$${_this.totalPaymentPrice.toFixed(2)}` }) } }, }, watch: { selectedAttributeValueIds: { immediate: true, deep: false, handler(newValue, oldValue) { this.buildPaymentSchedule() }, }, } }) // ]]>. [CDATA[ Vue.component('payment-details-schedule', { data: function () { return { monthlyPayment: 0, paymentTableHeaders: [ { text: 'Date', value: 'Date', align: 'center' }, { text: 'Amount', value: 'Amount', align: 'center' }, ], processing: false, showModal: false, paymentPlanProductIds: [], dates: null, paymentPrices: [], paymentDetails: [], paymentRemainder: 0, modalDescription: null, widgetDescription: null, totalPaymentPrice: 0, totalDeposit: 0 } }, template: '

Your remaining balance will be billed in 4 payments of ${{ monthlyPayment.toFixed(2) }}.

{{widgetDescription}}
View Payment Schedule