PageSourceSearch

https://cdn0.hanacell.com/js/order.js?v=20251103

js hanacell.com collected 2026-09-24 10:08:06 UTC 12,475 bytes, 212 lines download raw bytes

1
2document.addEventListener('DOMContentLoaded', function()
3{
4    document.addEventListener('submit', function(e)
5    {
6        // Package add form submitted
7        if(e.target.matches('.package-add-form')) {
8
9            // Stop default form event, we're going to send it asynchronously
10            e.preventDefault();
11
12            // Serialise the form data
13            let formData = new FormData(e.target);
14
15            var shop_identifier = formData.get('shop_identifier');
16            var plan_type = formData.get('generic') !== undefined ? formData.get('generic') : null;
17            var package_identifier = formData.get('package_identifier');
18            var package_version = formData.get('package_version');
19            var contract_number = formData.get('contract_number') !== undefined ? formData.get('contract_number')  : null;
20            var auth = formData.get('auth')  !== undefined ? formData.get('auth') : null;
21            var csrfToken = formData.get('_csrfToken') !== undefined ? formData.get('_csrfToken') : null;
22            const loadingBsModal = document.getElementById('loadingBsModal');
23            const loadingModalInstance = bootstrap.Modal.getInstance(loadingBsModal);
24
25            // Start a promise to get the basket key, either from the cookie, or by creating a new one
26            let basketKeyPromise = new Promise((resolve, reject) => {
27                if (cookies.check('basket_key')) {
28                    // Yes, read it from the cookie and check with Mobapi it is still valid
29                    post(mobapi.url + '/baskets/check', {
30                        basket_key: cookies.read('basket_key'),
31                        shop_identifier: shop_identifier
32                    })
33                        .then(response => {
34                            if (response.status==='success') {
35                                resolve(cookies.read('basket_key'));
36                            } else {
37                                // No, create a new basket with Mobapi
38                                let basketData = {shop_identifier: shop_identifier}
39
40                                // Is there a source code to add to the basket?
41                                if (cookies.check('source')) {
42                                    basketData.source_code = cookies.read('source');
43                                    //$.removeCookie('source');
44                                }
45
46                                // get basket_key
47                                post(mobapi.url + '/baskets/add', basketData)
48                                    .then(response => {
49                                        if (response.status==='success') {
50                                            // Success, write the basket key to the cookie and resolve the promise
51                                            cookies.write('basket_key', response.data.basket_key, 10080);
52
53                                            // Is there a referral code to add to the basket?
54                                            referalCode = cookies.read('referal_code');
55                                            if (referalCode!==undefined && referalCode.length > 0) {
56                                                post(mobapi.url + '/baskets/edit/', {
57                                                    basket_key: response.data.basket_key,
58                                                    referal_code: referalCode
59                                                })
60                                                    .then(response => {
61                                                        //cookies.remove('referal_code');
62                                                    });
63                                            }
64                                            resolve(response.data.basket_key);
65                                        } else if (response.status==='fail') {
66                                            // Fail, show an error and reject the promise
67                                            //errorModalShow(errorModal,(response.data.shop_url !== undefined) ? '<p>'+response.data.shop_url+'</p>' : '');
68                                            reject();
69                                        } else if (response.status==='error') {
70                                            // Error, something has gone really wrong here, show error and reject the promise
71                                            //errorModalShow(errorModal, (response.data !== undefined) ? '<p>'+response.data+'</p>' : '');
72                                            reject();
73                                        }
74                                    });
75                            }
76                        });
77                } else {
78                    // No, create a new basket with Mobapi
79                    let basketData = {shop_identifier: shop_identifier}
80
81                    // Is there a source code to add to the basket?
82                    if (cookies.check('source')) {
83                        basketData.source_code = cookies.read('source');
84                        //cookies.remove('source');
85                    }
86
87                    // get basket_key
88                    post(mobapi.url + '/baskets/add', basketData)
89                        .then(response => {
90                            if (response.status==='success') {
91                                // Success, write the basket key to the cookie and resolve the promise
92                                cookies.write('basket_key', response.data.basket_key, 10080);
93
94                                // Is there a referrak code to add to the basket?
95                                referalCode = cookies.read('referal_code');
96                                if (referalCode!==undefined && referalCode.length > 0) {
97                                    post(mobapi.url + '/baskets/edit/', {
98                                        basket_key: cookies.read('basket_key'),
99                                        referal_code: referalCode
100                                    })
101                                        .then(response => {
102                                            //cookies.remove('referal_code');
103                                        });
104                                }
105
106                                resolve(response.data.basket_key);
107                            } else if (response.status==='fail') {
108                                // Fail, show an error and reject the promise
109                                //errorModalShow(errorModal,(response.data.shop_url !== undefined) ? '<p>'+response.data.shop_url+'</p>' : '');
110                                reject();
111                            } else if (response.status==='error') {
112                                // Error, something has gone really wrong here, show error and reject the promise
113                                //rrorModalShow(errorModal, (response.data !== undefined) ? '<p>'+response.data+'</p>' : '');
114                                reject();
115                            }
116                        });
117                }
118            });
119
120            try {
121                // Basket key promise has been resolved
122                basketKeyPromise.then(basketKey => {
123                    data = {
124                        basket_key: basketKey,
125                        package_identifier: package_identifier,
126                        package_version: package_version
127                    }
128                    if (plan_type!==undefined && plan_type !== null) {
129                        data.selected = {PLAN_LIST: plan_type};
130                    }
131
132                    // Is it from MyHanacell?
133                    if ((contract_number ? contract_number.length:0) > 1) {
134                        data.upsell_contract_number = contract_number;
135                    }
136
137                    // Convert the form data to a JSON object and send it to Mobapi
138                    post(mobapi.url + '/basket-packages/add', data)
139                        .then(response => {
140                            //loaderModal.hide();
141                            if (response.status==='success' || (response.data.package_count!==undefined && response.data.package_count==='maximum reached')) { // ignore maximum restriction
142                               if (response.data.package_count!==undefined && response.data.package_count==='maximum reached') {
143                                   //setTimeout(() => loadingModalInstance.hide(), 10);
144                                    if (confirm("商品を追加できませんでした。同一名義のご契約は、最大5回線までとなります。")) {
145                                        window.location.href = '/basket/checkout'
146                                    } else {
147                                        return false;
148                                    }
149                                }
150
151                                // Create a checkout form
152                                const checkoutForm = document.createElement('form');
153                                const inputToken = document.createElement('input');
154                                const inputBasketKey = document.createElement('input');
155                                const inputShopIdentifier = document.createElement('input');
156                                const inputContractNumber = document.createElement('input');
157                                const inputAuth = document.createElement('input');
158
159                                checkoutForm.id = 'frmCheckout';
160                                checkoutForm.action = '/basket/checkout';
161                                checkoutForm.method = 'post';
162
163                                inputToken.type = 'hidden';
164                                inputToken.name = '_csrfToken';
165                                inputToken.value = csrfToken;
166                                checkoutForm.appendChild(inputToken);
167
168                                inputBasketKey.type = 'hidden';
169                                inputBasketKey.name = 'basket_key';
170                                inputBasketKey.value = cookies.read('basket_key');
171                                checkoutForm.appendChild(inputBasketKey);
172
173                                if (shop_identifier !== null) {
174                                    inputShopIdentifier.type = 'hidden';
175                                    inputShopIdentifier.name = 'shopIdentifier';
176                                    inputShopIdentifier.value = shop_identifier;
177                                    checkoutForm.appendChild(inputShopIdentifier);
178                                }
179
180                                if (contract_number !== null) {
181                                    inputContractNumber.type = 'hidden';
182                                    inputContractNumber.name = 'contract_number';
183                                    inputContractNumber.value = contract_number;
184                                    checkoutForm.appendChild(inputContractNumber);
185
186                                    inputAuth.type = 'hidden';
187                                    inputAuth.name = 'auth';
188                                    inputAuth.value = auth;
189                                    checkoutForm.appendChild(inputAuth);
190                                }
191
192                                document.body.appendChild(checkoutForm);
193                                checkoutForm.submit();
194                            } else if (response.status==='fail') {
195                                //basketPopperUpdate(cookies.read('basket_key'), ['alert-package-limit']);
196                                reject();
197                            } else if (response.status==='error') {
198                                // Error, something has gone really wrong here, show error and reject the promise
199                                //errorModalShow(errorModal,(response.data !== undefined) ? '<p>' + response.data + '</p>' : '');
200                                reject();
201                            }
202
203                        });
204                });
205
206            } catch (e) {
207                // Display an errors
208                alert(e);
209            }
210        }
211    });
212});

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.