PageSourceSearch

https://www.hyperdia.com/ja/js/cookie.js

js hyperdia.com collected 2026-10-02 04:03:54 UTC 5,549 bytes, 215 lines download raw bytes

1/**
2	@file
3	cookie.js <br/>
4	<br/>
5	@breif cookie set get delete
6	@author ws
7	@version 1.0.0.0
8	@since  31/08/2009
9	$Revision: $
10*/
11
12//有効期間
13var date = new Date();
14var ms = 7*24*3600*1000;
15date.setTime(date.getTime() + ms);
16var falg = "#";
17//cookieをセット
18function setCookie(ekiName, lat, lon)
19{	
20    //cookieが使用できる
21    if(navigator.cookieEnabled)
22    {
23        var cookiesValue = new Array();
24        var cookieValue=unescape(document.cookie);
25        //cookieのサイズは4Kより小さい
26
27        if(cookieValue.length<4096)
28        { 
29           var newcookie=getCookieValue(cookieValue,COOKIENAME,ekiName,lat,lon);
30           
31           if(newcookie == null){
32           		alert(HYP_COOKIE_MESSAGE[ '1' ]);
33           		return;
34           }
35           
36           if(newcookie == -1){
37           		alert(HYP_COOKIE_MESSAGE[ '101' ]);
38           		return;
39           }
40           
41           newcookie = escape(newcookie);
42           var escookie=COOKIENAME+"="+newcookie+"; expires=" + date.toGMTString();
43           escookie+="; path=/";
44           document.cookie = escookie;
45           alert(HYP_COOKIE_MESSAGE[ '102' ]);
46        }
47        else  //cookieのサイズは4Kより大きい
48        {
49        	alert(HYP_COOKIE_MESSAGE[ '103' ]);
50         }
51        	
52     }
53    else  //cookieが使用できない
54
55    {
56       alert(HYP_COOKIE_MESSAGE[ '104' ]);
57    }
58 }
59
60//駅名を取る
61
62function getCookie()
63
64{
65       var cookieValue=getEki();
66       var ekiName=new Array();
67       for(var i=0;i<cookieValue.length;i++)
68       {
69       	   if(cookieValue[i][1] != "0" && cookieValue[i][2] !="0"){
70       	   	   ekiName[i]=cookieValue[i].join("|");
71       	   }else{
72       	   	   ekiName[i]=cookieValue[i][0];
73       	   }       	   
74       }
75       return ekiName;
76}
77
78function getEki()
79  {
80  	  var cookieMesaage = unescape(document.cookie);
81  	  var cookieValue=returnCookieValue(cookieMesaage,COOKIENAME);
82  	  if(cookieValue==""||cookieValue==undefined)
83     {
84        return cookieValue;
85     }
86    else
87     {
88       var eki=cookieValue.split("&");
89       var ekiValue=new Array();
90       var ekiName=new Array();
91       for(var i=0;i<eki.length;i++)
92       {
93       	   var tempArr=eki[i].split(falg);
94       	   ekiValue[i]=tempArr;
95       	   
96       }
97       return ekiValue;
98     }
99  }
100  
101function getCookieValue(cookieValue,cookieName,name,keido,ido)
102{
103     var cookieValue=returnCookieValue(cookieValue,cookieName);
104     if(cookieValue.length==0)
105     {
106        cookieValue=name+falg+keido+falg+ido;
107     }
108     else
109     {
110         cookieValue = getEki();
111	     for(var i=0;i<cookieValue.length;i++)
112	     {
113            //駅名も存在する
114	    	if(cookieValue[i][0]==name)
115	    	{
116               cookieValue = -1;
117               return cookieValue;
118	    	}
119	     }
120	    var cv=unescape(document.cookie);
121	    cookieValue=returnCookieValue(cv,cookieName);
122	    if(cookieValue.length==0)
123	    {
124	    	cookieValue=name+falg+keido+falg+ido;
125	    }
126	    else
127	    {
128	    	var returnCookie =cookieValue.split("&");
129            if(returnCookie.length<5)
130           {
131              var str=name+falg+keido+falg+ido;
132              cookieValue=str+"&"+cookieValue;
133           }
134          else
135           {
136             cookieValue = null;
137             return;
138           }
139	    }
140        
141      }    
142     return cookieValue;
143}
144
145//特定名称のcookieの値を取る  
146function returnCookieValue(cookieValue,cookieName)
147
148{
149     var returnCookieValue = "";
150     //";"はセパレーターとしてcookieの内容を仕切って配列になります
151
152     var cookies = cookieValue.split("; ");
153     var cookiesValue = new Array();
154     //循環を通じてcookie名とcookie値は配列に置く
155
156     for (var i=0;i<cookies.length;i++)
157      {
158         var tempArr = cookies[i].split("=");
159         cookiesValue[i] = tempArr;
160       }
161       //循環を通じてcookie名とcookie値を検索
162       for (var i=0;i<cookiesValue.length;i++)
163        {
164           if (cookiesValue[i][0]==cookieName)
165            {
166                returnCookieValue = cookiesValue[i][1];
167                break;
168             }
169         }
170     return returnCookieValue;
171}
172
173//特定名称のcookieを削除
174function delCookie(name){
175    var date = new Date();
176    date.setTime(date.getTime() - 10000);
177    document.cookie =escape(name)+"="+ "; expires=" + date.toGMTString()+ ";path=/";
178  }
179
180//特定名称のcookieの値の中第K組の値を削除
181function del_(k){
182    var cookieValue = getEki();
183    if(cookieValue.length>1)
184    {
185	    for(var i=0;i<cookieValue.length;i++)
186	    {
187	    	if(cookieValue[i][0]==cookieValue[k][0])
188	    	{
189	    		cookieValue=cookieValue.slice(0,i).concat(cookieValue.slice(i+1,cookieValue.length));//
190	    		
191	    	}
192	    }
193    }
194    else
195    {
196    	cookieValue=null;
197    }
198    var tempArr=new Array();
199    var temp=new Array();
200    if(cookieValue != null)
201    {
202	    for(var i=0;i<cookieValue.length;i++)
203	    {
204	    	temp[i]=cookieValue[i][0]+falg+cookieValue[i][1]+falg+cookieValue[i][2];
205	    }
206	    tempArr=temp.join("&");
207	    document.cookie=COOKIENAME+"="+escape(tempArr) + "; expires=" + date.toGMTString() + ";path=/";
208	}
209	else
210	{
211		delCookie(COOKIENAME);
212	}
213	if($("CKTIPFrm")!=null||$("CKTIPFrm")!=undefined)
214    document.body.removeChild($("CKTIPFrm"));
215  }

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.