1/* P-5 PoC viewObj router. Do not modify inline definitions. 2 * ìì± ì¬ì : viewObj í¨ì 211í í¸ì¶, 52ê° ì ì ì¤ë³µ â ë¼ì°í° í¨í´ PoC ë¨ê³ íµí©. 3 * 본 íì¼ì PoC 5íì´ì§ì íí´ ëª ìì override ë¡ íì±íëë¤. 4 * ë¹PoC íì´ì§ë inline ì ìê° window.viewObj 를 ì ì íë¯ë¡ ìí¥ ìì. 5 * ìì±ì¼: 2026-04-26 6 */ 7(function (window) { 8 'use strict'; 9 10 window.GoHackers = window.GoHackers || {}; 11 12 // jQuery ê°ì©ì± ê°ë 13 function _hasJQuery() { 14 return typeof window.jQuery !== 'undefined' || typeof window.$ !== 'undefined'; 15 } 16 function _$() { 17 return window.jQuery || window.$; 18 } 19 20 /** 21 * prepare ëë©ì¸: jQuery íì¤ í (prepare_guide_chi í¨í´) 22 * ì본: $('.tab_content').hide(); $('#'+obj+'_'+no).show(); 23 * $('.tab_btn li').removeClass('on'); $('.tab_btn li.tab'+no).addClass('on'); 24 */ 25 function _viewObjPrepare(obj, no) { 26 if (!_hasJQuery()) return; 27 var $ = _$(); 28 $('.tab_content').hide(); 29 $('#' + obj + '_' + no).show(); 30 $('.tab_btn li').removeClass('on'); 31 $('.tab_btn li.tab' + no).addClass('on'); 32 } 33 34 /** 35 * visa ëë©ì¸: Vanilla, ì´ë¯¸ì§ ê²½ë¡ ë³ê²½ (visa_guide_aus í¨í´) 36 * 루í 1~4, ì´ë¯¸ì§ prefix: https://img.gohackers.com/sub/abroad/visa_newinfo_tab_0{i}_{on|off}.gif 37 * inline ì본ì ìëê²½ë¡(`img/sub/abroad/...`)ë¡ prefix ëë½ë PHP ë²ê·¸ê° ìì´ ì´ë¯¸ì§ê° 깨ì§ë¤. 38 * ì ëµ prefix ë ì´ê¸° ì ì img ì ì ë URL(`https://image.gohackers.com/...`) ì ì¼ì¹ìí¨ë¤. 39 * (P-5 PoC íì : visa_guide_aus ë§ ê²ì¦ë¨.) 40 */ 41 function _viewObjVisa(obj, no) { 42 var IMG_BASE = 'https://img.gohackers.com/sub/abroad/'; 43 for (var i = 1; i < 5; i++) { 44 var contentEl = document.getElementById(obj + '_' + i); 45 var menuEl = document.getElementById(obj + '_m' + i); 46 if (i == no) { 47 if (contentEl) contentEl.style.display = 'block'; 48 if (menuEl) menuEl.src = IMG_BASE + 'visa_newinfo_tab_0' + i + '_on.gif'; 49 } else { 50 if (contentEl) contentEl.style.display = 'none'; 51 if (menuEl) menuEl.src = IMG_BASE + 'visa_newinfo_tab_0' + i + '_off.gif'; 52 } 53 } 54 } 55 56 /** 57 * gre ëë©ì¸: Vanilla + ë³ìëª ê³µë°± í¡ì (gre_guide í¨í´) 58 * 루í 1~4, ì ëê²½ë¡ ì´ë¯¸ì§: https://upload.gohackers.com/srv/images/sub/gre_guide/gre_tab_0{i}_{on|off}.gif 59 */ 60 function _viewObjGre(obj, no) { 61 for (var i = 1; i < 5; i++) { 62 var contentEl = document.getElementById(obj + '_' + i); 63 var menuEl = document.getElementById(obj + '_m' + i); 64 if (contentEl) { 65 if (i == no) { 66 contentEl.style.display = 'block'; 67 if (menuEl) menuEl.src = 'https://upload.gohackers.com/srv/images/sub/gre_guide/gre_tab_0' + i + '_on.gif'; 68 } else { 69 contentEl.style.display = 'none'; 70 if (menuEl) menuEl.src = 'https://upload.gohackers.com/srv/images/sub/gre_guide/gre_tab_0' + i + '_off.gif'; 71 } 72 } 73 } 74 } 75 76 /** 77 * toefl ëë©ì¸: ES6 + el íë¼ë¯¸í° + ì½ë°± (toefl_guide í¨í´) 78 * 루í 1~5, #guideTap a í´ëì¤ í ê¸, tab_iframe_resize ì½ë°± í¸ì¶ 79 */ 80 function _viewObjToefl(obj, no, el) { 81 try { console.log(obj + '_' + no); } catch (e) {} 82 for (var i = 1; i <= 5; i++) { 83 var element = document.getElementById(obj + '_' + i); 84 if (element) { 85 element.style.display = (i == no) ? 'block' : 'none'; 86 } 87 } 88 var tabs = document.querySelectorAll('#guideTap a');
89 if (tabs && tabs.forEach) { 90 tabs.forEach(function (tab) { tab.classList.remove('on'); }); 91 } 92 if (el && el.classList) { 93 el.classList.add('on'); 94 } 95 if (typeof window.tab_iframe_resize === 'function') { 96 window.tab_iframe_resize(); 97 } 98 } 99 100 /** 101 * life ëë©ì¸: Vanilla, ì´ë¯¸ì§ ê²½ë¡ ë³ê²½ (life_guide_usa í¨í´) 102 * 루í 1~6, ì´ë¯¸ì§ prefix: //img.gohackers.com/sub/abroad/v2/abr_tab_usa_life0{i}_{on|off}.jpg 103 * ë ê±°ì PHP ì $g['path_image']='//image.gohackers.com/' 를 prefix ë¡ í¡ì. 104 * 주ì: life ëë©ì¸ì êµê°ë³ë¡ prefixê° ë¤ë¥´ë¯ë¡ 본 PoC ë usa íì . 105 */ 106 function _viewObjLife(obj, no) { 107 var IMG_BASE = '//img.gohackers.com/sub/abroad/v2/'; 108 for (var i = 1; i < 7; i++) { 109 var contentEl = document.getElementById(obj + '_' + i); 110 var menuEl = document.getElementById(obj + '_m' + i); 111 if (i == no) { 112 if (contentEl) contentEl.style.display = 'block'; 113 if (menuEl) menuEl.src = IMG_BASE + 'abr_tab_usa_life0' + i + '_on.jpg'; 114 } else { 115 if (contentEl) contentEl.style.display = 'none'; 116 if (menuEl) menuEl.src = IMG_BASE + 'abr_tab_usa_life0' + i + '_off.jpg'; 117 } 118 } 119 } 120 121 /** 122 * default fallback: jQuery ê°ë¥ ì prepare í¨í´, ìëë©´ Vanilla íì¤ í ê¸ 123 */ 124 function _viewObjDefault(obj, no) { 125 if (_hasJQuery()) { 126 return _viewObjPrepare(obj, no); 127 } 128 for (var i = 1; i <= 5; i++) { 129 var el = document.getElementById(obj + '_' + i); 130 if (el) el.style.display = (i == no) ? 'block' : 'none'; 131 } 132 } 133 134 /** 135 * ë¼ì°í° ì§ì ì . 136 * í¸ì¶ íí: 137 * window.GoHackers.viewObj.bind(null, 'prepare')(obj, no) // domain ì¬ì ë°ì¸ë© 138 * window.GoHackers.viewObj('prepare', obj, no) // ì§ì í¸ì¶ 139 * ëë©ì¸ 미ì§ì /미ì¼ì¹ ì _viewObjDefault. 140 */ 141 function viewObjRouter(domain, obj, no, el, options) { 142 try { 143 switch (domain) { 144 case 'prepare': return _viewObjPrepare(obj, no); 145 case 'visa': return _viewObjVisa(obj, no); 146 case 'gre': return _viewObjGre(obj, no); 147 case 'toefl': return _viewObjToefl(obj, no, el); 148 case 'life': return _viewObjLife(obj, no); 149 default: return _viewObjDefault(obj, no); 150 } 151 } catch (e) { 152 try { console.error('[GoHackers.viewObj] error', e); } catch (_) {} 153 } 154 } 155 156 // ì¸ë¶ ë ¸ì¶ 157 window.GoHackers.viewObj = viewObjRouter; 158 window.GoHackers._viewObjPrepare = _viewObjPrepare; 159 window.GoHackers._viewObjVisa = _viewObjVisa; 160 window.GoHackers._viewObjGre = _viewObjGre; 161 window.GoHackers._viewObjToefl = _viewObjToefl; 162 window.GoHackers._viewObjLife = _viewObjLife; 163 window.GoHackers._viewObjDefault = _viewObjDefault; 164 165})(window);
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.