1const API_TOKEN = "429a2f67-d679-42c2-9a12-00aa6c6d3339"; // APIãã¼ã¯ã³ãæ ªå¼ä¼ç¤¾è¤çå·¥æ¥æ§ 2// const API_TOKEN = "6b50b26f-be6f-4b49-b465-0a6f0b9a4715"; // APIãã¼ã¯ã³ããã¢ãã¼ã¯ã³ 3const API_ACCESS_KEY = 4 "https://www.ie-miru.jp/api/v1/events?token=" + API_TOKEN; // APIã¢ã¯ã»ã¹ãã¼ 5const API_ACCESS_KEY_FINISHED = 6 "https://www.ie-miru.jp/api/v1/events?token=" + 7 API_TOKEN + 8 "&include_finished_events=true"; // APIã¢ã¯ã»ã¹ãã¼ çµäºã¤ãã³ããå«ã 9const IMG_FOLDER = "./img/"; // imgãã©ã«ãã®ãã¹ 10const KC_SOURCE = "banhome.jp"; 11const TOP_EVENTS_NUM = 3; 12const HEADER_BACK_URL = "https://banhome.jp/"; 13const Spinner = window.VueSimpleSpinner; 14 15var utilityMixin = { 16 methods: { 17 formatDateStr(p_event_date) { 18 // 2022å¹´1æ28æ¥ï¼æ¨ï¼ï½2022å¹´1æ29æ¥ï¼æ¨) ã«ãã 19 let format_str = p_event_date; 20 format_str = format_str.replace(/\)ã/g, "\)ã<br>"); 21 return format_str; 22 }, 23 checkImg(p_url) { 24 if (p_url) { 25 return p_url; 26 } 27 return "https://www.ie-miru.jp/custom/images/base/photo_no_image_02.png"; 28 }, 29 30 checkDisplayAddressText(p_address, p_display_address_text) { 31 // 表示ç¨ä½æãå ¥åããã¦ããå ´åã¯ãã¡ãã表示 32 let ret_address = p_address; 33 if (p_display_address_text) { 34 ret_address = p_display_address_text; 35 } 36 return ret_address; 37 }, 38 39 dispModel(p_type) { 40 switch (p_type) { 41 case 'ã¢ãã«ãã¦ã¹': 42 return true; 43 } 44 return false; 45 }, 46 }, 47}; 48 49let componentTopEvents = { 50 mixins: [utilityMixin], 51 template: ` 52 <div class="kc-content"> 53 <spinner class="kc-spinner" v-show="isEventLoading"></spinner> 54 <ul v-show="!isEventLoading" class="kc-cards"> 55 <li v-for="event in events" class="kc-card"> 56 <a :href="event.url + (event.url.indexOf('?') != -1 ? '&' : '?') + 'kc_source=' + KC_SOURCE + '&utm_store_kc=true' + '&header_back_url=' + HEADER_BACK_URL" class="kc-link"> 57 <div class="kc-image"> 58 <img :src="checkImg(event.image_url)" alt=""> 59 </div> 60 <div class="kc-info"> 61 <div class="kc-tags"> 62 <span class="kc-type">{{event.event_type}}</span> 63 <span class="kc-format">{{event.event_format_string}}</span> 64 </div> 65 <h3 class="kc-name">{{event.name}}</h3> 66 <div class="kc-date" v-html="formatDateStr(event.event_open_date_from_to_string)"></div> 67 <div class="kc-address"><span class="kc-venue">ä¼å ´ | </span>{{checkDisplayAddressText(event.event_rough_address,event.display_address_text)}}</div> 68 </div> 69 </a> 70 </li> 71 </ul> 72 </div> 73 74 `, 75 components: { 76 spinner: Spinner, 77 }, 78 data() { 79 return { 80 events: [], 81 isEventLoading: true, 82 // imgfolder: "", 83 }; 84 }, 85 mounted() { 86 this.dispEvent(); 87 this.imgfolder = IMG_FOLDER; 88 }, 89 methods: { 90 dispEvent: async function () { 91 // å ã«KCã¤ãã³ãã表示ãã 92 let result = await this.Kcevent(); 93 }, 94 Kcevent: async function () { 95 // this.imgfolder = IMG_FOLDER; 96 await axios 97 .get(API_ACCESS_KEY) 98 .then( 99 function (response) { 100 getEvents = response.data.events; 101 for (normalItem in getEvents) { 102 if (!this.dispModel(getEvents[normalItem].event_type)) { 103 this.events.push(getEvents[normalItem]); 104 } 105 if (this.events.length >= TOP_EVENTS_NUM) { 106 break; 107 }; 108 }; 109 this.isEventLoading = false; 110 }.bind(this) 111 ) 112 .catch( 113 function (response) { 114 console.log("error"); 115 console.log(response.data); 116 }.bind(this) 117 ); 118 }, 119 }, 120 created() { 121 document.addEventListener("turbolinks:before-cache", this.onBrowserBack) 122 }, 123 destroyed() { 124 document.removeEventListener("turbolinks:before-cache", this.onBrowserBack) 125 }, 126}; 127 128let componentTopModelEvents = { 129 mixins: [utilityMixin], 130 template: ` 131 <div class="kc-content"> 132 <spinner class="kc-spinner" v-show="isEventLoading"></spinner> 133 <ul v-show="!isEventLoading" class="kc-cards"> 134 <li v-for="event in events" class="kc-card"> 135 <a :href="event.url + (event.url.indexOf('?') != -1 ? '&' : '?') + 'kc_source=' + KC_SOURCE + '&utm_store_kc=true' + '&header_back_url=' + HEADER_BACK_URL" class="kc-link"> 136 <div class="kc-image"> 137 <img :src="checkImg(event.image_url)" alt=""> 138 </div> 139 <div class="kc-info"> 140 <h3 class="kc-name">{{event.name}}</h3> 141 <div class="kc-address"><span class="kc-venue">ä¼å ´ | </span>{{checkDisplayAddressText(event.event_rough_address,event.display_address_text)}}</div> 142 </div> 143 </a> 144 </li> 145 </ul> 146 </div> 147 148 `, 149 components: { 150 spinner: Spinner, 151 }, 152 data() { 153 return { 154 events: [], 155 isEventLoading: true, 156 // imgfolder: "", 157 }; 158 }, 159 mounted() { 160 this.dispEvent(); 161 this.imgfolder = IMG_FOLDER; 162 }, 163 methods: { 164 dispEvent: async function () { 165 // å ã«KCã¤ãã³ãã表示ãã 166 let result = await this.Kcevent(); 167 }, 168 Kcevent: async function () { 169 // this.imgfolder = IMG_FOLDER; 170 await axios 171 .get(API_ACCESS_KEY) 172 .then( 173 function (response) { 174 getEvents = response.data.events; 175 for (normalItem in getEvents) { 176 if (this.dispModel(getEvents[normalItem].event_type)) { 177 this.events.push(getEvents[normalItem]); 178 } 179 if (this.events.length >= TOP_EVENTS_NUM) { 180 break; 181 }; 182 }; 183 this.isEventLoading = false;
184 }.bind(this) 185 ) 186 .catch( 187 function (response) { 188 console.log("error"); 189 console.log(response.data); 190 }.bind(this) 191 ); 192 }, 193 }, 194 created() { 195 document.addEventListener("turbolinks:before-cache", this.onBrowserBack) 196 }, 197 destroyed() { 198 document.removeEventListener("turbolinks:before-cache", this.onBrowserBack) 199 }, 200}; 201 202 203let componentAllEvents = { 204 mixins: [utilityMixin], 205 template: ` 206 <div class="kc-content"> 207 <spinner class="kc-spinner" v-show="isEventLoading"></spinner> 208 <ul v-show="!isEventLoading" class="kc-cards -all"> 209 <li v-for="event in events" class="kc-card -all" :class="event.finished ? 'endDateTimeBg' : '' "> 210 <a :href="event.url + (event.url.indexOf('?') != -1 ? '&' : '?') + 'kc_source=' + KC_SOURCE + '&utm_store_kc=true' + '&header_back_url=' + HEADER_BACK_URL" class="kc-link"> 211 <div class="kc-image"> 212 <img :src="checkImg(event.image_url)" alt=""> 213 </div> 214 <div class="kc-info"> 215 <div class="kc-tags"> 216 <span class="kc-type">{{event.event_type}}</span> 217 <span class="kc-format">{{event.event_format_string}}</span> 218 </div> 219 <h3 class="kc-name">{{event.name}}</h3> 220 <div class="kc-date" v-html="formatDateStr(event.event_open_date_from_to_string)"></div> 221 <div class="kc-address"><span class="kc-venue">ä¼å ´ | </span>{{checkDisplayAddressText(event.event_rough_address,event.display_address_text)}}</div> 222 </div> 223 </a> 224 </li> 225 </ul> 226 </div> 227 228 `, 229 components: { 230 spinner: Spinner, 231 }, 232 data() { 233 return { 234 events: [], 235 isEventLoading: true, 236 // imgfolder: "", 237 }; 238 }, 239 mounted() { 240 this.dispEvent(); 241 this.imgfolder = IMG_FOLDER; 242 }, 243 methods: { 244 dispEvent: async function () { 245 // å ã«KCã¤ãã³ãã表示ãã 246 let result = await this.Kcevent(); 247 }, 248 Kcevent: async function () { 249 // this.imgfolder = IMG_FOLDER; 250 await axios 251 .get(API_ACCESS_KEY_FINISHED) 252 .then( 253 function (response) { 254 getEvents = response.data.events; 255 for (normalItem in getEvents) { 256 if (!this.dispModel(getEvents[normalItem].event_type)) { 257 this.events.push(getEvents[normalItem]); 258 } 259 // if (this.events.length >= TOP_EVENTS_NUM) { 260 // break; 261 // }; 262 }; 263 this.isEventLoading = false; 264 }.bind(this) 265 ) 266 .catch( 267 function (response) { 268 console.log("error"); 269 console.log(response.data); 270 }.bind(this) 271 ); 272 }, 273 }, 274 created() { 275 document.addEventListener("turbolinks:before-cache", this.onBrowserBack) 276 }, 277 destroyed() { 278 document.removeEventListener("turbolinks:before-cache", this.onBrowserBack) 279 }, 280}; 281 282 283let componentModelEvents = { 284 mixins: [utilityMixin], 285 template: ` 286 <div class="kc-content"> 287 <spinner class="kc-spinner" v-show="isEventLoading"></spinner> 288 <ul v-show="!isEventLoading" class="kc-cards -all"> 289 <li v-for="event in events" class="kc-card -all"> 290 <a :href="event.url + (event.url.indexOf('?') != -1 ? '&' : '?') + 'kc_source=' + KC_SOURCE + '&utm_store_kc=true' + '&header_back_url=' + HEADER_BACK_URL" class="kc-link"> 291 <div class="kc-image"> 292 <img :src="checkImg(event.image_url)" alt=""> 293 </div> 294 <div class="kc-info"> 295 <h3 class="kc-name">{{event.name}}</h3> 296 <div class="kc-address"><span class="kc-venue">ä¼å ´ | </span>{{checkDisplayAddressText(event.event_rough_address,event.display_address_text)}}</div> 297 </div> 298 </a> 299 </li> 300 </ul> 301 </div> 302 `, 303 components: { 304 spinner: Spinner, 305 }, 306 data() { 307 return { 308 events: [], 309 isEventLoading: true, 310 // imgfolder: "", 311 }; 312 }, 313 mounted() { 314 this.dispEvent(); 315 this.imgfolder = IMG_FOLDER; 316 }, 317 methods: { 318 dispEvent: async function () { 319 // å ã«KCã¤ãã³ãã表示ãã 320 let result = await this.Kcevent(); 321 }, 322 Kcevent: async function () { 323 // this.imgfolder = IMG_FOLDER; 324 await axios 325 .get(API_ACCESS_KEY_FINISHED) 326 .then( 327 function (response) { 328 getEvents = response.data.events; 329 for (normalItem in getEvents) { 330 if (this.dispModel(getEvents[normalItem].event_type)) { 331 this.events.push(getEvents[normalItem]); 332 } 333 // if (this.events.length >= TOP_EVENTS_NUM) { 334 // break; 335 // }; 336 }; 337 this.isEventLoading = false;
338 }.bind(this) 339 ) 340 .catch( 341 function (response) { 342 console.log("error"); 343 console.log(response.data); 344 }.bind(this) 345 ); 346 }, 347 }, 348 created() { 349 document.addEventListener("turbolinks:before-cache", this.onBrowserBack) 350 }, 351 destroyed() { 352 document.removeEventListener("turbolinks:before-cache", this.onBrowserBack) 353 }, 354}; 355 356 357var kcapp = new Vue({ 358 el: "#kcapp", 359 components: { 360 "top-events": componentTopEvents, 361 "all-events": componentAllEvents, 362 "model-events": componentModelEvents, 363 }, 364 data: {}, 365 mounted() { }, 366 beforeDestroy() { }, 367 methods: {}, 368}); 369 370var kcapp2 = new Vue({ 371 el: "#kcapp2", 372 components: { 373 "top-model-events": componentTopModelEvents, 374 375 }, 376 data: {}, 377 mounted() { }, 378 beforeDestroy() { }, 379 methods: {}, 380}); 381 382
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.