1"use strict"; 2(self["webpackChunkapp"] = self["webpackChunkapp"] || []).push([["src_app_pages_checkout_checkout_module_ts"],{ 3 4/***/ 3303: 5/*!***********************************************************!*\ 6 !*** ./src/app/pages/checkout/checkout-routing.module.ts ***! 7 \***********************************************************/ 8/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 9 10__webpack_require__.r(__webpack_exports__); 11/* harmony export */ __webpack_require__.d(__webpack_exports__, { 12/* harmony export */ "CheckoutPageRoutingModule": () => (/* binding */ CheckoutPageRoutingModule) 13/* harmony export */ }); 14/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ 4929); 15/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @angular/core */ 3184); 16/* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/router */ 2816); 17/* harmony import */ var _checkout_page__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./checkout.page */ 4300); 18 19 20 21 22const routes = [ 23 { 24 path: '', 25 component: _checkout_page__WEBPACK_IMPORTED_MODULE_0__.CheckoutPage 26 } 27]; 28let CheckoutPageRoutingModule = class CheckoutPageRoutingModule { 29}; 30CheckoutPageRoutingModule = (0,tslib__WEBPACK_IMPORTED_MODULE_1__.__decorate)([ 31 (0,_angular_core__WEBPACK_IMPORTED_MODULE_2__.NgModule)({ 32 imports: [_angular_router__WEBPACK_IMPORTED_MODULE_3__.RouterModule.forChild(routes)], 33 exports: [_angular_router__WEBPACK_IMPORTED_MODULE_3__.RouterModule], 34 }) 35], CheckoutPageRoutingModule); 36 37 38 39/***/ }), 40 41/***/ 8810: 42/*!***************************************************!*\ 43 !*** ./src/app/pages/checkout/checkout.module.ts ***! 44 \***************************************************/ 45/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 46 47__webpack_require__.r(__webpack_exports__); 48/* harmony export */ __webpack_require__.d(__webpack_exports__, { 49/* harmony export */ "CheckoutPageModule": () => (/* binding */ CheckoutPageModule) 50/* harmony export */ }); 51/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! tslib */ 4929); 52/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @angular/core */ 3184); 53/* harmony import */ var _angular_common__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @angular/common */ 6362); 54/* harmony import */ var _angular_forms__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/forms */ 587); 55/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @ionic/angular */ 3819); 56/* harmony import */ var _checkout_routing_module__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./checkout-routing.module */ 3303); 57/* harmony import */ var _checkout_page__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./checkout.page */ 4300); 58 59 60 61 62 63 64 65let CheckoutPageModule = class CheckoutPageModule { 66}; 67CheckoutPageModule = (0,tslib__WEBPACK_IMPORTED_MODULE_2__.__decorate)([ 68 (0,_angular_core__WEBPACK_IMPORTED_MODULE_3__.NgModule)({ 69 imports: [ 70 _angular_common__WEBPACK_IMPORTED_MODULE_4__.CommonModule, 71 _angular_forms__WEBPACK_IMPORTED_MODULE_5__.FormsModule, 72 _ionic_angular__WEBPACK_IMPORTED_MODULE_6__.IonicModule, 73 _checkout_routing_module__WEBPACK_IMPORTED_MODULE_0__.CheckoutPageRoutingModule 74 ], 75 declarations: [_checkout_page__WEBPACK_IMPORTED_MODULE_1__.CheckoutPage] 76 }) 77], CheckoutPageModule); 78 79 80 81/***/ }), 82 83/***/ 4300: 84/*!*************************************************!*\ 85 !*** ./src/app/pages/checkout/checkout.page.ts ***! 86 \*************************************************/ 87/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { 88 89__webpack_require__.r(__webpack_exports__); 90/* harmony export */ __webpack_require__.d(__webpack_exports__, { 91/* harmony export */ "CheckoutPage": () => (/* binding */ CheckoutPage) 92/* harmony export */ }); 93/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! tslib */ 4929); 94/* harmony import */ var _checkout_page_html_ngResource__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./checkout.page.html?ngResource */ 3201); 95/* harmony import */ var _checkout_page_scss_ngResource__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./checkout.page.scss?ngResource */ 526); 96/* harmony import */ var _angular_core__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @angular/core */ 3184); 97/* harmony import */ var _angular_router__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @angular/router */ 2816); 98/* harmony import */ var _ionic_angular__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @ionic/angular */ 3819); 99/* harmony import */ var _services_account_account_service__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../services/account/account.service */ 4602); 100/* harmony import */ var _services_order_order_service__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../services/order/order.service */ 4081); 101 102 103 104 105 106 107 108 109// declare var Stripe; 110let CheckoutPage = class CheckoutPage { 111 constructor(router, navCtrl, alertCtrl, toastCtrl, accountservice, orderservice) { 112 this.router = router; 113 this.navCtrl = navCtrl; 114 this.alertCtrl = alertCtrl; 115 this.toastCtrl = toastCtrl; 116 this.accountservice = accountservice; 117 this.orderservice = orderservice; 118 this.appId = 'sq0idp-OW-zJC4hX-7iaDR7VZrJTw'; 119 this.locationId = '274BQ4R6WJ4TV'; 120 } 121 ngOnInit() { 122 this.displaypayment = true; 123 this.displayorder = false; 124 this.displaysave = false; 125 this.savepayment = false; 126 // this.displayPayment(); 127 } 128 ngAfterViewInit() { 129 this.displayPayment(); 130 } 131 displayAccount() { 132 if (this.accountservice.account.ACC_STA != 1) { 133 this.alertLogin(); 134 } 135 else { 136 this.alertLogout(); 137 } 138 } 139 alertLogin() { 140 let alert = this.alertCtrl.create({ 141 header: 'LOGIN', 142 inputs: [ 143 { name: 'email', placeholder: 'Email' }, 144 { name: 'password', placeholder: 'Password', type: 'password' } 145 ], 146 buttons: [ 147 { text: 'Login', handler: data => { if (data.email.length == 0 || data.password.length == 0) 148 return false; this.accountLogin(data.email, data.password); } }, 149 { text: 'Cancel', handler: () => { } } 150 ] 151 }); 152 alert.then((alert) => { alert.present(); }); 153 } 154 accountLogin(email, password) { 155 this.accountservice.account.ACC_NAM = email; 156 this.accountservice.account.ACC_PWD = password; 157 this.accountservice.login().then((message) => { 158 if (message == 'SUCCESS') { 159 this.toastCtrl.create({ message: 'Login Successful', duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); 160 } 161 else { 162 this.accountservice.account.ACC_NAM = ""; 163 this.accountservice.account.ACC_PWD = ""; 164 this.toastCtrl.create({ message: message, duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); 165 } 166 }); 167 } 168 alertLogout() { 169 let alert = this.alertCtrl.create({ 170 header: 'LOGOUT', 171 buttons: [ 172 { text: 'Logout', handler: () => { this.accountLogout(); } }, 173 { text: 'Cancel', handler: () => { } } 174 ] 175 }); 176 alert.then((alert) => { alert.present(); }); 177 } 178 accountLogout() { 179 this.accountservice.logout(); 180 } 181 updateLocation() { 182 this.router.navigateByUrl('/location'); 183 } 184 // displayPayment() { 185 // this.displaypayment = true; 186 // this.accountservice.account.ACC_TKA = ((this.orderservice.order.ORD_AMT + this.orderservice.order.ORD_QTY) * 100).toString(); 187 // this.accountservice.account.ACC_TKB = ""; 188 // this.accountservice.selectPayment().then((intent) => { 189 // if (typeof intent !== 'undefined') { 190 // this.key = intent; 191 // let elements = this.stripe.elements(); 192 // this.card = elements.create('card', { style: { base: { color: '#5e88bf', lineHeight: '48px', fontSize: '16px' } } }); 193 // this.card.mount('#card-element'); 194 // this.card.on("change", event => { if (event.complete) { this.displayorder = true; } else if (event.error) { this.displayorder = false; this.toastCtrl.create({ message: event.error.message, duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); } }); 195 // } 196 // }); 197 // } 198 displayPayment() { 199 return (0,tslib__WEBPACK_IMPORTED_MODULE_4__.__awaiter)(this, void 0, void 0, function* () { 200 if (!window.Square) { 201 console.error('Square Not Loaded.'); 202 return; 203 } 204 try { 205 const payments = window.Square.payments(this.appId, this.locationId); 206 const cardOptions = { style: { input: { backgroundColor: 'white' } } }; 207 this.card = yield payments.card(cardOptions); 208 yield this.card.attach('#card'); 209 this.displayorder = true; 210 // const payButton = document.getElementById('pay'); 211 // if (payButton) { 212 // payButton.addEventListener('click', async () => { 213 // const result = await this.card.tokenize(); 214 // if (result.status === 'OK') { 215 // console.log(result); 216 // this.accountservice.account.ACC_TKA = ((this.orderservice.order.ORD_AMT + this.orderservice.order.ORD_QTY) * 100).toString(); 217 // this.accountservice.account.ACC_TKB = result.token; 218 // this.accountservice.insertPayment().then((result) => { 219 // console.log(result); 220 // }); 221 // } 222 // else { 223 // console.error('Tokenization Failed', result.errors); 224 // } 225 // }); 226 // } 227 } 228 catch (e) { 229 console.error('Sqaure Not Initialized', e); 230 } 231 }); 232 } 233 savepaymenttoggle() { 234 if (this.savepayment) 235 this.savepayment = false; 236 else 237 this.savepayment = true; 238 } 239 placeOrder() { 240 this.displayorder = false; 241 let alert = this.alertCtrl.create({ 242 header: 'CONFIRM', 243 message: 'Are you ready to place this order?', 244 buttons: [ 245 { text: this.accountservice.account.ACC_TYP == '999999' ? 'Submit & PAY AT BAR' : 'Submit & Charge My Card', handler: () => { this.submitOrder(); } }, 246 { text: 'Delete Order', handler: () => { this.orderservice.order.resetOrder(); this.router.navigateByUrl('/home'); } }, 247 { text: 'Cancel', handler: () => { this.displayorder = true; } } 248 ] 249 }); 250 alert.then((alert) => { alert.present(); }); 251 } 252 submitOrder() { 253 return (0,tslib__WEBPACK_IMPORTED_MODULE_4__.__awaiter)(this, void 0, void 0, function* () { 254 try { 255 const result = yield this.card.tokenize(); 256 if (result.status === 'OK') { 257 this.accountservice.account.ACC_TKA = Math.round((((this.orderservice.order.ORD_AMT * 1.075) + this.orderservice.order.ORD_QTY) * 100)).toString(); 258 this.accountservice.account.ACC_TKB = result.token; 259 this.accountservice.insertPayment().then((result) => { 260 if (result.toString().substring(0, 5) != 'ERROR') { 261 this.orderservice.insertOrderStripe().then((message) => { 262 if (message == 'SUCCESS') { 263 this.toastCtrl.create({ message: "Order Successful", duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); 264 this.orderservice.order.resetOrder(); 265 this.router.navigateByUrl('/home'); 266 } 267 else { 268 this.toastCtrl.create({ message: message, duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); 269 } 270 }); 271 } 272 else { 273 this.displayorder = true; 274 this.toastCtrl.create({ message: result, duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); 275 } 276 }); 277 } 278 else { 279 this.displayorder = true; 280 this.toastCtrl.create({ message: "Card Incomplete", duration: 3000, position: 'bottom' }).then((toast) => { toast.present(); }); 281 } 282 } 283 catch (e) { 284 console.error('Network Error', e); 285 } 286 }); 287 } 288}; 289CheckoutPage.ctorParameters = () => [ 290 { type: _angular_router__WEBPACK_IMPORTED_MODULE_5__.Router }, 291 { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_6__.NavController }, 292 { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_6__.AlertController }, 293 { type: _ionic_angular__WEBPACK_IMPORTED_MODULE_6__.ToastController }, 294 { type: _services_account_account_service__WEBPACK_IMPORTED_MODULE_2__.AccountService }, 295 { type: _services_order_order_service__WEBPACK_IMPORTED_MODULE_3__.OrderService } 296]; 297CheckoutPage = (0,tslib__WEBPACK_IMPORTED_MODULE_4__.__decorate)([ 298 (0,_angular_core__WEBPACK_IMPORTED_MODULE_7__.Component)({ 299 selector: 'app-checkout', 300 template: _checkout_page_html_ngResource__WEBPACK_IMPORTED_MODULE_0__, 301 styles: [_checkout_page_scss_ngResource__WEBPACK_IMPORTED_MODULE_1__] 302 }) 303], CheckoutPage); 304 305 306 307/***/ }), 308 309/***/ 526: 310/*!**************************************************************!*\ 311 !*** ./src/app/pages/checkout/checkout.page.scss?ngResource ***! 312 \**************************************************************/ 313/***/ ((module) => { 314 315module.exports = "ion-toolbar {\n --background: #5e88bf;\n --color: white;\n --min-height: 70px;\n}\n\nion-grid {\n max-width: 600px;\n}\n\nion-item {\n --background: transparant;\n}\n\nion-footer ion-button {\n --background: #5e88bf;\n --color: white;\n}\n\n.toolbar-text {\n font-size: xx-large;\n font-weight: bold;\n color: white;\n}\n\n.location-area {\n margin-top: 10px;\n margin-left: 10px;\n margin-right: 10px;\n border-radius: 4px;\n background-color: #5e88bf;\n font-weight: bold;\n}\n\n.time-area {\n padding: 0px;\n}\n\n.amount-area {\n background-color: #5e88bf;\n color: white;\n padding: 10px;\n}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNoZWNrb3V0LnBhZ2Uuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtFQUNFLHFCQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0FBQ0Y7O0FBRUE7RUFDRSxnQkFBQTtBQUNGOztBQUVBO0VBQ0UseUJBQUE7QUFDRjs7QUFHRTtFQUNFLHFCQUFBO0VBQ0EsY0FBQTtBQUFKOztBQUlBO0VBQ0UsbUJBQUE7
315RUFDQSxpQkFBQTtFQUNBLFlBQUE7QUFERjs7QUFJQTtFQUNFLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxpQkFBQTtBQURGOztBQUlBO0VBQ0UsWUFBQTtBQURGOztBQUlBO0VBQ0UseUJBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtBQURGIiwiZmlsZSI6ImNoZWNrb3V0LnBhZ2Uuc2NzcyIsInNvdXJjZXNDb250ZW50IjpbImlvbi10b29sYmFyIHtcclxuICAtLWJhY2tncm91bmQ6ICM1ZTg4YmY7XHJcbiAgLS1jb2xvcjogd2hpdGU7XHJcbiAgLS1taW4taGVpZ2h0OiA3MHB4O1xyXG59XHJcblxyXG5pb24tZ3JpZCB7XHJcbiAgbWF4LXdpZHRoOiA2MDBweDtcclxufVxyXG5cclxuaW9uLWl0ZW0ge1xyXG4gIC0tYmFja2dyb3VuZDogdHJhbnNwYXJhbnQ7XHJcbn1cclxuXHJcbmlvbi1mb290ZXIge1xyXG4gIGlvbi1idXR0b24ge1xyXG4gICAgLS1iYWNrZ3JvdW5kOiAjNWU4OGJmO1xyXG4gICAgLS1jb2xvcjogd2hpdGU7XHJcbiAgfVxyXG59XHJcblxyXG4udG9vbGJhci10ZXh0IHtcclxuICBmb250LXNpemU6IHh4LWxhcmdlO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmxvY2F0aW9uLWFyZWEge1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU4OGJmO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4udGltZS1hcmVhIHtcclxuICBwYWRkaW5nOiAwcHg7XHJcbn1cclxuXHJcbi5hbW91bnQtYXJlYSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlODhiZjtcclxuICBjb2xvcjogd2hpdGU7XHJcbiAgcGFkZGluZzogMTBweDtcclxufVxyXG4iXX0= */"; 316 317/***/ }), 318 319/***/ 3201: 320/*!**************************************************************!*\ 321 !*** ./src/app/pages/checkout/checkout.page.html?ngResource ***! 322 \**************************************************************/ 323/***/ ((module) => { 324 325module.exports = "<ion-header>\r\n <ion-toolbar>\r\n <ion-grid>\r\n <ion-row class=\"ion-align-items-center\">\r\n <ion-col size=\"4\" offset=\"4\" class=\"ion-text-center toolbar-text\">\r\n <ion-label>TRU</ion-label>\r\n </ion-col>\r\n <ion-col size=\"4\" class=\"ion-text-end\" (click)='displayAccount()'>\r\n <ion-icon name='person'></ion-icon>\r\n <ion-label *ngIf='accountservice.account.ACC_STA == 1'> {{ accountservice.account.ACC_FNM }}</ion-label>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n </ion-toolbar>\r\n</ion-header>\r\n\r\n<ion-content>\r\n <ion-grid>\r\n <!--<ion-row class=\"location-area\" (click)=\"updateLocation()\">\r\n <ion-col size=\"12\">\r\n <ion-row class=\"ion-align-items-center\">\r\n <ion-col size=\"10\">\r\n <ion-label color=\"light\">BETWEEN KENAN AND FLAGLER</ion-label>\r\n </ion-col>\r\n <ion-col size=\"2\" class=\"ion-text-center\">\r\n <ion-icon name=\"chevron-forward-outline\" size=\"large\" color=\"light\"></ion-icon>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row>\r\n <ion-col size=\"6\" class=\"time-area\">\r\n <ion-item lines=\"none\">\r\n <ion-icon name=\"restaurant\" slot=\"start\" color=\"light\"></ion-icon>\r\n <ion-label color=\"light\">10-15 min</ion-label>\r\n </ion-item>\r\n </ion-col>\r\n <ion-col size=\"6\" class=\"time-area\">\r\n <ion-item lines=\"none\">\r\n <ion-icon name=\"wine\" slot=\"start\" color=\"light\"></ion-icon>\r\n <ion-label color=\"light\">2-3 min</ion-label>\r\n </ion-item>\r\n </ion-col>\r\n </ion-row>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf='displaypayment'>\r\n <ion-col size=\"12\">\r\n <ion-row>\r\n <ion-col size=\"12\">\r\n <div id=\"card-element\"></div>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf='displaysave'>\r\n <ion-col size=\"8\" offset=\"2\">\r\n <ion-item lines=\"none\">\r\n <ion-label>Save Payment?</ion-label>\r\n <ion-icon name='checkmark-circle-outline' slot=\"end\" *ngIf='savepayment' (click)='savepaymenttoggle()'></ion-icon>\r\n <ion-icon name='close-circle-outline' slot=\"end\" *ngIf='!savepayment' (click)='savepaymenttoggle()'></ion-icon>\r\n </ion-item>\r\n </ion-col>\r\n </ion-row>\r\n </ion-col>\r\n </ion-row>-->\r\n <ion-row class=\"amount-area\">\r\n <ion-col>\r\n <ion-label>Subtotal ${{ ((orderservice.order.ORD_AMT )).toFixed(2) }}</ion-label>\r\n <br />\r\n <ion-label>Tax ${{ ((orderservice.order.ORD_AMT * 0.075)).toFixed(2) }}</ion-label>\r\n <br />\r\n <ion-label>Tip ${{ (orderservice.order.ORD_QTY).toFixed(2) }}</ion-label>\r\n <br />\r\n <ion-label>Total ${{ ((orderservice.order.ORD_AMT * 1.075) + orderservice.order.ORD_QTY).toFixed(2) }}</ion-label>\r\n </ion-col>\r\n </ion-row>\r\n <ion-row *ngIf='displaypayment'>\r\n <ion-col size=\"12\">\r\n <ion-row>\r\n <ion-col size=\"12\">\r\n <div id=\"card\"></div>\r\n </ion-col>\r\n </ion-row>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-content>\r\n\r\n<ion-footer>\r\n <ion-grid>\r\n <ion-row>\r\n <ion-col>\r\n <ion-button expand=\"block\" [disabled]=\"!displayorder\" (click)=\"placeOrder()\">PLACE ORDER ${{ ((orderservice.order.ORD_AMT * 1.075) + orderservice.order.ORD_QTY).toFixed(2) }}</ion-button>\r\n </ion-col>\r\n </ion-row>\r\n </ion-grid>\r\n</ion-footer>\r\n"; 326 327/***/ }) 328 329}]); 330//# sourceMappingURL=src_app_pages_checkout_checkout_module_ts.js.map
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.