PageSourceSearch

https://luki.ru/js_src/3936/godsfinger.js

js luki.ru collected 2026-10-02 09:57:15 UTC 5,570 bytes, 210 lines download raw bytes

1var GodsFinger = new Object();
2
3GodsFinger.init = function()
4 {
5  GodsFinger.godsfinger = new Element('div', { id: 'godsfinger' });
6  GodsFinger.godsfinger.insert(new Element('div', { id: 'godsfinger__loading' }));
7  GodsFinger.godsfinger.insert(new Element('div', { id: 'godsfinger__background' }));
8  GodsFinger.godsfinger_data = new Element('span', { id: 'godsfinger__data' });
9  GodsFinger.godsfinger.observe('click', function(event) { if (!CORE.ValidEvent(event)) GodsFinger.hide(); });
10  GodsFinger.godsfinger_data.observe('click', function(event) { if (!CORE.ValidEvent(event)) { Event.stop(event); return false; } });
11  GodsFinger._isShow = 0;
12
13  GodsFinger.godsfinger.insert(GodsFinger.godsfinger_data);
14  $$('body')[0].insert(GodsFinger.godsfinger);
15 }
16
17GodsFinger.ShowLabel = function()
18 {
19  if (typeof(GodsFinger._isFotostream) == 'undefined' && $$('#domain_title a')[0])
20    GodsFinger._isFotostream = $$('#domain_title a')[0].readAttribute('amber') == 'community:50';
21
22  if (GodsFinger._isFotostream)
23   {
24    var title = $('fv' + CORE.fvCurrent).readAttribute('data-title');
25    if (title)
26     {
27      $('gf_img_title').innerHTML = title;
28      $('gf_img_title_wrap').show();
29     }
30    else
31     {
32      $('gf_img_title_wrap').hide();
33     }
34   }
35 }
36
37GodsFinger.resetStyle = function()
38 {
39  GodsFinger.godsfinger_data.setStyle({
40      'top': '-9999px',
41      'left': '-9999px',
42      'width': 'auto',
43      'opacity': '0'
44    });
45 }
46
47GodsFinger.reset = function()
48 {
49  GodsFinger.resetStyle();
50  GodsFinger.godsfinger_data.innerHTML = '<a id="godsfinger__close" href="#" onClick="return GodsFinger.hide();">Закрыть</a>' +
51                                   '<div id="godsfinger__content"></div>';
52 }
53
54GodsFinger.load = function(url, method, params, show, iframe, iSize)
55 {
56  if (typeof(method) == 'undefined') method = 'GET';
57  if (typeof(params) == 'undefined') params = '';
58  if (typeof(show) == 'undefined') show = true;
59  GodsFinger.reset();
60
61  if (url.indexOf('ajax/foto') !== -1 && url.indexOf('preset') === -1)
62   {
63    var width = document.viewport.getWidth();
64    if (width < 1200)
65      var preset = 'small';
66    else if (width < 1500)
67      var preset = 'medium';
68    else
69      var preset = 'full';
70    url += '&preset=' + preset;
71   }
72
73
74  if (show == false)
75   {
76    new Ajax.Request(url,
77                   { asynchronous: true,
78                     method: method,
79                     parameters: params,
80                     evalScripts: true,
81                     onFailure: GodsFinger.failed });
82    return false;
83   }
84
85  $('godsfinger__loading').show();
86  GodsFinger.godsfinger.style.display = 'block';
87  // GodsFinger.godsfinger.style.width = '100%';
88  // GodsFinger.godsfinger.style.height = ($('brand') ? $('brand').getHeight() : $('godsfinger_helper').cumulativeOffset()['top']) + 'px';
89  GodsFinger._isShow = 1;
90
91  if (typeof(Tooltips) != 'undefined')
92   Tooltips.hideSelects();
93
94  if (typeof(iframe) != 'undefined')
95   {
96    var viewport = document.viewport.getDimensions(),
97        iframe = new Element('iframe', {'width': typeof iSize != 'undefined' ? iSize['width'] : viewport['width'] * .8, 'height': typeof iSize != 'undefined' ? iSize['height'] : viewport['height'] * .8, 'src': url});
98    Event.observe(iframe, 'load', GodsFinger.loaded);
99    Element.insert($('godsfinger__content'), iframe);
100   }
101  else
102   {
103    new Ajax.Request(url,
104     {
105      asynchronous: true,
106      method: method,
107      parameters: params,
108      evalScripts: true,
109      onSuccess: GodsFinger.afterAjax,
110      onFailure: GodsFinger.failed
111     });
112   }
113
114  return false;
115 }
116
117GodsFinger.afterAjax = function(r)
118 {
119  $('godsfinger__content').update(r.responseText);
120  GodsFinger.loaded();
121  Mobilizer.init();
122 }
123
124GodsFinger.loaded = function()
125 {
126  setTimeout(function(){ //for dom ready
127    $('godsfinger__loading').hide();
128    GodsFinger.centering();
129
130    document.observe('keydown', function(event)
131     {
132      if (event.keyCode == Event.KEY_ESC)
133       GodsFinger.hide();
134     });
135
136  },100);
137 }
138
139GodsFinger.failed = function()
140 {
141 }
142
143GodsFinger.hide = function()
144 {
145  if (GodsFinger._isShow != 1)
146    return false
147
148  if (typeof(Fotos) !== 'undefined')
149   {
150    CORE.silentHashChange('_');
151    document.stopObserving('keydown', Fotos.arrawNavigate);
152    $('godsfinger__close').show();
153   }
154
155  GodsFinger._isShow = 0;
156  GodsFinger._isImg = 0;
157
158  $$('html')[0].removeClass('noscroll');
159  GodsFinger.godsfinger.removeClass('noscroll');
160
161  document.stopObserving('keydown');
162  GodsFinger.godsfinger.style.display = 'none';
163  $('godsfinger__content').innerHTML = '';
164
165  if (typeof(Tooltips) != 'undefined')
166   Tooltips.showSelects();
167
168  CORE.submitting = false;
169  GodsFinger._old_height = undefined;
170  return false;
171 }
172
173
174GodsFinger.centering = function()
175 {
176  if (GodsFinger._isShow != 1)
177    return;
178
179  GodsFinger.godsfinger.setStyle({top: document.viewport.getScrollOffsets()['top'] + 'px'});
180
181  var viewport = document.viewport.getDimensions();
182
183  if (GodsFinger._isImg)
184   {
185    var top = Math.ceil((viewport.height - $('godsfinger__data').getHeight()) / 2);
186
187    GodsFinger.godsfinger_data.setStyle({
188        'top': top + 'px',
189        'opacity': '1'
190      });
191   }
192  else
193   {
194    var dataHeight = $('godsfinger__data').getHeight(),
195        top = viewport.height > dataHeight ? Math.ceil((viewport.height - dataHeight) / 2) : 5
196
197    GodsFinger.godsfinger_data.setStyle({
198      'top': top + 'px',
199      'left': 'auto',
200      'opacity': '1'
201    });
202   }
203
204  return;
205 }
206
207GodsFinger.setFotoLoaded = function(img)
208 {
209  $(img).loaded = 1;
210 }

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.