PageSourceSearch

https://rmind.co.kr/wp-content/plugins/cosmosfarm-pay-for-woocomme…/js/script.js?ver=6ac1b4135de84

js rmind.co.kr collected 2026-10-04 11:56:20 UTC 12,602 bytes, 347 lines download raw bytes

1/**
2 * @author https://www.cosmosfarm.com
3 */
4
5if(!window.cosmosfarm_pay_woocommerce){
6	window.cosmosfarm_pay_woocommerce = [];
7}
8
9jQuery(document).ready(function(){
10	window.cosmosfarm_pay_woocommerce['nicepay_instant_card']
11	= window.cosmosfarm_pay_woocommerce['nicepay_instant_cardandeasypay']
12	= window.cosmosfarm_pay_woocommerce['nicepay_instant_cardandeasypay_voucher']
13	= window.cosmosfarm_pay_woocommerce['nicepay_instant_naverpaycard']
14	= window.cosmosfarm_pay_woocommerce['nicepay_instant_kakaopay']
15	= window.cosmosfarm_pay_woocommerce['nicepay_instant_kakaopaycard']
16	= window.cosmosfarm_pay_woocommerce['nicepay_instant_kakaopaymoney']
17	= window.cosmosfarm_pay_woocommerce['nicepay_instant_samsungpaycard']
18	= window.cosmosfarm_pay_woocommerce['nicepay_instant_payco']
19	= window.cosmosfarm_pay_woocommerce['nicepay_instant_ssgpay']
20	= window.cosmosfarm_pay_woocommerce['nicepay_instant_vbank'] = (function(){
21		var checkout_form = jQuery('form.woocommerce-checkout');
22		var order_review_form = jQuery('#order_review');
23		var callback = function(){
24			
25		}
26		
27		var serialize = function(obj){
28			var str = [];
29			for(var p in obj){
30				if(obj.hasOwnProperty(p)){
31					str.push(encodeURIComponent(p) + '=' + encodeURIComponent(obj[p]));
32				}
33			}
34			return str.join('&');
35		}
36		
37		var open_dialog = function(args, _callback){
38			callback = _callback;
39			
40			var dialog = jQuery('#cosmosfarm-pay-wc-nicepay-open-dialog');
41			if(!dialog.length){
42				jQuery('body').append(jQuery('<div id="cosmosfarm-pay-wc-nicepay-open-dialog"></div>'));
43				dialog = jQuery('#cosmosfarm-pay-wc-nicepay-open-dialog');
44			}
45			else{
46				dialog.html('');
47			}
48			
49			setTimeout(function(){
50				if(cosmosfarm_pay_wc_nicepay_instant_args.payment_popup != 'all_self'){
51					if(cosmosfarm_pay_wc_nicepay_instant_args.is_mobile){
52						dialog.css({'display':'block', 'position':'fixed', 'top':'0', 'bottom':'0', 'left':'0', 'right':'0', 'width':'100%', 'height':'100%', 'background-color':'white', 'z-index':'999999999'});
53					}
54					else{
55						dialog.css({'display':'block', 'position':'fixed', 'top':'0', 'bottom':'0', 'left':'0', 'right':'0', 'width':'100%', 'height':'100%', 'background-color':'rgba(0, 0, 0, 0.65)', 'z-index':'999999999'});
56					}
57				}
58				else if(cosmosfarm_pay_wc_nicepay_instant_args.payment_popup == 'mobile_self'){
59					if(!cosmosfarm_pay_wc_nicepay_instant_args.is_mobile){
60						dialog.css({'display':'block', 'position':'fixed', 'top':'0', 'bottom':'0', 'left':'0', 'right':'0', 'width':'100%', 'height':'100%', 'background-color':'rgba(0, 0, 0, 0.65)', 'z-index':'999999999'});
61					}
62				}
63				
64				var payment_method = jQuery('input[name="payment_method"]:checked', '.woocommerce-checkout-payment').val();
65				if(!payment_method){
66					payment_method = jQuery('input[name="payment_method"]:checked', '#payment').val();
67				}
68				
69				if(cosmosfarm_pay_wc_nicepay_instant_args.payment_popup == 'all'){ // 모두 팝업
70					if(payment_method == 'nicepay_instant_kakaopay' || payment_method == 'nicepay_instant_kakaopaycard' || payment_method == 'nicepay_instant_kakaopaymoney'){
71						var _width = '427'; var _height = '550';
72					}
73					else if(payment_method == 'nicepay_instant_samsungpaycard'){
74						var _width = '400'; var _height = '755';
75					}
76					else{
77						var _width = '900'; var _height = '505';
78					}
79					var _left = Math.ceil(( window.screen.width - _width )/2);
80					var _top = Math.ceil(( window.screen.height - _height )/2);
81					var uri = open_dialog_url;
82					var popup_name = "cosmosfarm-pay-wc-nicepay-open-dialog-popup";
83					var options = "width=" + _width + ", height=" + _height + ", left="+_left+", top="+_top+", scrollbars=no";
84					
85					var popup_dialog = function(uri, name, options, close_callback){
86						var nicepay_instant_popup = window.open(uri, name, options);
87						var interval = window.setInterval(function(){
88							try{
89								if(nicepay_instant_popup == null || nicepay_instant_popup.closed){
90									window.clearInterval(interval);
91									close_dialog();
92								}
93							}
94							catch(e){
95							}
96						}, 500);
97						
98						dialog.click(function(){
99							var popup_close_confirm = confirm('결제를 취소하시겠습니까?');
100							if(popup_close_confirm){
101								nicepay_instant_popup.close();
102								close_dialog({
103									success : false,
104									message : '',
105									error_msg : '결제를 취소했습니다.'
106								});
107							}
108						});
109						
110						return nicepay_instant_popup ;
111					};
112					
113					function pop_open(){
114						popup_dialog(uri, popup_name, options, function(win){
115							dialog.remove();
116						});
117					}
118					
119					pop_open();
120				}
121				else { // 모두 아이프레임
122					var iframe = '<iframe id="cosmosfarm-pay-wc-nicepay-open-dialog-iframe" name="cosmosfarm-pay-wc-nicepay-open-dialog-iframe" width="100%" height="100%" frameborder="0" style="position:absolute;left:0;right:0;top:0;bottom:0;width:100%;height:100%;"></iframe>';
123					dialog.append(iframe);
124				}
125				
126				var open_dialog_url = '';
127				
128				if(payment_method == 'nicepay_instant_card'){
129					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_card_url;
130				}
131				else if(payment_method == 'nicepay_instant_cardandeasypay'){
132					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_cardandeasypay_url;
133				}
134				else if(payment_method == 'nicepay_instant_cardandeasypay_voucher'){
135					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_cardandeasypay_voucher_url;
136				}
137				else if(payment_method == 'nicepay_instant_naverpaycard'){
138					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_naverpaycard_url;
139				}
140				else if(payment_method == 'nicepay_instant_kakaopay'){
141					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_kakaopay_url;
142				}
143				else if(payment_method == 'nicepay_instant_kakaopaycard'){
144					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_kakaopaycard_url;
145				}
146				else if(payment_method == 'nicepay_instant_kakaopaymoney'){
147					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_kakaopaymoney_url;
148				}
149				else if(payment_method == 'nicepay_instant_samsungpaycard'){
150					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_samsungpaycard_url;
151				}
152				else if(payment_method == 'nicepay_instant_payco'){
153					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_payco_url;
154				}
155				else if(payment_method == 'nicepay_instant_ssgpay'){
156					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_ssgpay_url;
157				}
158				else if(payment_method == 'nicepay_instant_vbank'){
159					open_dialog_url = cosmosfarm_pay_wc_nicepay_instant_args.open_dialog_vbank_url;
160				}
161				
162				if(cosmosfarm_pay_wc_nicepay_instant_args.payment_popup == 'all'){
163					var form = jQuery('<form action="' + open_dialog_url + '" target="cosmosfarm-pay-wc-nicepay-open-dialog-popup" method="post" style="display:none"></form>');
164				}
165				else if(cosmosfarm_pay_wc_nicepay_instant_args.payment_popup == 'all_self'){
166					var form = jQuery('<form action="' + open_dialog_url + '" method="post" style="display:none"></form>');
167				}
168				else if(cosmosfarm_pay_wc_nicepay_instant_args.payment_popup == 'mobile_self' && cosmosfarm_pay_wc_nicepay_instant_args.is_mobile){
169					var form = jQuery('<form action="' + open_dialog_url + '" method="post" style="display:none"></form>');
170				}
171				else{
172					var form = jQuery('<form action="' + open_dialog_url + '" target="cosmosfarm-pay-wc-nicepay-open-dialog-iframe" method="post" style="display:none"></form>');
173				}
174				dialog.append(form);
175				
176				for(var name in args){
177					jQuery('<input type="hidden">').attr('name', name).attr('value', args[name]).appendTo(form);
178				}
179				
180				form.submit();
181			});
182		}
183		
184		var show_error = function(error_message){
185			jQuery('.woocommerce-error, .woocommerce-message').remove();
186			checkout_form.prepend(error_message);
187			checkout_form.removeClass('processing').unblock();
188			checkout_form.find('.input-text, select').blur();
189			jQuery('html, body').animate({scrollTop:checkout_form.offset().top-100}, 1000);
190			order_review_form.prepend(error_message);
191			order_review_form.removeClass('processing').unblock();
192			order_review_form.find('.input-text, select').blur();
193			jQuery('html, body').animate({scrollTop:order_review_form.offset().top-100}, 1000);
194			jQuery(document.body).trigger('checkout_error');
195		}
196		
197		var pay = function(args){
198			jQuery.each(jQuery(checkout_form).serializeArray(), function(){
199				args[this.name] = this.value;
200			});
201			jQuery.each(jQuery(order_review_form).serializeArray(), function(){
202				args[this.name] = this.value;
203			});
204			
205			open_dialog(args, function(res){
206				if(res.success){
207					alert(res.message);
208					setTimeout(function(){
209						window.location.href = res.pay_success_url;
210					});
211				}
212				else{
213					if(res.error_msg){
214						alert(res.error_msg);
215					}
216					else{
217						alert('결제를 취소했습니다.');
218					}
219				}
220			});
221		}
222		
223		var close_dialog = function(res){
224			var dialog = jQuery('#cosmosfarm-pay-wc-nicepay-open-dialog');
225			if(dialog.length){
226				dialog.html('');
227				dialog.remove();
228			}
229			
230			callback(res);
231		}
232		
233		return {
234			pay:pay,
235			close_dialog:close_dialog
236		};
237	})();
238});
239
240jQuery(function(){
241	var checkout_form = jQuery('form.woocommerce-checkout');
242	var order_review_form = jQuery('#order_review');
243	
244	var show_error = function(error_message){
245		jQuery('.woocommerce-error, .woocommerce-message').remove();
246		checkout_form.prepend(error_message);
247		checkout_form.removeClass('processing').unblock();
248		checkout_form.find('.input-text, select').blur();
249		jQuery('html, body').animate({scrollTop:checkout_form.offset().top-100}, 1000);
250		order_review_form.prepend(error_message);
251		order_review_form.removeClass('processing').unblock();
252		order_review_form.find('.input-text, select').blur();
253		jQuery('html, body').animate({scrollTop:order_review_form.offset().top-100}, 1000);
254		jQuery(document.body).trigger('checkout_error');
255	}
256	
257	checkout_form.on('checkout_place_order', function(){
258		jQuery('.woocommerce-error, .woocommerce-message').remove();
259		
260		var payment_method = checkout_form.find('input[name="payment_method"]:checked').val();
261		
262		if(payment_method != 'nicepay_instant_subscription' && jQuery.inArray(payment_method, cosmosfarm_pay_wc_nicepay_instant_args.method_list) !== -1){
263			jQuery.ajax({
264				type: 'POST',
265				url: wc_checkout_params.checkout_url,
266				data: checkout_form.serialize(),
267				dataType: 'json',
268				success: function(result){
269					try{
270						if(result.result == 'success'){
271							window.cosmosfarm_pay_woocommerce[payment_method].pay(result);
272						}
273						else if(result.result === 'failure'){
274							throw 'Result failure';
275						}
276						else{
277							throw 'Invalid response';
278						}
279					}
280					catch(err){
281						if(result.reload == 'true'){
282							window.location.reload();
283							return;
284						}
285						if(result.refresh == 'true'){
286							jQuery(document.body).trigger('update_checkout');
287						}
288						if(result.messages){
289							show_error(result.messages);
290						}
291					}
292				},
293				error: function(jqXHR, textStatus, errorThrown){
294					show_error('<div class="woocommerce-error">' + errorThrown + '</div>');
295				}
296			});
297			
298			return false;
299		}
300	});
301	
302	order_review_form.on('submit', function(e){
303		var payment_method = order_review_form.find('input[name="payment_method"]:checked').val();
304		
305		if(payment_method != 'nicepay_instant_subscription' && jQuery.inArray(payment_method, cosmosfarm_pay_wc_nicepay_instant_args.method_list) !== -1){
306			e.preventDefault();
307			e.stopImmediatePropagation();
308			
309			jQuery.ajax({
310				type: 'POST',
311				url: wc_checkout_params.ajax_url,
312				data: order_review_form.serialize(),
313				dataType: 'json',
314				success: function(result){
315					try{
316						if(result.result == 'success'){
317							window.cosmosfarm_pay_woocommerce[payment_method].pay(result);
318						}
319						else if(result.result === 'failure'){
320							throw 'Result failure';
321						}
322						else{
323							throw 'Invalid response';
324						}
325					}
326					catch(err){
327						if(result.reload == 'true'){
328							window.location.reload();
329							return;
330						}
331						if(result.refresh == 'true'){
332							jQuery(document.body).trigger('update_checkout');
333						}
334						if(result.messages){
335							show_error(result.messages);
336						}
337					}
338				},
339				error: function(jqXHR, textStatus, errorThrown){
340					show_error('<div class="woocommerce-error">' + errorThrown + '</div>');
341				}
342			});
343			
344			return false;
345		}
346	});
347});

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.