PluginProbe
Welcart e-Commerce / 1.3.5
Welcart e-Commerce v1.3.5
2.12.4 2.12.3 2.11.35 2.12.2 2.12.1 2.11.34 2.11.33 2.11.32 2.11.31 2.11.30 1.3.16 1.3.17 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.10 1.4.11 1.4.12 All 292 releases
usc-e-shop / js / usces_admin.js

usces_admin.js in Welcart e-Commerce 1.3.5, at js/usces_admin.js

1,079 lines 38.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 // JavaScript
2 (function($) {
3 itemOpt = {
4 settings: {
5 url: uscesL10n.requestFile,
6 type: 'POST',
7 cache: false,
8 success: function(data, dataType){
9 $("tbody#item-opt-list").html( data );
10 },
11 error: function(msg){
12 $("#ajax-response").html(msg);
13 }
14 },
15
16 post : function(action, arg) {
17 if( action == 'updateitemopt' ) {
18 itemOpt.updateitemopt(arg);
19 } else if( action == 'deleteitemopt' ) {
20 itemOpt.deleteitemopt(arg);
21 } else if( action == 'additemopt' ) {
22 itemOpt.additemopt();
23 } else if( action == 'addcommonopt' ) {
24 itemOpt.addcommonopt();
25 } else if( action == 'keyselect' ) {
26 itemOpt.keyselect(arg);
27 }
28 },
29
30 additemopt : function() {
31 if($("#optkeyselect").val() == "#NONE#") return;
32
33 var id = $("#post_ID").val();
34 var name = $("#optkeyselect option:selected").html();
35 var value = $("#newoptvalue").val();
36 var means = $("#newoptmeans").val();
37 if($("input#newoptessential").attr("checked")){
38 var essential = '1';
39 }else{
40 var essential = '0';
41 }
42
43 var mes = '';
44 if( '' == name ){
45 mes += '<p>オプション名を�
46 �力してください。</p>';
47 } else {
48 var check = true;
49 $("input[name*='\[name\]']").each(function(){ if( name == $(this).val() ){ check = false; }});
50 if( !check ){
51 mes += '<p>同じ名前のオプションが存在します。</p>';
52 }
53 }
54 if( '' == value && (0 == means || 1 == means || 3 == means || 4 == means) ){
55 mes += '<p>セレクト値を�
56 �力してください。</p>';
57 }else if( '' != value && (2 == means || 5 == means) ){
58 mes += '<p>テキスト、テキストエリアの場合はセレクト値を空白にしてください。</p>';
59 }
60 if( '' != mes ){
61 $("#itemopt_ajax-response").html('<div class="error">' + mes + '</div>');
62 return false;
63 }
64
65 $("#newitemopt_loading").html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
66
67 var s = itemOpt.settings;
68 s.data = "action=item_option_ajax&ID=" + id + "&newoptname=" + encodeURIComponent(name) + "&newoptvalue=" + encodeURIComponent(value) + "&newoptmeans=" + encodeURIComponent(means) + "&newoptessential=" + encodeURIComponent(essential);
69 s.success = function(data, dataType){
70 $("#itemopt_ajax-response").html('');
71 $("#newitemopt_loading").html('');
72 $("table#optlist-table").removeAttr("style");
73 strs = data.split('#usces#');
74 meta_id = strs[1];
75 $("tbody#item-opt-list").html( strs[0] );
76 $("#optkeyselect").val('#NONE#');
77 $("#newoptvalue").html('');
78 $("#newoptmeans").val(0);
79 $("#newoptessential").attr({checked: false});
80 $("#itemopt-" + meta_id).css({'background-color': '#FF4'});
81 $("#itemopt-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 2000 );
82 };
83 s.error = function(msg){
84 $("#itemopt_ajax-response").html(msg);
85 $("#newitemopt_loading").html('');
86 };
87 $.ajax( s );
88 return false;
89 },
90
91 addcommonopt : function() {
92 var id = $("#post_ID").val();
93 var name = $("#newoptname").val();
94 var value = $("#newoptvalue").val();
95 var means = $("#newoptmeans").val();
96 if($("input#newoptessential").attr("checked")){
97 var essential = '1';
98 }else{
99 var essential = '0';
100 }
101
102 var mes = '';
103 if( '' == name ){
104 mes += '<p>オプション名を�
105 �力してください。</p>';
106 } else {
107 var check = true;
108 $("input[name*='\[name\]']").each(function(){ if( name == $(this).val() ){ check = false; }});
109 if( !check ){
110 mes += '<p>同じ名前のオプションが存在します。</p>';
111 }
112 }
113 if( '' == value && (0 == means || 1 == means || 3 == means || 4 == means) ){
114 mes += '<p>セレクト値を�
115 �力してください。</p>';
116 }else if( '' != value && (2 == means || 5 == means) ){
117 mes += '<p>テキスト、テキストエリアの場合はセレクト値を空白にしてください。</p>';
118 }
119 if( '' != mes ){
120 $("#itemopt_ajax-response").html('<div class="error">' + mes + '</div>');
121 return false;
122 }
123
124 $("#newcomopt_loading").html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
125
126 var s = itemOpt.settings;
127 s.data = "action=item_option_ajax&ID=" + id + "&newoptname=" + encodeURIComponent(name) + "&newoptvalue=" +encodeURIComponent(value) + "&newoptmeans=" + encodeURIComponent(means) + "&newoptessential=" + encodeURIComponent(essential);
128 s.success = function(data, dataType){
129 $("#newcomopt_loading").html('');
130 $("#itemopt_ajax-response").html('');
131 strs = data.split('#usces#');
132 $("table#optlist-table").removeAttr("style");
133 var meta_id = strs[1];
134 if( 0 > meta_id ){
135 $("#itemopt_ajax-response").html('<div class="error"><p>同じ名前のオプションが存在します。</p></div>');
136 }else{
137 $("tbody#item-opt-list").html( strs[0] );
138 $("#newoptname").val('');
139 $("#newoptvalue").val('');
140 $("#newoptmeans").val(0);
141 $("#newoptessential").attr({checked: false});
142 $("#itemopt-" + meta_id).css({'background-color': '#FF4'});
143 $("#itemopt-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 2000 );
144 }
145 };
146 s.error = function(msg){
147 $("#comopt_ajax-response").html(msg);
148 $("#newcomopt_loading").html('');
149 };
150 $.ajax( s );
151 return false;
152 },
153
154 updateitemopt : function(meta_id) {
155 var id = $("#post_ID").val();
156 nm = document.getElementById('itemopt\['+meta_id+'\]\[name\]');
157 vs = document.getElementById('itemopt\['+meta_id+'\]\[value\]');
158 ms = document.getElementById('itemopt\['+meta_id+'\]\[means\]');
159 es = document.getElementById('itemopt\['+meta_id+'\]\[essential\]');
160 so = document.getElementById('itemopt\['+meta_id+'\]\[sort\]');
161 var name = $(nm).val();
162 var value = uscesItem.trim($(vs).val());
163 var means = $(ms).val();
164 var sortnum = $(so).val();
165 if($(es).attr("checked")){
166 var essential = '1';
167 }else{
168 var essential = '0';
169 }
170
171 var mes = '';
172 if( '' == name ){
173 mes += '<p>オプション名を�
174 �力してください。</p>';
175 }
176 if( '' == value && (0 == means || 1 == means || 3 == means || 4 == means) ){
177 mes += '<p>セレクト値を�
178 �力してください。</p>';
179 }else if( '' != value && (2 == means || 5 == means) ){
180 mes += '<p>テキスト、テキストエリアの場合はセレクト値を空白にしてください。</p>';
181 }
182 if( '' != mes ){
183 $("#itemopt_ajax-response").html('<div class="error">' + mes + '</div>');
184 return false;
185 }
186
187 $("#itemopt_loading-" + meta_id).html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
188
189 var s = itemOpt.settings;
190 s.data = "action=item_option_ajax&ID=" + id + "&update=1&optname=" + encodeURIComponent(name) + "&optvalue=" + encodeURIComponent(value) + "&optmeans=" + means + "&optessential=" + essential + "&sort=" + sortnum + "&optmetaid=" + meta_id;
191 s.success = function(data, dataType){
192 $("#itemopt_ajax-response").html('');
193 $("#itemopt_loading-" + meta_id).html('');
194 strs = data.split('#usces#');
195 $("tbody#item-opt-list").html( strs[0] );
196 $("#itemopt-" + meta_id).css({'background-color': '#FF4'});
197 $("#itemopt-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 2000 );
198 };
199 s.error = function(msg){
200 $("#itemopt_ajax-response").html(msg);
201 $("#itemopt_loading-" + meta_id).html('');
202 };
203 $.ajax( s );
204 return false;
205 },
206
207 deleteitemopt : function(meta_id) {
208 $("#itemopt-" + meta_id).css({'background-color': '#F00'});
209 $("#itemopt-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 1000 );
210 var id = $("#post_ID").val();
211 var s = itemOpt.settings;
212 s.data = "action=item_option_ajax&ID=" + id + "&delete=1&optmetaid=" + meta_id;
213 s.success = function(data, dataType){
214 $("#itemopt_ajax-response").html("");
215 strs = data.split('#usces#');
216 $("tbody#item-opt-list").html( strs[0] );
217 };
218 s.error = function(msg){
219
220 };
221 $.ajax( s );
222 return false;
223 },
224
225 keyselect : function( meta_id ) {
226 if(meta_id == '#NONE#'){
227 $("#newoptvalue").val('');
228 $("#newoptmeans").val(0);
229 $("#newoptessential").attr({checked: false});
230 return;
231 }
232 var id = uscesL10n.cart_number;
233
234 $("#newitemopt_loading").html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
235 $("#add_itemopt").attr("disabled", true);
236
237 var s = itemOpt.settings;
238 s.data = "action=item_option_ajax&ID=" + id + "&select=1&meta_id=" + meta_id;
239 s.success = function(data, dataType){
240 $("#itemopt_ajax-response").html("");
241 strs = data.split('#usces#');
242 var means = strs[0];
243 var essential = strs[1];
244 var value = strs[2];
245 if( 2 == means || 5 == means ){
246 value = '';
247 }
248 $("#newoptvalue").html(value);
249 $("#newoptmeans").val(means);
250 if( essential == '1') {
251 $("#newoptessential").attr({checked: true});
252 }else{
253 $("#newoptessential").attr({checked: false});
254 }
255 $("#newitemopt_loading").html('');
256 $("#add_itemopt").attr("disabled", false);
257 };
258 s.error = function(msg){
259 $("#itemopt_ajax-response").html(msg);
260 $("#newitemopt_loading").html('');
261 };
262 $.ajax( s );
263 return false;
264 },
265
266 dosort : function( str ) {
267 if( !str ) return;
268 var id = $("#post_ID").val();
269 var meta_id_str = str.replace(/itemopt-/g, "");
270 var meta_ids = meta_id_str.split(',');
271 if( 2 > meta_ids.length ) return;
272
273 for(i=0; i<meta_ids.length; i++){
274 $("#itemopt_loading-" + meta_ids[i]).html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
275 }
276 var s = itemOpt.settings;
277 s.data = "action=item_option_ajax&ID=" + id + "&sort=1&meta=" + encodeURIComponent(meta_id_str);
278 s.success = function(data, dataType){
279 $("#itemopt_ajax-response").html("");
280 strs = data.split('#usces#');
281 $("tbody#item-opt-list").html( strs[0] );
282 for(i=0; i<meta_ids.length; i++){
283 $("#itemopt_loading-" + meta_ids[i]).html('');
284 $("#itemopt-" + meta_ids[i]).css({'background-color': '#FF4'});
285 $("#itemopt-" + meta_ids[i]).animate({ 'background-color': '#FFFFEE' }, 2000 );
286 }
287 };
288 s.error = function(msg){
289 $("#opt_ajax-response").html('<div class="error"><p>error sort</p></div>');
290 };
291 $.ajax( s );
292 return false;
293 }
294 };
295
296 itemSku = {
297 settings: {
298 url: uscesL10n.requestFile,
299 type: 'POST',
300 cache: false,
301 success: function(data, dataType){
302 strs = data.split('#usces#');
303 //alert(strs[1]);return;
304 $("tbody#item-sku-list").html( strs[0] );
305 $("select#skukeyselect").html( strs[1] );
306 },
307 error: function(msg){
308 $("#skuajax-response").html(msg);
309 }
310 },
311
312 post : function(action, arg) {
313 if( action == 'updateitemsku' ) {
314 itemSku.updateitemsku(arg);
315 } else if( action == 'deleteitemsku' ) {
316 itemSku.deleteitemsku(arg);
317 } else if( action == 'additemsku' ) {
318 itemSku.additemsku();
319 } else if( action == 'keyselect' ) {
320 itemSku.keyselect(arg);
321 }
322 },
323
324 additemsku : function() {
325 var id = $("#post_ID").val();
326 var name = $("#newskuname").val();
327 var cprice = $("#newskucprice").val();
328 var price = $("#newskuprice").val();
329 var zaikonum = $("#newskuzaikonum").val();
330 var zaiko = $("#newskuzaikoselect").val();
331 var skudisp = $("#newskudisp").val();
332 var skuunit = $("#newskuunit").val();
333 var skugptekiyo = $("#newskugptekiyo").val();
334
335 var mes = '';
336 if( '' == name )
337 mes += '<p>SKUコードの値を�
338 �力してください。</p>';
339 if( '' == price )
340 mes += '<p>売価の値を�
341 �力してください。</p>';
342 // if( ! checkCode( name ) )
343 // mes += '<p>SKUコードは半角英数(-_を含む)で�
344 �力して下さい。</p>';
345 if( ! checkMoney( cprice ) )
346 mes += '<p>通常価は数値で�
347 �力して下さい。</p>';
348 if( ! checkMoney( price ) )
349 mes += '<p>売価は数値で�
350 �力して下さい。</p>';
351 if( ! checkNum( zaikonum ) )
352 mes += '<p>在庫数は数値で�
353 �力して下さい。</p>';
354 if( '' != mes ){
355 $("#sku_ajax-response").html('<div class="error">' + mes + '</div>');
356 return false;
357 }
358
359 var skuadvance = '';
360 if( undefined != $("input[name*='newskuadvance']") ) {
361 if( 1 == ("input[name*='newskuadvance']").length ) {
362 skuadvance = '&newskuadvance='+encodeURIComponent(("input[name*='newskuadvance']").val());
363 } else {
364 $("input[name*='newskuadvance']").each(function() {
365 skuadvance += '&newskuadvance['+$(this).attr("id")+']='+encodeURIComponent($(this).val());
366 });
367 }
368 }
369
370 $("#newitemsku_loading").html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
371
372 var s = itemSku.settings;
373 s.data = "action=item_sku_ajax&ID=" + id + "&newskuname=" + encodeURIComponent(name) + "&newskucprice=" + cprice + "&newskuprice=" + price + "&newskuzaikonum=" + zaikonum + "&newskuzaikoselect=" + encodeURIComponent(zaiko) + "&newskudisp=" + encodeURIComponent(skudisp) + "&newskuunit=" + encodeURIComponent(skuunit) + "&newskugptekiyo=" + skugptekiyo + skuadvance;
374 s.success = function(data, dataType){
375 $("#newitemsku_loading").html('');
376 $("#sku_ajax-response").html("");
377 strs = data.split('#usces#');
378 $("table#skulist-table").removeAttr("style");
379 var meta_id = strs[1];
380 if( 0 > meta_id ){
381 $("#sku_ajax-response").html('<div class="error"><p>同じSKUコードが存在します。</p></div>');
382 }else{
383 $("tbody#item-sku-list").html( strs[0] );
384 $("#itemsku-" + meta_id).css({'background-color': '#FF4'});
385 $("#itemsku-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 2000 );
386 $("#newskuname").val("");
387 $("#newskucprice").val("");
388 $("#newskuprice").val("");
389 $("#newskuzaikonum").val("");
390 $("#newskuzaikonum").val("");
391 $("#newskuzaikoselect").val(0);
392 $("#newskudisp").val("");
393 $("#newskuunit").val("");
394 $("#newskugptekiyo").val(0);
395 //$("#newcharging_type").attr({selectedIndex:0});
396 if( 0 < $("input[name*='newskuadvance']").length ){
397 $("input[name*='newskuadvance']").each(function(index, element) {
398 $(this).val("");
399 });
400 }
401 if( 0 < $("select[name*='newskuadvance']").length ){
402 $("select[name*='newskuadvance']").each(function(index, element) {
403 $(this).val("");
404 });
405 }
406 }
407 //$("#itemsku-" + meta_id).css({'background-color': '#FF4'});
408 //$("#itemsku-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 2000 );
409 };
410 s.error = function(msg){
411 $("#sku_ajax-response").html(msg);
412 $("#newitemsku_loading").html('');
413 };
414 $.ajax( s );
415 return false;
416 },
417
418 updateitemsku : function(meta_id) {
419 var id = $("#post_ID").val();
420 ks = document.getElementById('itemsku\['+meta_id+'\]\[key\]');
421 cs = document.getElementById('itemsku\['+meta_id+'\]\[cprice\]');
422 ps = document.getElementById('itemsku\['+meta_id+'\]\[price\]');
423 ns = document.getElementById('itemsku\['+meta_id+'\]\[zaikonum\]');
424 zs = document.getElementById('itemsku\['+meta_id+'\]\[zaiko\]');
425 ds = document.getElementById('itemsku\['+meta_id+'\]\[skudisp\]');
426 us = document.getElementById('itemsku\['+meta_id+'\]\[skuunit\]');
427 gs = document.getElementById('itemsku\['+meta_id+'\]\[skugptekiyo\]');
428 //ad = document.getElementById('itemsku\['+meta_id+'\]\[skuadvance\]');
429 ad = $("input[name*='itemsku\["+meta_id+"\]\[skuadvance\]']");
430 so = document.getElementById('itemsku\['+meta_id+'\]\[sort\]');
431 var name = $(ks).val();
432 var cprice = $(cs).val();
433 var price = $(ps).val();
434 var zaikonum = $(ns).val();
435 var zaiko = $(zs).val();
436 var skudisp = $(ds).val();
437 var skuunit = $(us).val();
438 var skugptekiyo = $(gs).val();
439 var sortnum = $(so).val();
440
441 var mes = '';
442 if( '' == name )
443 mes += '<p>SKUコードの値を�
444 �力してください。</p>';
445 if( '' == price )
446 mes += '<p>売価の値を�
447 �力してください。</p>';
448 if( ! checkMoney( cprice ) )
449 mes += '<p>通常価は数値で�
450 �力して下さい。</p>';
451 if( ! checkMoney( price ) )
452 mes += '<p>売価は数値で�
453 �力して下さい。</p>';
454 if( ! checkNum( zaikonum ) )
455 mes += '<p>在庫数は数値で�
456 �力して下さい。</p>';
457 if( '' != mes ){
458 $("#sku_ajax-response").html('<div class="error">' + mes + '</div>');
459 return false;
460 }
461
462 var skuadvance = '';
463 if( undefined != $(ad) ) {
464 if( 1 == $(ad).length ) {
465 skuadvance = '&skuadvance='+encodeURIComponent($(ad).val());
466 } else {
467 $(ad).each(function() {
468 skuadvance += '&skuadvance['+$(this).attr("id")+']='+encodeURIComponent($(this).val());
469 });
470 }
471 }
472
473 $("#itemsku_loading-" + meta_id).html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
474 var s = itemSku.settings;
475 s.data = "action=item_sku_ajax&ID=" + id + "&update=1&skuprice=" + price + "&skucprice=" + cprice + "&skuzaikonum=" + zaikonum + "&skuzaiko=" + encodeURIComponent(zaiko) + "&skuname=" + encodeURIComponent(name) + "&skudisp=" + encodeURIComponent(skudisp) + "&skuunit=" + encodeURIComponent(skuunit) + "&skugptekiyo=" + skugptekiyo + "&sort=" + sortnum + "&skumetaid=" + meta_id + skuadvance;
476 s.success = function(data, dataType){
477 $("#itemsku_loading-" + meta_id).html('');
478 $("#sku_ajax-response").html("");
479 strs = data.split('#usces#');
480 $("table#skulist-table").removeAttr("style");
481 var id = strs[1];
482 if( 0 > id ){
483 $("#sku_ajax-response").html('<div class="error"><p>同じSKUコードが存在します。</p></div>');
484 }else{
485 $("tbody#item-sku-list").html( strs[0] );
486 $("#itemsku-" + meta_id).css({'background-color': '#FF4'});
487 $("#itemsku-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 2000 );
488 }
489 };
490 s.error = function(msg){
491 $("#sku_ajax-response").html(msg);
492 $("#itemsku_loading-" + meta_id).html('');
493 };
494 $.ajax( s );
495 return false;
496 },
497
498 deleteitemsku : function(meta_id) {
499 var data=[];
500 $("#itemsku-" + meta_id).css({'background-color': '#F00'});
501 $("#itemsku-" + meta_id).animate({ 'background-color': '#FFFFEE' }, 1000 );
502 var id = $("#post_ID").val();
503 var s = itemSku.settings;
504 s.data = "action=item_sku_ajax&ID=" + id + "&delete=1&skumetaid=" + meta_id;
505 s.success = function(data, dataType){
506 $("#itemsku_loading-" + meta_id).html('');
507 $("#sku_ajax-response").html("");
508 strs = data.split('#usces#');
509 $("tbody#item-sku-list").html( strs[0] );
510 };
511 s.error = function(msg){
512 $("#sku_ajax-response").html(msg);
513 $("#itemsku_loading-" + meta_id).html('');
514 };
515 $.ajax( s );
516 return false;
517 },
518
519 dosort : function( str ) {
520 if( !str ) return;
521 var id = $("#post_ID").val();
522 var meta_id_str = str.replace(/itemsku-/g, "");
523 var meta_ids = meta_id_str.split(',');
524 if( 2 > meta_ids.length ) return;
525
526 for(i=0; i<meta_ids.length; i++){
527 $("#itemsku_loading-" + meta_ids[i]).html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
528 }
529 var s = itemSku.settings;
530 s.data = "action=item_sku_ajax&ID=" + id + "&sort=1&meta=" + encodeURIComponent(meta_id_str);
531 s.success = function(data, dataType){
532 $("#sku_ajax-response").html("");
533 strs = data.split('#usces#');
534 $("tbody#item-sku-list").html( strs[0] );
535 for(i=0; i<meta_ids.length; i++){
536 //$("#itemsku_loading-" + meta_ids[i]).html('');
537 $("#itemsku-" + meta_ids[i]).css({'background-color': '#FF4'});
538 $("#itemsku-" + meta_ids[i]).animate({ 'background-color': '#FFFFEE' }, 2000 );
539 }
540 };
541 s.error = function(msg){
542 $("#sku_ajax-response").html('<div class="error"><p>error sort</p></div>');
543 };
544 $.ajax( s );
545 return false;
546 }
547 };
548
549 payment = {
550 settings: {
551 url: uscesL10n.requestFile,
552 type: 'POST',
553 cache: false,
554 success: function(data, dataType){
555 $("tbody#payment-list").html( data );
556
557 },
558 error: function(msg){
559 $("#payment-response").html(msg);
560 }
561 },
562
563 post : function(action, arg) {
564 if( action == 'update' ) {
565 payment.update(arg);
566 } else if( action == 'del' ) {
567 payment.del(arg);
568 } else if( action == 'add' ) {
569 payment.add();
570 }
571 },
572
573 add : function() {
574 var name = $("#newname").val();
575 var explanation = $("#newexplanation").val();
576 var settlement = $("#newsettlement").val();
577 var module = $("#newmodule").val();
578
579 var mes = '';
580 if( '' == name ){
581 mes += '<p>支払方法名の値を�
582 �力してください。</p>';
583 }
584 if( 'acting' == settlement ) {//代行業�
585 決済のとき
586 if( '' == module ) {
587 mes += '<p>決済モジュールの値を�
588 �力してください。</p>';
589 }
590 }
591 if( '' != mes ){
592 $("#payment_ajax-response").html('<div class="error">' + mes + '</div>');
593 return false;
594 }
595
596 $("#newpayment_loading").html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
597
598 var s = payment.settings;
599 s.data = "action=payment_ajax&newname=" + encodeURIComponent(name) + "&newexplanation=" + encodeURIComponent(explanation) + "&newsettlement=" + encodeURIComponent(settlement) + "&newmodule=" + encodeURIComponent(module);
600 s.success = function(data, dataType){
601 $("#newpayment_loading").html('');
602 $("#payment_ajax-response").html('');
603 strs = data.split('#usces#');
604 $("table#payment-table").removeAttr("style");
605 if( -1 == strs[1] ){
606 $("#payment_ajax-response").html('<div class="error"><p>同じ支払方法名が存在します。</p></div>');
607 }else{
608 $("tbody#payment-list").html( strs[0] );
609 $("#newname").val("");
610 $("#newexplanation").val("");
611 $("#newsettlement").val('acting');
612 $("#newmodule").val("");
613 $("#payment-" + strs[1]).css({'background-color': '#FF4'});
614 $("#payment-" + strs[1]).animate({ 'background-color': '#FFFFEE' }, 2000 );
615 }
616 };
617 s.error = function(msg){
618 $("#payment_ajax-response").html(msg);
619 $("#newpayment_loading").html('');
620 };
621 $.ajax( s );
622 return false;
623 },
624
625 update : function(id) {
626 vn = document.getElementById('payment\[' + id + '\]\[name\]');
627 ve = document.getElementById('payment\[' + id + '\]\[explanation\]');
628 vs = document.getElementById('payment\[' + id + '\]\[settlement\]');
629 vm = document.getElementById('payment\[' + id + '\]\[module\]');
630 so = document.getElementById('payment\[' + id + '\]\[sort\]');
631 var name = $(vn).val();
632 var explanation = $(ve).val();
633 var settlement = $(vs).val();
634 var module = $(vm).val();
635 var sortid = $(so).val();
636 var s = payment.settings;
637
638 var mes = '';
639 if( '' == name ){
640 mes += '<p>支払方法名の値を�
641 �力してください。</p>';
642 }
643 if( 'acting' == settlement ) {//代行業�
644 決済のとき
645 if( '' == module ) {
646 mes += '<p>決済モジュールの値を�
647 �力してください。</p>';
648 }
649 }
650 if( '' != mes ){
651 $("#payment_ajax-response").html('<div class="error">' + mes + '</div>');
652 return false;
653 }
654
655 $("#payment_loading-" + id).html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
656
657 s.data = "action=payment_ajax&update=1&id=" + id + "&name=" + encodeURIComponent(name) + "&explanation=" + encodeURIComponent(explanation) + "&settlement=" + encodeURIComponent(settlement) + "&module=" + encodeURIComponent(module) + "&sort=" + sortid;
658 s.success = function(data, dataType){
659 $("#payment_loading-" + id).html('');
660 $("#payment_ajax-response").html("");
661 strs = data.split('#usces#');
662 if( -1 == strs[1] ){
663 $("#payment_ajax-response").html('<div class="error"><p>同じ支払方法名が存在します。</p></div>');
664 }else{
665 $("tbody#payment-list").html( strs[0] );
666 $("#payment-" + id).css({'background-color': '#FF4'});
667 $("#payment-" + id).animate({ 'background-color': '#FFFFEE' }, 2000 );
668 }
669 };
670 s.error = function(msg){
671 $("#payment_ajax-response").html(msg);
672 $("#newpayment_loading").html('');
673 };
674 $.ajax( s );
675 return false;
676 },
677
678 del : function(id) {
679 $("#payment-" + id).css({'background-color': '#F00'});
680 $("#payment-" + id).animate({ 'background-color': '#FFFFEE' }, 1000 );
681 var s = payment.settings;
682 s.data = "action=payment_ajax&delete=1&id=" + id;
683 s.success = function(data, dataType){
684 strs = data.split('#usces#');
685 $("tbody#payment-list").html( strs[0] );
686 };
687 s.error = function(msg){
688 $("#payment_ajax-response").html(msg);
689 };
690 $.ajax( s );
691 return false;
692 },
693
694 dosort : function( str ) {
695 if( !str ) return;
696 var meta_id_str = str.replace(/payment-/g, "");
697 var meta_ids = meta_id_str.split(',');
698 if( 2 > meta_ids.length ) return;
699
700 for(i=0; i<meta_ids.length; i++){
701 $("#payment_loading-" + meta_ids[i]).html('<img src="' + uscesL10n.USCES_PLUGIN_URL + '/images/loading.gif" />');
702 }
703 var s = payment.settings;
704 s.data = "action=payment_ajax&sort=1&idstr=" + encodeURIComponent(meta_id_str);
705 s.success = function(data, dataType){
706 strs = data.split('#usces#');
707 $("tbody#payment-list").html( strs[0] );
708 for(i=0; i<meta_ids.length; i++){
709 $("#payment_loading-" + meta_ids[i]).html('');
710 $("#payment-" + meta_ids[i]).css({'background-color': '#FF4'});
711 $("#payment-" + meta_ids[i]).animate({ 'background-color': '#FFFFEE' }, 2000 );
712 }
713 };
714 s.error = function(msg){
715 $("#payment_ajax-response").html('<div class="error"><p>error sort</p></div>');
716 };
717 $.ajax( s );
718 return false;
719 }
720 };
721
722 orderItem = {
723 settings: {
724 url: uscesL10n.requestFile,
725 type: 'POST',
726 cache: false,
727 success: function(data, dataType){
728 $("#newitemform").html( data );
729
730 },
731 error: function(msg){
732 $("#order-response").html(msg);
733 }
734 },
735
736 add2cart : function(newid, newsku) {
737 var ID = $("input[name='order_id']").val();
738 var cnum = $("#orderitemlist").children().length;
739 var priceob = $("input[name*='skuPrice']");
740 var quantob = $("input[name*='quant']");
741 var name = '';
742 var strs = '';
743 var post_ids = [];
744 var skus = [];
745 var optob;
746 var optvalue = '';
747 var query = 'action=order_item2cart_ajax&order_id='+ID;
748 for( var i = 0; i < cnum; i++) {
749 name = $(priceob[i]).attr("name");
750 strs = name.split('[');
751 post_ids[i] = strs[2].replace(/[\]]+$/g, '');
752 skus[i] = strs[3].replace(/[\]]+$/g, '');
753
754 query += "&skuPrice["+i+"]["+post_ids[i]+"]["+skus[i]+"]="+$("input[name='skuPrice\[" + i + "\]\[" + post_ids[i] + "\]\[" + skus[i] + "\]']").val();
755 query += "&quant["+i+"]["+post_ids[i]+"]["+skus[i]+"]="+$("input[name='quant\[" + i + "\]\[" + post_ids[i] + "\]\[" + skus[i] + "\]']").val();
756
757 optob = $("input[name*='optName\[" + i + "\]\[" + post_ids[i] + "\]\[" + skus[i] + "\]']");
758 optvalue = '';
759 for( var o = 0; o < optob.length; o++) {
760 //20110715ysk start 0000202
761 //optvalue = $("input[name='itemOption\[" + i + "\]\[" + post_ids[i] + "\]\[" + skus[i] + "\]\[" + $(optob[o]).val() + "\]']").val();
762 //if( '#NONE#' != optvalue){
763 // query += "&itemOption["+i+"]["+post_ids[i]+"]["+skus[i]+"][" + $(optob[o]).val() + "]="+optvalue;
764 //}
765 var cnt = 0;
766 $("input[name^='itemOption\[" + i + "\]\[" + post_ids[i] + "\]\[" + skus[i] + "\]\[" + $(optob[o]).val() + "\]\[']").each(function(idx, obj) {
767 cnt++;
768 });
769 if(0 < cnt) {
770 $("input[name^='itemOption\[" + i + "\]\[" + post_ids[i] + "\]\[" + skus[i] + "\]\[" + $(optob[o]).val() + "\]\[']").each(function(idx, obj) {
771 query += "&itemOption["+i+"]["+post_ids[i]+"]["+skus[i]+"][" + $(optob[o]).val() + "][" + $(this).val() + "]="+$(this).val();
772 });
773 } else {
774 optvalue = $("input[name='itemOption\["+i+"\]\["+post_ids[i]+"\]\["+skus[i]+"\]\["+$(optob[o]).val()+"\]']").val();
775 query += "&itemOption["+i+"]["+post_ids[i]+"]["+skus[i]+"]["+$(optob[o]).val()+"]="+optvalue;
776 }
777 //20110715ysk end
778 }
779 }
780 query += "&skuPrice["+cnum+"]["+newid+"]["+newsku+"]="+$("input[name='skuNEWPrice\[" + newid + "\]\[" + newsku + "\]']").val();
781 query += "&quant["+cnum+"]["+newid+"]["+newsku+"]=1";
782 var newoptob = $("input[name*='optNEWCode\[" + newid + "\]\[" + newsku + "\]']");
783 var newoptvalue = '';
784 var mes = '';
785 for( var n = 0; n < newoptob.length; n++) {
786 //20110715ysk start 0000202
787 //newoptvalue = $("select[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + $(newoptob[n]).val() + "\]']").val();
788 newoptvalue = $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + $(newoptob[n]).val() + "\]']").val();
789 var newoptclass = $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + $(newoptob[n]).val() + "\]']").attr("class");
790 var essential = $(":input[name='optNEWEssential\[" + newid + "\]\[" + newsku + "\]\[" + $(newoptob[n]).val() + "\]']").val();
791 switch(newoptclass) {
792 case 'iopt_select_multiple':
793 var sel = 0;
794 if( essential == 1 ) {
795 $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + $(newoptob[n]).val() + "\]'] option:selected").each(function(idx, obj) {
796 if( '#NONE#' != $(this).val()) {
797 sel++;
798 }
799 });
800 }
801 if( sel == 0 ) {
802 mes += decodeURIComponent($(newoptob[n]).val())+'を選択してください'+"\n";
803 } else {
804 $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + $(newoptob[n]).val() + "\]'] option:selected").each(function(idx, obj) {
805 if( '#NONE#' != $(this).val()) {
806 query += "&itemOption["+cnum+"]["+newid+"]["+newsku+"][" + $(newoptob[n]).val() + "][" + $(this).val() + "]="+$(this).val();
807 }
808 });
809 }
810 break;
811 case 'iopt_select':
812 if( essential == 1 && newoptvalue == '#NONE#' ) {
813 mes += decodeURIComponent($(newoptob[n]).val())+'を選択してください'+"\n";
814 } else {
815 query += "&itemOption["+cnum+"]["+newid+"]["+newsku+"][" + $(newoptob[n]).val() + "]="+newoptvalue;
816 }
817 break;
818 case 'iopt_text':
819 case 'iopt_textarea':
820 if( essential == 1 && newoptvalue == '' ) {
821 mes += decodeURIComponent($(newoptob[n]).val())+'を�
822 �力してください'+"\n";
823 } else {
824 query += "&itemOption["+cnum+"]["+newid+"]["+newsku+"][" + $(newoptob[n]).val() + "]="+newoptvalue;
825 }
826 break;
827 }
828 //20110715ysk end
829 }
830 if( mes != '' ) {
831 alert(mes);
832 return;
833 }
834
835 var s = orderItem.settings;
836 s.data = query;
837 s.success = function(data, dataType){
838 //20120613ysk start 0000500
839 //if(data == 'nodata'){return;}
840 strs = data.split('#usces#');
841 if( 0 > parseInt(strs[0]) ) return;
842 //20120613ysk end
843 var pict = "<img src='" + $("#newitemform img").attr("src") + "' width='" + $("#newitemform img").attr("width") + "' height='" + $("#newitemform img").attr("height") + "' alt='' />";
844 //20120613ysk start 0000500
845 //var itemName = $("input[name='itemNEWName\["+newid+"\]\["+newsku+"\]']").val() + ' ' + $("input[name='itemNEWCode\["+newid+"\]\["+newsku+"\]']").val() + ' ' + $("input[name='skuNEWName\["+newid+"\]\["+newsku+"\]']").val();
846 var itemName = strs[1];
847 //20120613ysk end
848 var zaiko = $("input[name='zaiNEWko\["+newid+"\]\["+newsku+"\]']").val();
849 //20120528ysk start 0000485
850 //var price = "<input name='skuPrice[" + cnum + "][" + newid + "][" + newsku + "]' class='text price' type='text' value='" + $("input[name='skuNEWPrice\["+newid+"\]\["+newsku+"\]']").val() + "' onchange='orderfunc.sumPrice()' />";
851 //var quant = "<input name='quant[" + cnum + "][" + newid + "][" + newsku + "]' class='text quantity' type='text' value='1' onchange='orderfunc.sumPrice()' />";
852 //20120613ysk start 0000500
853 //var price = "<input name='skuPrice[" + cnum + "][" + newid + "][" + newsku + "]' class='text price' type='text' value='" + $("input[name='skuNEWPrice\["+newid+"\]\["+newsku+"\]']").val() + "' />";
854 var price = "<input name='skuPrice[" + cnum + "][" + newid + "][" + newsku + "]' class='text price' type='text' value='" + strs[0] + "' />";
855 //20120613ysk end
856 var quant = "<input name='quant[" + cnum + "][" + newid + "][" + newsku + "]' class='text quantity' type='text' value='1' />";
857 //20120528ysk end
858 var delButton = "<input name='delButton[" + cnum + "][" + newid + "][" + newsku + "]' class='delCartButton' type='submit' value='削除' />\n<input name='advance[" + cnum + "][" + newid + "][" + newsku + "]' type='hidden' value='' />\n";
859
860 var sucoptob = $("input[name*='optNEWCode\[" + newid + "\]\[" + newsku + "\]']");
861 var skuOptValue = '';
862 var skuoptval = '';
863 var hiddenopt = '';
864 var hiddenoptname = '';
865 for( var i = 0; i < sucoptob.length; i++) {
866 skuoptcode = $(sucoptob[i]).val();
867 skuoptname = decodeURIComponent($(sucoptob[i]).val());
868 hiddenoptname += "<input name='optName[" + newid + "][" + newsku + "][" + skuoptcode + "]' type='hidden' value='"+skuoptcode+"' />\n";
869 //20110715ysk start 0000202
870 //skuoptval = $("select[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + skuoptcode + "\]']").val();
871 skuoptval = $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + skuoptcode + "\]']").val();
872 //if( '#NONE#' != skuoptval){
873 // skuOptValue += skuoptval + ' ';
874 // hiddenopt += "<input name='itemOption[" + cnum + "][" + newid + "][" + newsku + "][" + skuoptcode + "]' type='hidden' value='"+skuoptval+"' />";
875 // hiddenoptname += "<input name='optName[" + cnum + "][" + newid + "][" + newsku + "][" + skuoptcode + "]' type='hidden' value='"+skuoptcode+"' />";
876 //}
877 skuOptValue += skuoptname + ' : ';
878 var sucoptclass = $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + skuoptcode + "\]']").attr("class");
879 switch(sucoptclass) {
880 case 'iopt_select_multiple':
881 var c = '';
882 $(":input[name='itemNEWOption\[" + newid + "\]\[" + newsku + "\]\[" + skuoptcode + "\]'] option:selected").each(function(idx, obj) {
883 if( '#NONE#' != $(this).val() ) {
884 skuOptValue += c + $(this).val();
885 c = ', ';
886 hiddenopt += "<input name='itemOption[" + cnum + "][" + newid + "][" + newsku + "][" + skuoptcode + "][" + encodeURIComponent($(this).val()) + "]' type='hidden' value='"+encodeURIComponent($(this).val())+"' />\n";
887 }
888 });
889 break;
890 case 'iopt_select':
891 if( '#NONE#' != skuoptval ) {
892 skuOptValue += skuoptval;
893 hiddenopt += "<input name='itemOption[" + cnum + "][" + newid + "][" + newsku + "][" + skuoptcode + "]' type='hidden' value='"+encodeURIComponent(skuoptval)+"' />\n";
894 }
895 break;
896 case 'iopt_text':
897 case 'iopt_textarea':
898 skuOptValue += skuoptval;
899 hiddenopt += "<input name='itemOption[" + cnum + "][" + newid + "][" + newsku + "][" + skuoptcode + "]' type='hidden' value='"+encodeURIComponent(skuoptval)+"' />\n";
900 break;
901 }
902 skuOptValue += '<br />';
903 //20110715ysk end
904 }
905 var htm = "<tr>\n";
906 htm += "<td>"+(cnum+1)+"</td>\n";
907 htm += "<td>"+pict+"</td>\n";
908 htm += "<td class='aleft'>"+itemName+"<br />"+skuOptValue+"</td>\n";
909 htm += "<td>"+price+"</td>\n";
910 htm += "<td>"+quant+"</td>\n";
911 htm += "<td id='sub_total["+cnum+"]' class='aright'>&nbsp;</td>\n";
912 htm += "<td>"+zaiko+"</td>\n";
913 htm += "<td>"+delButton+hiddenoptname+hiddenopt+"</td>\n";
914 htm += "</tr>\n";
915
916 $("#orderitemlist").append( htm );
917 //20120307ysk start 0000432
918 orderfunc.sumPrice(null);
919
920 $("input[name='skuPrice["+cnum+"]["+newid+"]["+newsku+"]']").bind("change", {index:cnum, post_id:newid, sku:newsku}, function(e){ orderfunc.sumPrice($(this)); });
921 $("input[name='quant["+cnum+"]["+newid+"]["+newsku+"]']").bind("change", {index:cnum, post_id:newid, sku:newsku}, function(e){ orderfunc.sumPrice($(this)); });
922 $("input[name='delButton["+cnum+"]["+newid+"]["+newsku+"]']").bind("click", {index:cnum, post_id:newid, sku:newsku}, function(e){ return delConfirm($(this)); });
923 //20120307ysk end
924 //20120528ysk start 0000485
925 $("input[name*='skuPrice[" + cnum + "][" + newid + "][" + newsku + "]']").bind("change", function(){ orderfunc.sumPrice($(this)); });
926 $("input[name*='quant[" + cnum + "][" + newid + "][" + newsku + "]']").bind("change", function(){ orderfunc.sumPrice($(this)); });
927 $("input[name*='delButton[" + cnum + "][" + newid + "][" + newsku + "]']").bind("click", function(){ orderfunc.sumPrice(null); });
928 //20120528ysk end
929 };
930 $.ajax( s );
931 return false;
932 },
933
934 getitem : function() {
935 if($("#newitemcode").val() == '') return;
936
937 var itemcode = $("#newitemcode").val();
938 var s = orderItem.settings;
939 s.data = "action=order_item_ajax&mode=get_order_item&itemcode=" + encodeURIComponent(itemcode);
940 s.success = function(data, dataType){
941 $("#newitemform").html( data );
942 };
943 $.ajax( s );
944 return false;
945 },
946
947 getmailmessage : function( flag ) {
948 $("#sendmailmessage").val( uscesL10n.now_loading );
949 var order_id = $("input[name='order_id']").val();
950 var s = orderItem.settings;
951 s.data = "action=order_item_ajax&mode=" + flag + "&order_id=" + order_id;
952 s.success = function(data, dataType){
953 $("#sendmailmessage").val( data );
954 };
955 $.ajax( s );
956 return false;
957 }
958
959 };
960
961 uscesInformation = {
962 settings: {
963 url: 'http://www.welcart.com/util/welcart_information.php',
964 type: 'POST',
965 cache: false,
966 success: function(data, dataType){
967 //$("#newitemform").html( data );
968
969 },
970 error: function(msg){
971 $("#wc_information").html( 'error : ' + msg );
972 }
973 },
974
975 getinfo : function() {
976 var s = uscesInformation.settings;
977 s.data = "v=" + encodeURIComponent(uscesL10n.version);
978 s.data += "&wcid=" + encodeURIComponent(uscesL10n.wcid);
979 s.data += "&wcurl=" + encodeURIComponent(uscesL10n.USCES_PLUGIN_URL);
980 s.data += "&locale=" + encodeURIComponent(uscesL10n.locale);
981 s.data += "&theme=" + encodeURIComponent(uscesL10n.theme);
982 s.data += "&wcex=";
983 var de = '';
984 for( var i = 0; i < uscesL10n.wcex.length; i++) {
985 s.data += de + encodeURIComponent(uscesL10n.wcex[i]);
986 de =',';
987 }
988 s.success = function(data, dataType){
989 $("#wc_information").html( data );
990 };
991 $.ajax( s );
992 return false;
993 },
994
995 getinfo2 : function() {
996 var s = uscesInformation.settings;
997 s.url = uscesL10n.requestFile;
998 s.data = 'action=getinfo_ajax';
999 s.success = function(data, dataType){
1000 $("#wc_information").html( data );
1001 };
1002 $.ajax( s );
1003 return false;
1004 }
1005
1006 };
1007
1008 uscesItem = {
1009
1010 newdraft : function(itemName) {
1011 if(jQuery("#title").val().length == 0 || jQuery("#title").val() == '') {
1012 $("#title").val(itemName);
1013 }
1014 //autosave();
1015
1016 },
1017
1018 cahngepict : function(code) {
1019 $("div#item-select-pict").html(code);
1020 },
1021
1022 trim : function(target){
1023 target = target.replace(/(^\s+)|(\s+$)|(^\n+)|(\n+$)/g, "");
1024 return target;
1025 }
1026
1027 };
1028
1029 })(jQuery);
1030
1031 function usces_check_num(obj) {
1032 if(!checkNum(obj.val())) {
1033 alert('数値で�
1034 �力して下さい。');
1035 obj.focus();
1036 return false;
1037 }
1038 return true;
1039 }
1040 function usces_check_money(obj) {
1041 if(!checkMoney(obj.val())) {
1042 alert('数値で�
1043 �力して下さい。');
1044 obj.focus();
1045 return false;
1046 }
1047 return true;
1048 }
1049 function checkAlp(argValue) {
1050 if(argValue.match(/[^a-z|^A-Z]/g)) {
1051 return false;
1052 }
1053 return true;
1054 }
1055 function checkCode(argValue) {
1056 if(argValue.match(/[^0-9|^a-z|^A-Z|^\-|^_]/g)) {
1057 return false;
1058 }
1059 return true;
1060 }
1061 function checkNum(argValue) {
1062 if(argValue.match(/[^0-9]/g)) {
1063 return false;
1064 }
1065 return true;
1066 }
1067 function checkMoney(argValue) {
1068 if(argValue.match(/[^0-9|^\.]/g)) {
1069 return false;
1070 }
1071 return true;
1072 }
1073 function checkPrice(argValue) {
1074 if(argValue.match(/[^0-9|^\-|^\,|^\.]/g)) {
1075 return false;
1076 }
1077 return true;
1078 }
1079