PageSourceSearch

https://school.js88.com/javascripts/seikyu_cart.js?v=20260527_1

js js88.com collected 2026-10-02 02:53:24 UTC 51,853 bytes, 1,037 lines download raw bytes

1const CART_MAX_COUNT = 30; // カートに追加可能な最大件数
2
3/**************************************************************
4**
5**                         初期処理
6**
7***************************************************************/
8
9    //カート追加時ポップアップ画像ファイルパス
10    var popup_img = "/images/popup_add_request.png";
11    //切り替え画像ファイルパス("資料請求カートに追加されました"の画像)
12    var requested_seikyu_img = "/common_img/19p/btn_view_request.png";
13    
14    //画像が切り替わるので元のボタン画像のファイルパスを記録しておく変数を用意
15    var button = [];
16    var count = 0;
17    //チェックボックスのセレクタ(特別対応の際はここに追加)
18    var parentClassNames = [".area-check", ".td-btn", ".checkArea", ".checkboxArea", ".check_area", ".scl_gakubulist >", ".scl_gakkalist >",".CheckBox02"];//親要素クラス名
19    var checkBoxSelectors = [" :checkbox[name^='su']"];//子要素セレクタ
20    var checkbox = [];//チェックボックス用
21    $.each(parentClassNames,function(index1,val1) {
22        $.each(checkBoxSelectors,function(index2,val2) {
23            checkbox.push(val1 + val2);
24        });
25    });
26    
27    //特集系ページ対応
28    var regexpSpecial = new RegExp(/\/special\/(campus-life|campus-move\/list|campus-photo)/);
29    //現在のページのurl
30    var thisUrl = window.location.href;
31    var url = new URL(thisUrl);
32    var kou_flg = url.pathname == "/pamph/list" ? 1 : 0;
33
34    //ページ読み込み時に現在のクッキーから選択済みのものを取得し、ボタンに変更を加える。
35    $(function() {
36        // 資料請求カートの初期設定を行います
37        if( location.pathname === '/' ){
38        }else{
39          initCartBar();
40        }
41        cookielist = get_cookie("seikyu_index");
42        $.each(cookielist, function(index, val) {
43            var ischecked = checkbox.join("[value='" + val + "'],") + "[value='" + val + "']"
44            if (!$(ischecked).prop('checked')) {
45                $(ischecked).prop('checked',true);
46            }
47        });
48        $("a[href^='/seikyu?su='] img").each(function() {
49            //広告ページのパンフレット画像は適応外(特別対応)
50            var pamph = $(this).parent("a[href^='/seikyu']").parent(".basePamphImg");
51            var pamph2 = $(this).parent("a[href^='/seikyu']").parent(".img_scl");
52            if (pamph.length < 1 && pamph2.length < 1) {
53                button.push($(this).attr("src"));
54            }
55        });
56    });
57
58    //画像のサイズ取得等を行うためonload時に呼び出す。
59    
60    //ボタンの切り替えはしないように修正 #52150
61    if (false){
62    
63    //特定のページでは読み込まないようにする #19301
64    if (!thisUrl.match(/\/common\/hplink\/list/)){
65    jQuery.event.add(window, "load", function(){
66
67        $("a[href^='/seikyu?su='] img").parent("a[href^='/seikyu']").each(function(i, elem) {
68            //ページ内の請求ボタンの動作、及び画像の切り替えを行う
69            var pamph = $(elem).parent(".basePamphImg");
70            var pamph2 = $(elem).parent(".img_scl");
71            if (pamph.length < 1 && pamph2.length < 1) {
72                var scl_cd = $(elem).attr("href").split("su=")[1];
73                var su = scl_cd.split("_");
74                var scl_seikyu_cd = su[0] + "_" + su[1];
75                //aタグにvalueとして請求コードを保持,リンク先を変更
76                $(elem).attr({
77                    "value": scl_cd,
78                    "href": "/seikyu"
79                });
80                if (su != null && su.length > 1 && cookielist.indexOf("" + scl_seikyu_cd) > -1) {//カートに登録済み
81                    var seikyu_button = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "'],a[href$='" + scl_seikyu_cd + "']");
82                    var seikyu_button_1 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "_1'],a[href$='" + scl_seikyu_cd + "_1']");
83                    if ((($(elem).val() == scl_seikyu_cd + "_1" && seikyu_button.length == 0) || ($(elem).val() == scl_seikyu_cd + "_2" && seikyu_button.length == 0 && seikyu_button_1.length == 0) || ($(elem).val() == scl_seikyu_cd && $(seikyu_button).index(elem) != -1))
84                        || thisUrl.match(regexpSpecial) || thisUrl.match(/\/(scl_h|scl_j|scl_e|scl_p|scl_k|scl_o)\/[0-9]+/)
85                        || thisUrl.match(/(\/work\/sclbase|\/work\/photo|\/work\/obog|\/work\/map)/)) {
86                        var picWidth = $(elem).find("img").width();
87                        $(elem).find("img").attr({
88                            "width": picWidth,
89                            "src": requested_seikyu_img
90                        });
91                        delCartLink(elem);//削除処理リンクをボタン下部に追加
92                        var scl_check = $(checkbox.join("[value^='" + scl_seikyu_cd + "'],") + "[value^='" + scl_seikyu_cd + "']");
93                        scl_check.prop("checked",true);
94                    } else {
95                        $(elem).find("img").hide();
96                        var cart = $(elem).parent(".cartButton");
97                        var allcart = $(".cartButton");
98                        var $research = $(elem).parents(".block_right").find(".scl_request");
99                        if (((su[1].indexOf("d") > -1 && cart.length > 0) && $(allcart).index(cart) == 0)
100                             || (thisUrl.match("/special/research/") && $research.index($(elem).parent(".scl_request")) == 0)) {//学部学科ページの資料請求の際もカートのボタンを表示する(特別対å¿
100œ)
101                            $(elem).find("img").show();
102                            var picWidth = $(elem).find("img").width();
103                            $(elem).find("img").attr({
104                                "width": picWidth,
105                                "src": requested_seikyu_img
106                            });
107                            delCartLink(elem);//削除処理リンクをボタン下部に追加
108                        }
109                    }
110                    if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
111                        setSpaceSpecial(elem, true);
112                    }
113                } else {//カートに非登録
114                    $(elem).attr("onclick","javascript:return false;");
115                }
116            }
117            $(elem).find("img")[0].onload = function() {
118                setHeightJyukenc();
119            };
120        });
121        
122    });
123    }
124    }
125
126/**************************************************************
127**
128**                         ボタン切り替え用
129**
130***************************************************************/
131    //特定のページでは読み込まないようにする #19301
132    if (!thisUrl.match(/\/common\/hplink\/list/)){
133    $(function() {
134        //動的に作成した要素のイベントを判定するためのセレクタ
135        var cart_path = "#cartBar #cartFilter .cartButton ";
136        var eventClick = "a[href='/seikyu'][value]," + cart_path + "a[href='/seikyu'][value]";
137        var eventDelete = ".delrequest_cart," + cart_path + ".delrequest_cart";
138        
139        //ボタンクリック時の画像と動作の切り替え処理
140        $("body,li,p").on('click', eventClick, function() {
141            if ($(this).prop("onclick")) {//通常ボタン時のみ処理を行う
142                var scl_cd = $(this).val();
143
144                if(thisUrl.match(/(\/media_mix\/list)/)) {
145                    scl_cd = $(this).attr("data-scl_id");
146                }
147
148                if (setCartAjax(scl_cd)) {
149                    var seikyu_cd = scl_cd.split("_");
150                    var scl_seikyu_cd = seikyu_cd[0] + "_" + seikyu_cd[1];
151                    
152                    //ボタンの切り替えはしないように修正 #52150
153                    if (false){
154                    $("a[href^='/seikyu'][value^='" + scl_seikyu_cd + "']").each(function(i, elem){
155                        var siryou = $("a[href^='/seikyu'][value='" + scl_seikyu_cd + "']");
156                        var siryou_1 = $("a[href^='/seikyu'][value='" + scl_seikyu_cd + "_1']");
157                        if ((($(elem).val() == scl_seikyu_cd + "_1" && siryou.length == 0) || ($(elem).val() == scl_seikyu_cd + "_2" && siryou.length == 0 && siryou_1.length == 0) || ($(elem).val() == scl_seikyu_cd && $(siryou).index(elem) != -1))
158                            || thisUrl.match(regexpSpecial) || thisUrl.match(/\/(scl_h|scl_j|scl_e|scl_p|scl_k|scl_o)\/[0-9]+/)
159                            || thisUrl.match(/(\/work\/sclbase|\/work\/photo|\/work\/obog|\/work\/map)/)) {
160                            setCartList(elem);
161                            //削除処理リンクをボタン下部に追加
162                            delCartLink(elem);
163
164                        } else {
165                            $(elem).find("img").hide();
166                            var cart = $(elem).parent(".cartButton");
167                            var allcart = $(".cartButton");
168                            var $research = $(elem).parents(".block_right").find(".scl_request");
169                            if (((seikyu_cd[1].indexOf("d") > -1 && cart.length > 0) && $(allcart).index(cart) == 0)
170                                || (thisUrl.match("/special/research/") && $research.index($(elem).parent(".scl_request")) == 0)) {//学部学科ページの資料請求の際もカートのボタンを表示する(特別対応)
171                                $(elem).find("img").show();
172                                setCartList(elem);
173                                //削除処理リンクをボタン下部に追加
174                                delCartLink(elem);
175                            }
176                        }
177                        if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
178                            setSpaceSpecial(elem, true);
179                        }
180                    });
181                    }
182                }
183                return false;
184            }
185        });
186        
187        //カート登録時に表示される削除するリンクの処理
188        $("body,li,p").on('click',eventDelete ,function() {
189            //var scl_cd = $(this).prev("a[href='/seikyu'][value]").val();
190            var scl_cd = $(this).val();
191            if(thisUrl.match(/(\/media_mix\/list)/)) {
192                scl_cd = $(this).prev().attr("data-scl_id");
193            }
194            var seikyu_cd = scl_cd.split("_");
195            
196            $("a[href='/seikyu'][value^='" + seikyu_cd[0] + "_" + seikyu_cd[1] + "']").each(function(i, elem){
197                delCartList(elem);
198                //削除処理リンクを削除
199                $(elem).siblings('.delrequest_cart').remove();
200                $(elem).find("img").show();
201                if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
202                    setSpaceSpecial(elem, false);
203                }
204                if (seikyu_cd[1] === "0") {
205                    $('input[type=checkbox][name^="su"][value^="' + seikyu_cd[0] + '_d"]').each(function(ii, o){
206                        $(o).prop('checked', false);
207                    });
208                }
209            });
210            delCartAjax(scl_cd);
211            return false;
212        });
213       
214        //チェックボックスとボタンの切り替え動作を一致させる #17568 liveに修正、他のonも修正するべきだろうが影響画面が多いのでとりあえずこれのみ対象とした。
215        if (!thisUrl.match(/\/scl_dai\/center_data/)){ //エラーが出るため共通テストページ以外読み込み
216            $(checkbox.join(", ")).live("click", function() {
217                var $dom = $(this);
218                var prmSclId = $dom.val();
219                var scl_seikyu_cd = prmSclId.split("_")[0] + "_" + prmSclId.split("_")[1];
220                if (prmSclId != "" && prmSclId != null) {
221                    var seikyu_button = $("a[href='/seikyu'][value^='" + scl_seikyu_cd + "']");
222                    if ($dom.prop('checked')) {
223                        if (setCartAjax(prmSclId)) {
224                        
225                        //ボタンの切り替えはしないように修正 #52150
226                        if(false){
227                        
228                            var seikyu_button_0 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "']");
229                            var seikyu_button_1 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "_1']");
230                            $(seikyu_button).each(function(i, elem) {
231                                if ((($(elem).val() == scl_seikyu_cd + "_1" && seikyu_button_0.length == 0) || ($(elem).val() == scl_seikyu_cd + "_2" && seikyu_button_0.length == 0 && seikyu_button_1.length == 0) || ($(elem).val() == scl_seikyu_cd && seikyu_button_0.index(elem) != -1))
232                                    || thisUrl.match(regexpSpecial) || thisUrl.match(/\/(scl_h|scl_j|scl_e|scl_p|scl_k|scl_o)\/[0-9]+/)
233                                    || thisUrl.match(/(\/work\/sclbase|\/work\/photo|\/work\/obog|\/work\/map)/)) {
234                                    setCartList(elem);
235                                    delCartLink(elem);
236                                } else {
237                                    $(elem).find("img").hide();
238                                    var cart = $(elem).parent(".cartButton");
239                                    var allcart = $(".cartButton");
240                                    var $research = $(elem).parents(".block_right").find(".scl_request");
241                                    if (((prmSclId.split("_")[1].indexOf("d") > -1 && cart.length > 0) && $(allcart).index(cart) == 0)
242                                        || (thisUrl.match("/special/research/") && $research.index($(elem).parent(".scl_request")) == 0)) {//学部学科ページの資料請求の際もカートのボタンを表示する(特別対å¿
242œ)
243                                        $(elem).find("img").show();
244                                        setCartList(elem);
245                                        //削除処理リンクをボタン下部に追加
246                                        delCartLink(elem);
247                                    }
248                                }
249                                if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
250                                    setSpaceSpecial(elem, true);
251                                }
252                            });
253                            
254                        }
255                            
256                        } else {
257                            // 追加出来なかった場合はチェックを外す
258                            $dom.prop('checked', false);
259                        }
260                    } else {
261                        $(seikyu_button).each(function(i, elem) {
262                            delCartList(elem);
263                            $(elem).siblings('.delrequest_cart').remove();
264                            $(elem).find("img").show();
265                            if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
266                                setSpaceSpecial(elem, false);
267                            }
268                        });
269                        delCartAjax(prmSclId);
270                    }
271                }
272            });
273        }
274        
275        //チェックボックスとボタンの切り替え動作を一致させる(一括でチェック)
276        $(".check_t,#check_t").click(function() {
277            var allcheck = [];
278            cookielist = get_cookie("seikyu_index");
279            $('.all,.area-check').find('input[type=checkbox][name^="su"]').each(function(index, data) {
280                var prmSclId = $(data).val();
281                if (cookielist.indexOf(prmSclId) < 0) {
282                    if (thisUrl.match(regexpSpecial)) {
283                        var parentTr = $(data).parents("tr");
284                        var elem = $(parentTr).find("a[href='/seikyu']");
285                        setCartList(elem);
286                        delCartLink(elem);
287                        if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
288                            setSpaceSpecial(elem, true);
289                        }
290                    } else {
291                        var scl_seikyu_cd = prmSclId.split("_")[0] + "_" + prmSclId.split("_")[1];
292                        var seikyu_button = $("a[href='/seikyu'][value^='" + scl_seikyu_cd + "']");
293                        var seikyu_button_0 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "']");
294                        var seikyu_button_1 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "_1']");
295                        $(seikyu_button).each(function(i, elem) {
296                            if (($(elem).val() == scl_seikyu_cd + "_1" && seikyu_button_0.length == 0) || ($(elem).val() == scl_seikyu_cd + "_2" && seikyu_button_0.length == 0 && seikyu_button_1.length == 0) || ($(elem).val() == scl_seikyu_cd && seikyu_button_0.index(elem) != -1)) {
297                                setCartList(elem);
298                                delCartLink(elem);
299                            } else {
300                                $(elem).find("img").hide();
301                                var $research = $(elem).parents(".block_right").find(".scl_request");
302                                if ((thisUrl.match("/special/research/") && $research.index($(elem).parent(".scl_request")) == 0)) {//学部学科ページの資料請求の際もカートのボタンを表示する(特別対応)
303                                    $(elem).find("img").show();
304                                    setCartList(elem);
305                                    //削除処理リンクをボタン下部に追加
306                                    delCartLink(elem);
307                                }
308                            }
309                            if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
310                                setSpaceSpecial(elem, true);
311                            }
312                        });
313                    }
314                    allcheck.push(prmSclId);
315                }
316            });
317            if ( allcheck.length > 0) {
318                setAllCheckCartAjax(allcheck);
319            }
320        });
321        
322        //チェックボックスとボタンの切り替え動作を一致させる(一括でチェック)
323        $(".check_t1").click(function() {
324            var allcheck = [];
325            cookielist = get_cookie("seikyu_index");
326            $('.all1,.area-check').find('input[type=checkbox][name^="su"]').each(function(index, data) {
327                var prmSclId = $(data).val();
328                if (cookielist.indexOf(prmSclId) < 0) {
329                    if (thisUrl.match(regexpSpecial)) {
330                        var parentTr = $(data).parents("tr");
331                        var elem = $(parentTr).find("a[href='/seikyu']");
332                        setCartList(elem);
333                        delCartLink(elem);
334                        if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
335                            setSpaceSpecial(elem, true);
336                        }
337                    } else {
338                        var scl_seikyu_cd = prmSclId.split("_")[0] + "_" + prmSclId.split("_")[1];
339                        var seikyu_button = $("a[href='/seikyu'][value^='" + scl_seikyu_cd + "']");
340                        var seikyu_button_0 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "']");
341                        var seikyu_button_1 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "_1']");
342                        $(seikyu_button).each(function(i, elem) {
343                            if (($(elem).val() == scl_seikyu_cd + "_1" && seikyu_button_0.length == 0) || ($(elem).val() == scl_seikyu_cd + "_2" && seikyu_button_0.length == 0 && seikyu_button_1.length == 0) || ($(elem).val() == scl_seikyu_cd && seikyu_button_0.index(elem) != -1)) {
344                                setCartList(elem);
345                                delCartLink(elem);
346                            } else {
347                                $(elem).find("img").hide();
348                                var $research = $(elem).parents(".block_right").find(".scl_request");
349                                if ((thisUrl.match("/special/research/") && $research.index($(elem).parent(".scl_request")) == 0)) {//学部学科ページの資料請求の際もカートのボタンを表示する(特別対å¿
349œ)
350                                    $(elem).find("img").show();
351                                    setCartList(elem);
352                                    //削除処理リンクをボタン下部に追加
353                                    delCartLink(elem);
354                                }
355                            }
356                            if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
357                                setSpaceSpecial(elem, true);
358                            }
359                        });
360                    }
361                    allcheck.push(prmSclId);
362                }
363            });
364            if ( allcheck.length > 0) {
365                setAllCheckCartAjax(allcheck);
366            }
367        });
368        
369       //チェックボックスとボタンの切り替え動作を一致させる(一括でチェック)
370        $(".check_t2").click(function() {
371            var allcheck = [];
372            cookielist = get_cookie("seikyu_index");
373            $('.all2,.area-check').find('input[type=checkbox][name^="su"]').each(function(index, data) {
374                var prmSclId = $(data).val();
375                if (cookielist.indexOf(prmSclId) < 0) {
376                    if (thisUrl.match(regexpSpecial)) {
377                        var parentTr = $(data).parents("tr");
378                        var elem = $(parentTr).find("a[href='/seikyu']");
379                        setCartList(elem);
380                        delCartLink(elem);
381                        if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
382                            setSpaceSpecial(elem, true);
383                        }
384                    } else {
385                        var scl_seikyu_cd = prmSclId.split("_")[0] + "_" + prmSclId.split("_")[1];
386                        var seikyu_button = $("a[href='/seikyu'][value^='" + scl_seikyu_cd + "']");
387                        var seikyu_button_0 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "']");
388                        var seikyu_button_1 = $("a[href='/seikyu'][value='" + scl_seikyu_cd + "_1']");
389                        $(seikyu_button).each(function(i, elem) {
390                            if (($(elem).val() == scl_seikyu_cd + "_1" && seikyu_button_0.length == 0) || ($(elem).val() == scl_seikyu_cd + "_2" && seikyu_button_0.length == 0 && seikyu_button_1.length == 0) || ($(elem).val() == scl_seikyu_cd && seikyu_button_0.index(elem) != -1)) {
391                                setCartList(elem);
392                                delCartLink(elem);
393                            } else {
394                                $(elem).find("img").hide();
395                                var $research = $(elem).parents(".block_right").find(".scl_request");
396                                if ((thisUrl.match("/special/research/") && $research.index($(elem).parent(".scl_request")) == 0)) {//学部学科ページの資料請求の際もカートのボタンを表示する(特別対応)
397                                    $(elem).find("img").show();
398                                    setCartList(elem);
399                                    //削除処理リンクをボタン下部に追加
400                                    delCartLink(elem);
401                                }
402                            }
403                            if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
404                                setSpaceSpecial(elem, true);
405                            }
406                        });
407                    }
408                    allcheck.push(prmSclId);
409                }
410            });
411            if ( allcheck.length > 0) {
412                setAllCheckCartAjax(allcheck);
413            }
414        });        
415        
416        //チェックボックスとボタンの切り替え動作を一致させる(一括でチェック外し)
417        $(".check_f,#check_f").click(function() {
418            var allcheck = [];
419            $('.all,.area-check').find('input[type=checkbox]').each(function(index, data){
420                var prmSclId = $(data).val();
421                var scl_seikyu_cd = prmSclId.split("_")[0] + "_" + prmSclId.split("_")[1];
422                var seikyu_button = $("a[href='/seikyu'][value^='" + scl_seikyu_cd + "']");
423                $(seikyu_button).each(function(i, elem) {
424                    delCartList(elem);
425                    $(elem).siblings('.delrequest_cart').remove();
426                    $(elem).find("img").show();
427                    if (thisUrl.match("/special/") && $(elem).parent(".scl_request").length != 0) {
428                        setSpaceSpecial(elem, false);
429                    }
430                });
431                allcheck.push(prmSclId);
432            });
433            if ( allcheck.length > 0) {
434                delAllCheckCartAjax(allcheck);
435            }
436        });
437        
438        //特別対応:高校・中学の一括請求ページのカート追加対応を行う
439        $("#ikkatsuRst .ikkatsuList .area-check").find("input[type=checkbox][name^='su']").change(function(){
440            if ($(this).prop("checked")) {
441                setCartAjax($(this).val());
442            } else {
443                delCartAjax($(this).val());
444            }
445        });
446        
447        //特別対応:高校・中学の一括請求ページのカート追加対応を行う
448        $("#ikkatsuRst .ikkatsuList .mar-tb5").find("a").click(function(){
449            var $checked = $(this).parents("li").find(".area-check input[type=checkbox][name^='su']");
450            if (!$checked.prop("checked")) {
451                setCartAjax($checked.val());
452            } else {
453                delCartAjax($checked.val());
454            }
455        });
456        
457    });
458    }
459
460    //カートに登録されていない場合のボタンの処理
461    function setCartList(elem) {
462        setPosition($("#popupAddCart"));
463        
464        //ボタンの切り替えはしないように修正 #52150
465        if(false){
466        
467        if (thisUrl.match("/catalog/naruniwa/guide")) {
468            $(elem).find("img").css("display", "inline");
469        }
470        var picWidth = $(elem).find("img").width();
471        $(elem).find("img").attr("width", picWidth);
472        $(elem).find("img").prop("src", requested_seikyu_img);
473        $(elem).removeAttr("onclick");
474        
475        }
476        
477        var scl_cd = $(elem).val();
478        var seikyu_part = scl_cd.split("_")[0] + "_" + scl_cd.split("_")[1];
479        var scl_check = checkbox.join("[value^='" + seikyu_part + "'], ") + "[value^='" + seikyu_part + "']";
480        $(scl_check).prop("checked", true);
481    }
482
483    //カートに登録されている場合の削除リンクの処理
484    function delCartList(elem) {
485    
486    //ボタンの切り替えはしないように修正 #52150
487    if(false){
488    
489        var imgTag = $(elem).find("img");
490        $(imgTag).prop("src", button[$("a[href='/seikyu'][value] img").index(imgTag)]);
491        $(elem).attr("onclick","javascript:return false;");
492    }
493        var scl_cd = $(elem).val();
494        var seikyu_part = scl_cd.split("_")[0] + "_" + scl_cd.split("_")[1];
495        var scl_check = checkbox.join("[value^='" + seikyu_part + "'], ") + "[value^='" + seikyu_part + "']";
496        $(scl_check).prop("checked", false);
497    }
498
499    /**
500     * 引き数に渡されたIDの配列から、実際にカートに追加可能なIDの配列を先頭から抽出して返します。
501     * 結果的に引き数に渡された配列よりも、実際に追加可能な配列が少なくなる場合は、最大件数に到達したことを通知するポップアップを表示します。
502     * @param sclIds カートに追加するIDの配列
503     * @return 実際にカートに追加可能なIDの配列
504     */
505    function getActualCartAddableIds(sclIds) {
506        var addableIds = [];
507
508        var cookie = get_cookie("seikyu_index");
509        $.each(sclIds, function (index, value) {
510            if (!cookie.includes(value) && !addableIds.includes(value)) {
511                addableIds.push(value);
512            }
513        });
514        
515        if (CART_MAX_COUNT < cookie.length + addableIds.length) {
516            last_num = CART_MAX_COUNT - cookie.length < 0 ? 0: CART_MAX_COUNT - cookie.length;
517            addableIds = addableIds.slice(0, last_num);
518            var popup = $("#popupCartMax");
519            popup.css({top: Math.floor(($(window).height() - popup.innerHeight()) / 2) + 'px', left: Math.floor(($(window).width() - popup.innerWidth()) / 2) + 'px'});
520            popup.show();
521            setTimeout(function() {
522                popup.fadeOut(1000);
523            }, 2000);
524        }
525
526        return addableIds;
527    }
528
529    /**
530     * カートに学校を追加します
531     * @param sclId カートに追加するID
532     * @return 追加出来た場合:true, 追加出来なかった場合(最大件数を超える場合など):false
533     */
534    function setCartAjax(sclId) {
535        var addableIds = getActualCartAddableIds([sclId]);
536        if (addableIds.length !== 1) {
537            return false;
538        }
539
540        var prm = {};
541        var su = [];
542        var seikyu_cd = addableIds[0].split("_");
543        seikyu_cd[2] = seikyu_cd[2] == null ? "" : seikyu_cd[2];
544        su.push(seikyu_cd[0] + "_" + seikyu_cd[1]);
545        prm['scl_id'] = seikyu_cd[0] + "_" + seikyu_cd[1];
546        prm['scl_id_log'] = addableIds[0]
547        $.ajax({
548            type: "POST",
549            url: "/ajax/add_cart_ajax",
550            data: prm,
551            complete: iskoukoku
552        }).then(function(responce) {
553            set_cookie_index(seikyu_cd);
554            successFuncGetCartNum(responce);
555        });
556        
557        return true;
558    }
559
560    /**
561     * カートに学校を追加します(一括チェック)
562     * @param sclIds カートに追加するIDの配列
563     * @return 実際にカートに追加されたIDの配列
564     */
565    function setAllCheckCartAjax(sclIds) {
566        var addableIds = getActualCartAddableIds(sclIds);
567        
568        if (addableIds.length) {
569            var prm = {};
570            var su = [];
571            $.each(addableIds, function(index, data) {
572                var seikyu_cd = data.split("_");
573                seikyu_cd[2] = seikyu_cd[2] == null ? "" : seikyu_cd[2];
574                su.push(seikyu_cd[0] + "_" + seikyu_cd[1]);
575            });
576            prm['su'] = su;
577            $.ajax({
578                type: "POST",
579                url: "/seikyu/set_seikyu_list",
580                data: prm
581            }).then(function(responce) {
582                getCartNumAjax();
583            });
584        }
585        
586        return addableIds;
587    }
588
589    // カートから学校を削除します
590    function delCartAjax(prmSclId) {
591        var prm = {};
592        var su = [];
593        var seikyu_cd = prmSclId.split("_");
594        su.push(seikyu_cd[0] + "_" + seikyu_cd[1]);
595        prm['scl_id'] = seikyu_cd[0] + "_" + seikyu_cd[1];
596        $.ajax({
597            type: "POST",
598            url: "/ajax/del_cart_ajax",
599            data: prm
600        }).then(function(responce) {
601            del_cookie_index(seikyu_cd);
602            successFuncGetCartNum(responce);
603        });
604    }
605
606    // カートから学校を削除します(一括チェック外し)
607    function delAllCheckCartAjax(prmSclId) {
608        var prm = {};
609        var su = [];
610        $.each(prmSclId, function(index, data) {
611            var seikyu_cd = data.split("_");
612            seikyu_cd[2] = seikyu_cd[2] == null ? "" : seikyu_cd[2];
613            su.push(seikyu_cd[0] + "_" + seikyu_cd[1]);
614        });
615        prm['su'] = su;
616        $.ajax({
617            type: "POST",
618            url: "/seikyu/del_seikyu_list",
619            data: prm
620        }).then(function(responce) {
621            getCartNumAjax();
622        });
623    }
624
625    //どの資料をチェックしたかをクッキーにセットします
626    function set_cookie_index (seikyu_cd) {
627        if (seikyu_cd[2] != "") {
628            var cookies = get_cookie("seikyu_index_check");
629            cookies = cookies.length > 0 || cookies != "" ? cookies : [];
630            for (var index = 0; index < cookies.length; index++) {
631                if (cookies[index].indexOf(seikyu_cd[0] + "_" + seikyu_cd[1]) > -1) {
632                    cookies.splice(index, 1);
633                    index--;
634                }
635            }
636            cookies[0] == "" ? cookies[0] = seikyu_cd[0] + "_" + seikyu_cd[1] + "_" + seikyu_cd[2] : cookies.push(seikyu_cd[0] + "_" + seikyu_cd[1] + "_" + seikyu_cd[2]);
637            
638            var limit = new Date();
639            limit.setTime( limit.getTime() + 1000 * 3600 * 24 * 28 );
640            document.cookie = "seikyu_index_check=" + cookies.join("%2C") + "; path=/; expires=" + limit.toUTCString() + "; " ;
641        }
642    }
643
644    //どの資料をチェックしたかをクッキーから削除します
645    function del_cookie_index (seikyu_cd) {
646        var cookies = get_cookie("seikyu_index_check");
647        cookies = cookies.length > 0 || cookies != "" ? cookies : [];
648        for (var index = 0; index < cookies.length; index++) {
649            if (cookies[index].indexOf(seikyu_cd[0] + "_" + seikyu_cd[1]) > -1) {
650                cookies.splice(index, 1);
651                index--;
652            }
653        }
654        var limit = new Date();
655        limit.setTime( limit.getTime() + 1000 * 3600 * 24 * 28 );
656        if (cookies.length < 1) {
657            limit.setTime( limit.getTime() + 1000 * 3600 * 24 * 50 );
658        }
659        document.cookie = "seikyu_index_check=" + cookies.join("%2C") + "; path=/; expires=" + limit.toUTCString() + ";" ;
660    }
661
662    //カートから削除するリンクを作成します
663    function delCartLink(elem) {
664        if ($(elem).siblings(".delrequest_cart").length == 0) {
665            var del = document.createElement("p");
666            $(del).text("[x]資料請求カートから削除する");
667            $(del).attr("class","delrequest_cart");
668            $(del).val($(elem).val());
669            var rexp = new RegExp(/\/special\/(campus-life|campus-move\/list|campus-photo|event_visual|research\/list|message)/);
670            if (thisUrl.match("/catalog/(naruniwa|gakumon)/guide") || thisUrl.match("/area/line") || thisUrl.match("/kango_gakkou/search")
671                 || thisUrl.match(/\/(scl_k\/|scl_k)$/) || thisUrl.match(rexp)) {//削除するリンクを左寄せにする(特別対応)
672                $(del).css('text-align','left');
673                var $set = $(elem).parent("div");
674                $set.append($(del));
675                
676            } else if (thisUrl.match("/work/list") || thisUrl.match(/\/special\/new-expanded/) || thisUrl.match(/\/contents\/cafeteria\?scl_id/)) {//削除するリンクを右寄せにする(特別対応)
677                $(del).css('text-align','right');
678                $(elem).after($(del));
679            } else if (thisUrl.match(/\/group\?group_id=/) || thisUrl.match("/free_color/list")) {//削除するリンクを左寄せにする(特別対å¿
679œ)
680                $(del).css('text-align','left');
681                $(elem).after($(del));
682            } else {
683                $(elem).after($(del));
684            }
685        }
686    }
687
688    //特定名称のクッキーを取得
689    function get_cookie(name) {
690        var retCookie = [];
691        var allcookies = document.cookie.split("; ");
692        $.each(allcookies, function(index, value) {
693            if (value.indexOf(name + "=") > -1) {
694                retCookie = unescape(value.replace(name + "=",""));
695                retCookie = retCookie.split(",");
696            }
697        });
698        return retCookie;
699    }
700
701    //特別対応『/special』系の表示スペースの調整を行う(true:変更、false:元に戻す)
702    function setSpaceSpecial(elem, flag) {
703        if (flag) {
704            $(elem).parent(".scl_request").css("margin-top", "11px");
705            $(elem).parent(".scl_request").css("line-height", "11px");
706            $(elem).parent(".scl_request").siblings("p").css("line-height", "12px");
707            $(elem).parents(".block_right").css("line-height", "14px");
708        } else {
709            $(elem).parent(".scl_request").css("margin-top", "");
710            $(elem).parent(".scl_request").css("line-height", "");
711            $(elem).parent(".scl_request").siblings("p").css("line-height", "");
712            $(elem).parents(".block_right").css("line-height", "15px");
713        }
714    }
715    
716    function iskoukoku() {
717        if (thisUrl.match(/\/(scl_j|scl_h|scl_dai|scl_sen)\/[0-9]+/) || thisUrl.match(/\/(scl_in|scl_ab|scl_sc|scl_k|scl_t|scl_s)\/[0-9]+/)
718            || thisUrl.match(/(\/work\/sclbase|\/work\/photo|\/work\/obog|\/work\/map)/) || thisUrl.match(/\/scl_dai\/contents\/cafeteria\?scl_id/)) {
719            if (!thisUrl.match(/\/(scl_dai)\/[0-9]+\/shogakukin/)) {
720                // #17891 広告ページの場合、請求カート確認画面へ直接遷移
721                clickFuncCartBtn();
722            }
723        }
724    }
725/**************************************************************
726**
727**                         カート用
728**
729***************************************************************/
730
731    function initCartBar() {
732        var body = $("body");
733        
734        // カート追加完了時のポップアップ
735        var $popup = $('<div id="popupAddCart"><img src="' + popup_img + '" /></div>');
736        $popup.hide();
737        setPosition($popup);
738        $(body).append($popup);
739
740        // カートバー
741        var $cartBar = $('<div id="cartBar" style="height:158px;"></div>');
742        $cartBar.hide();
743        setCartBar($cartBar);
744        $(body).append($cartBar);
745
746        // 件数上限ポップアップ
747        var popupCartMax = $('<div id="popupCartMax">一度に資料請求できるのは30校までです。</div>');
748        popupCartMax.hide();
749        setPosition(popupCartMax);
750        $(body).append(popupCartMax);
751    }
752
753    // カートバーを設定します
754    // ・白色のフィルター部分
755    function setCartBar($cartBar) {
756        
757        var $cartFilter = $('<div id="cartFilter"></div>');
758        $cartBar.append($cartFilter);
759        
760        var $scl_nm = $(".fl .600 .sclnm_t31b")
761        if (thisUrl.match(/\/(scl_h|scl_j|scl_e|scl_p|scl_k|scl_o)\/[0-9]+/)) {
762            $scl_nm = $(".sclName .nameSet").find("h2");
763        }
764        if ($scl_nm.length != 0 && $scl_nm != null) {
765            var $scl_nm_cart_message = $('<div id="cartMessage"></div>');
766            $cartFilter.append($scl_nm_cart_message);
767            
768            var $scl_nm_cart = $('<p id="cartSclNm"></p>');
769            $scl_nm_cart.text($scl_nm.text());
770            
771            $scl_nm_cart_message.append($scl_nm_cart);
772            // 件数部分を設定
773            initCartNum($cartFilter);
774            
775            //請求ボタンの設定
776            $cartButtons = $('<ul></ul>');
777            $scl_nm_cart_message.append($cartButtons);
778            
779            $cartButton = $('<li class="cartButton"></li>');
780            $cartButton.css({'float':'left'});
781            //学部学科ページ対応用
782            var $gakubuSeikyu = $("a[href^='/seikyu'] img[src='/common_img/18p/btn_gakasiryou.png']").parent();
783            //カートに請求ボタンを追加します。
784            var $siryou = "";
785            var $gansyo = "";
786            var $oc = "";
787            if (thisUrl.match(/\/(scl_h|scl_j|scl_e|scl_p|scl_k|scl_o)\/[0-9]+/)) {
788                $siryou = $("a[href^='/seikyu'] img[src='/ad/img/btn_request.png']:first").parent().clone(true);
789            } else {
790                $siryou = $("a[href^='/seikyu'] img[src='/common_img/18p/01btn_shiryou.png']").parent().clone(true);
791            }
792            if ($siryou.length != 0 && $siryou != null) {
793                var $cartButton_siryou = $cartButton.clone(true);
794                $cartButtons.append($cartButton_siryou);
795                $cartButton_siryou.append($siryou);
796                $siryou.children().attr("width","180px");
797                $siryou.children().css("margin-left","10px");
798                if ($gakubuSeikyu != null && $gakubuSeikyu.length > 0) {//学部学科のページの際は請求ボタンの動作をその学部のものに切り替える(特別対å¿
798œ)
799                    //var siryoucd = $gakubuSeikyu.attr("href");
800                    //$siryou.attr("href",siryoucd);
801                }
802            }
803            $gansyo = $("a[href^='/seikyu'] img[src='/common_img/18p/02btn_gansyo.png']").parent().clone(true);
804            if ($gansyo.length != 0 && $gansyo != null) {
805                var $cartButton_gansyo = $cartButton.clone(true);
806                $cartButtons.append($cartButton_gansyo);
807                $cartButton_gansyo.append($gansyo);
808                $gansyo.children().css("margin-left","20px");
809                if ($gakubuSeikyu != null && $gakubuSeikyu.length > 0) {//学部学科のページの際は請求ボタンの動作をその学部のものに切り替える(特別対応)
810                    //var siryoucd = $gakubuSeikyu.attr("href");
811                    //$gansyo.attr("href",siryoucd);
812                }
813            }
814            $oc = $("a[href^='/event_entry?scl_id='] img[src='/common_img/18p/oc.png']").parent().clone(true);
815            if ($oc.length != 0 && $oc != null) {
816                var $cartButton_oc = $cartButton.clone(true);
817                $cartButtons.append($cartButton_oc);
818                $cartButton_oc.append($oc);
819                $oc.children().css("margin-left","20px");
820            }
821            //お気に入りボタンの設定
822            var $bookmarkbox = $('<div class="bookmark-box"><a href="/check/list" id="winOpen" onclick="javascript:OpenWindow(\'/check/list\',\'560\',screen.height);return false;" onkeypress="return true;" title="お気に入り、閲覧履歴"><img alt="お気に入り、閲覧履歴" src="/images/icon-star.png"><p>お気に入り<br>閲覧履歴</p></a></div>');
823            $scl_nm_cart_message.append($bookmarkbox);
824        } else {
825            var currentPath = window.location.pathname;
826            var currentPrm = new URLSearchParams(window.location.search);
827            var typeVal = currentPrm.get('type');
828            var tyukou_prm = '';
829            if (/(\/scl_h|\/scl_j|\/kodawari)/.test(currentPath) || (/(\/hjep)/.test(currentPath) && (typeVal == '22' || typeVal == '31'))) {
830              tyukou_prm = ' scl_h'
831            }
832            var $cartMessage = $(`<div id="cartMessage" style="text-align: center;"><span class="ikkatuCartNum"  style="color:#f00; font-size:33px; line-height:36px; font-weight:bold;"></span><span style="font-size:20px;color:#1C1C1C;padding-left: 20px;">件選択中</span></div><div><a class="seikyuBtn26 search${tyukou_prm}" href="/seikyu" style="font-size: 28px;">チェックした学校のパンフをもらおう</a></p></div>`);
833
834            $cartFilter.append($cartMessage);
835            // 件数部分を設定  
836            //initCartNum($cartFilter);
837
838        }
839    }
840
841    // カートバーの件数部分を設定します
842    // ・数字が表示される部分
843    function initCartNum($cartBar) {
844        // カートタイトル
845        var $cartBtn = $('<div id="cartBtn"></div>');
846        $cartBtn.attr("onclick","clickFuncCartBtn();");
847        $cartBar.append($cartBtn);
848        
849        // 位置調整
850        //setPositionCartBtn($cartBar, $cartBtn);
851        
852        // 件数の白背景の箇所
853        var $num_wrap = $('<div id="cartNum_wrap"></div>');
854        
855        // 件数
856        var $num = $('<span id="cartNum"></span>');
857	    var $numCount1 = $('<span id="cartNumCount1">ä»¶</span>');
858        $num_wrap.append($num);
859        $num_wrap.append($numCount1);
860        $cartBtn.append($num_wrap);
861        
862        //#17892 グローバルヘッダにカート表示を追加
863        /* var $grovalheader = $("#cmmSearch .column-R");
864        if ($grovalheader.length) {
865        	var $cartBtn2 = $('<li><div id="cartBtn2"></div></li>');
866	        var $num_wrap2 = $('<div id="cartNum_wrap2"></div>');
867	        var $num2 = $('<span id="cartNum2"></span>');
868	        $grovalheader.find("ul").css("margin","0 0 0 0");
869	        $grovalheader.find("ul").append($cartBtn2);
870	        $("#cartBtn2").append($num_wrap2);
871	        $("#cartBtn2").attr("onclick","clickFuncCartBtn();");
872	        $num_wrap2.append($num2);
873        }
874		*/
875        
876        // カート件数を取得
877        getCartNumAjax();
878    }
879
880    // カートボタンの位置を設定します
881    function setPositionCartBtn($cartBar,$cartBtn) {
882        var xPoint = $cartBtn.outerWidth() / 2 + 3;
883        var yPoint = 3;
884        $cartBtn.css({
885           'position': 'fixed',
886           'right': xPoint,
887           'top': yPoint
888        });
889    }
890
891    // 画面中央に配置します
892    function setPosition($dom) {
893        var xPoint = $(window).outerWidth() / 2 - $dom.outerWidth() / 2;
894        var yPoint = $(window).outerHeight() / 2 - $dom.outerHeight() / 2;
895        $dom.css({
896            'position': 'fixed',
897            'left': xPoint,
898            'top': yPoint,
899            'z-index': 9999999999999
900        });
901    }
902
903    // カート件数を取得します
904    function getCartNumAjax() {
905        var prm = {};
906        var userAgent = window.navigator.userAgent.toLowerCase();
907        if (userAgent.indexOf("safari") != -1 && userAgent.indexOf("chrome") == -1) {
908        	prm["rand"] = Math.random();
909        }
910        
911        $.ajax({
912            type: "POST",
913            url: "/ajax/get_cart_num_ajax",
914            data: prm,
915            success: successFuncGetCartNum
916        });
917    }
918
919    // カート追加・削除成功時の処理を行います
920    // ・完了ポップアップ表示(追加時)
921    // ・カート件数更新
922    function successFuncGetCartNum(res) {
923        var oldNum = $('#cartNum2').text();
924        
925        if (oldNum != null && oldNum != "" && Number(oldNum) < res.cart_num) {
926          	// ポップアップ表示
927          	var $popup = $('#popupAddCart');
928          	$popup.show();
929          	setTimeout(function() {
930          		$popup.fadeOut(1000);
931          	}, 2000);
932        }
933        // カート数値更新
934        $('#cartNum').text(res.cart_num);
935        //#17892 グローバルヘッダにカート表示を追加
936        $('#cartNum2').text(res.cart_num);
937        $(".ikkatuCartNum").text($("#cartNum2").text());
938        
939        var $cartBar = $('#cartBar');
940        var $cartBtn = $('#cartBtn');
941        var $cartFilter = $('#cartFilter');
942        var $fixedBannerBar = $('#fixedBannerBar');
943		if (res.cart_num === 0) {
944			$('#cartNum2').addClass("hide");
945			if (thisUrl.match(/\/gakumon\/list|shigoto\/list|shikaku\/list/)) {
946				if ($cartBar.is(':visible')) {
947					if( location.pathname !== '/' ){
948						$fixedBannerBar.show();
949						$cartBar.hide();
950						$cartBtn.hide();
951						$cartFilter.hide();
952					}
953				}
954			}
955		} else {
956			$('#cartNum2').removeClass("hide");
957			if (thisUrl.match(/\/gakumon\/list|shigoto\/list|shikaku\/list/)) {
958				if ($cartBar.hasClass("isDisplayed")) {
959					if( location.pathname !== '/' ){
960						$fixedBannerBar.hide();
961						$cartBar.show();
962						$cartBtn.show();
963						$cartFilter.show();
964					}
965				}
966			}
967		}
968		setHeightJyukenc();
969    }
970
971    // カートボタン押下時に請求画面へ遷移します
972    if (!thisUrl.match(/\/free_color/)){
973    function clickFuncCartBtn() {
974       window.location.href = "/seikyu";
975    }
976    }
977
978    // スマホ画面回転時を想定してボタン位置を調整します
979    $(window).resize(function() {
980        setPosition($('#popupAddCart'));
981    });
982
983    // ある程度スクロールを行うと表示します
984    $(window).scroll(function() {
985        var $cartBar = $('#cartBar');
986        var $cartBtn = $('#cartBtn');
987        var $cartFilter = $('#cartFilter');
988        var $fixedBannerBar = $('#fixedBannerBar');
989        var scrollVal = document.documentElement.scrollTop || document.body.scrollTop;
990        var docHeight = $(document).innerHeight();
991        var windowHeight = $(window).innerHeight();
992        var pageBottom = docHeight - windowHeight;
993
994        // モーダルウィンドウが表示されている場合は表示しない
995        if (scrollVal > 300 && !($("#free_color_modal-overlay")[0]) && (location.pathname !== '/scl_ht' && location.pathname !== '/scl_ht/list' && location.pathname !== '/scl_ht/word' && location.pathname !== '/scl_ht/hq')) {
996            if( location.pathname === '/' ){
997            }else{
998                if (thisUrl.match(/\/gakumon\/list|shigoto\/list|shikaku\/list/)) {
999                    if($('#cartNum2').text() === '0') {
1000                        $fixedBannerBar.show();
1001                        $cartBar.hide();
1002                        $cartBtn.hide();
1003                        $cartFilter.hide();
1004                        $cartBar.addClass("isDisplayed");
1005                    } else {
1006                        $fixedBannerBar.hide();
1007                        $cartBar.show();
1008                        $cartBtn.show();
1009                        $cartFilter.show();
1010                        $cartBar.addClass("isDisplayed");
1011                    }
1012                } else {
1013                    $cartBar.show();
1014                    $cartBtn.show();
1015                    $cartFilter.show();
1016                }
1017                $(".ikkatuCartNum").text($("#cartNum2").text());
1018            }
1019        }
1020
1021    });
1022    
1023    // ポップアップ画像の位置を再設定します
1024    $(window).load(function() {
1025        setPosition($('#popupAddCart'));
1026    });
1027    
1028    window.addEventListener("DOMContentLoaded", function() {
1029       $(".ikkatuCartNum").text($("#cartNum2").text());
1030    });
1031
1032	function setHeightJyukenc(){
1033		$("[class*='jyukenc_']").each(function(index){
1034			var height = $("#"+$(this).attr("value")).height();
1035			$(this).css("height", height);
1036		});
1037	}

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.