Вход Регистрация
Файл: js/al/wkpoll.js
Строк: 368
<?php
var WkPoll = {

init: function(optsparamstabDataprivacyDatalng) {
  
setStyle(ge('wk_content'), {width620});

  
re(cur.lSTL);
  
extend(cur, {
    
langextend(cur.lang || {}, lng),

    
wkPollOptsopts,
    
wkPollParamsparams,

    
wkPollOpt0,
    
wkPollInd0,

    
wkPollGraphfalse,
    
wkPollCriteria: {},
    
wkPollCache: {},
    
wkPollQuery: {},
    
wkPollPhCache: {},
    
wkPollPhShown: {},

    
wkPollTabsWrapge('wk_poll_tabs_wrap'),
    
wkPollTabsge('wk_poll_tabs'),

    
lSTLwkLayerWrap.appendChild(ce('div', {id'layer_stl'innerHTML'<div id="layer_stl_bg" class="fixed"></div><div id="layer_stl_cl"></div><nobr id="layer_stl_text" class="fixed">' getLang('global_to_top') + '</nobr>'elge('wk_box'), onclickcancelEventonmousedownWkPoll.lSTLDownscWkPoll.scroll})),
    
lSTLShown0,
    
lSTLWas0,
    
lSTLWasSet0
  
});

  
wkcur._hide.push(re.pbind(cur.lSTL));
  if (
isVisible(cur.wkPollTabsWrap)) {
    if (!
browser.msie || browser.version 7) {
      
addEvent(wkLayerWrap'scroll'WkPoll.scroll);
    }
    
wkcur._hide.push(function () {
      
removeEvent(wkLayerWrap'scroll'WkPoll.scroll);
    });
  }

  
cur.__oldOnPrivacyChanged cur.onPrivacyChanged;
  
cur.onPrivacyChanged WkPoll.privacyChanged;

  if (
tabData) {
    
cur.wkPollCache[tabData[0]] = [[tabData[1], tabData[2]], [tabData[3], tabData[4]]];
    
cur.wkPollQuery[tabData[0]] = extend({
      
act'poll_voters',
      
post_rawcur.wkPollParams.post_raw,
      
opt_idtabData[0]
    }, 
cur.wkPollCriteria);
    
WkPoll.tab(tabData[0]);
  }
  
cur.privacy extend(cur.privacy || {}, privacyData);
  
onBodyResize();
  
WkPoll.scroll();
},

tab: function(optone) {
  if (!
isVisible(cur.wkPollTabsWrap) || one && !opt) return;
  var 
act geByClass1('summary_tab_sel'ge('wk_poll_tabs')), cnt domPN(ge('wk_poll_opt' opt));
  if (
cnt != act) {
    
removeClass(act'summary_tab_sel');
    
addClass(act'summary_tab');
    
removeClass(cnt'summary_tab');
    
addClass(cnt'summary_tab_sel');
  }
  for (var 
i in cur.wkPollCache) {
    if (
cur.wkPollCache[i] == 'show') {
      
cur.wkPollCache[i] = 'load';
    }
  }
  if (
opt) {
    if (!
cur.wkPollCache[opt]) cur.wkPollCache[opt] = [];
    if (
cur.wkPollCache[opt][0]) {
      if (
cur.wkPollCache[opt][0] == 'load') {
        
cur.wkPollCache[opt][0] = 'show';
      } else {
        return 
WkPoll.tabShow(opt);
      }
    }
    
cur.wkPollCache[opt] = ['show'];
    
cur.wkPollQuery[opt] = extend({
      
act'poll_voters',
      
post_rawcur.wkPollParams.post_raw,
      
opt_idopt
    
}, cur.wkPollCriteria);
    
each (['country''city''age''gender'], function(kparam) {
      if (
isChecked('wk_poll_extra_' param)) {
        
cur.wkPollQuery[opt][param] = cur.privacy['poll_dmgr_' param][0].substr(1);
      }
    });
    
ajax.post('al_wall.php'cur.wkPollQuery[opt], {onDone: function(htmloffsetpHtmlpOffset) {
      var 
sh cur.wkPollCache[opt][0];
      if (!
sh) return;
      
cur.wkPollCache[opt] = [[htmloffset], [pHtmlpOffset]];
      if (
sh == 'show') {
        
WkPoll.tabShow(opt);
//        if (pHtml) WkView.updateSize();
      
}
    }, 
onFail: function() {
      
cur.wkPollCache[opt] = cur.wkPollQuery[opt] = false;
      
WkPoll.tab(0);
      return 
true;
    }});
  } else {
    
show('wk_poll_stats''wk_poll_stats_total''wk_poll_dmgr');
    
hide('wk_poll_people');
    
cur.wkPollOpt 0;
    
WkPoll.update();
  }
},
tabLoaded: function() {
  var 
opt cur.wkPollOptind cur.wkPollInd;
  if (
cur.wkPollCache[opt][ind 1]) return;
  
cur.wkPollQuery[opt].offset cur.wkPollCache[opt][ind][1];
  if (!
cur.wkPollQuery[opt].offset) return hide('wk_poll_more''wk_poll_more_prg');
  
cur.wkPollCache[opt][ind 1] = 'load';
  
ajax.post('al_wall.php'cur.wkPollQuery[opt], {
    
onDone: function(htmloffset) {
      var 
opt cur.wkPollOptind cur.wkPollIndsh cur.wkPollCache[opt][ind 1];
      if (!
cur.wkPollCache[opt] || !cur.wkPollCache[opt][ind] || !cur.wkPollCache[opt][ind][1]) return;
      
cur.wkPollCache[opt][ind 1] = [htmloffset];
      if (
sh == 'show'WkPoll.more();
    }
  });
},
tabShow: function(opt) {
  
cur.wkPollOpt opt;
  
cur.wkPollInd 0;
  
hide('wk_poll_stats''wk_poll_stats_total''wk_poll_dmgr');
  
show('wk_poll_people');
  
val('wk_poll_people'cur.wkPollCache[opt][0][0]);
  
WkPoll.update();
  
cur.wkPollQuery[opt].offset cur.wkPollCache[opt][0][1];
  
WkPoll.tabLoaded();
},

update: function() {
  if (
cur.lSTL) {
    
cur.lSTLWas 0;
  }
  
WkView.updateHeight();
  if (
isVisible(cur.wkPollTabsWrap) && isVisible(cur.wkPollTabs)) {
    var 
ds getXY(cur.wkPollTabsWraptrue)[1];
    if (
ds 0) {
      
wkLayerWrap.scrollTop += ds 1;
    }
  }
  
WkPoll.scroll();
},

graph: function() {
  if (!
cur.wkPollGraph) {
    
hide('wk_poll_tabs_wrap');
    
show('wk_poll_grtabs');
    
cur.wkPollGraph true;
    var 
showGraphLabel ge('wk_poll_show_graph');
    var 
back showGraphLabel.innerHTML;
    
showGraphLabel.innerHTML '<img src="/images/upload.gif" />';
    
WkPoll.updateDemography(function() {
      
addClass(ge('wk_content'), 'wk_poll_graph');
      
hide('wk_poll_stats');
      
hide(showGraphLabel);
      
showGraphLabel.innerHTML back;
      
show('wk_poll_hide_graph');
      
show('wk_poll_graph');
    });
  }
},
graphUpdate: function(criteriacallback) {
  var 
progress ge('wk_poll_stat_load');
  var 
cont ge('wk_poll_graph');
  
ajax.post('widget_poll.php'extend({act'show_graph'}, cur.wkPollOptscriteria || {}), {
    
onDone: function(htmljsoptions) {
      var 
size getSize(cont);
      
size[1] -= intval(getStyle(cont'paddingTop')) + intval(getStyle(cont'paddingBottom'))
      if (
size[1] > 200) {
        
setStyle(cont, {heightsize[1]});
      }
      
cont.innerHTML html;
      eval(
js);
      if (
callback) {
        
callback(options);
      }
    },
    
showProgressshow.pbind(progress),
    
hideProgresshide.pbind(progress)
  });
},
graphFilter: function(objpercentamount) {
  var 
act geByClass1('summary_tab_sel'ge('wk_poll_grtabs')), cnt domPN(obj);
  if (
cnt != act) {
    
removeClass(act'summary_tab_sel');
    
addClass(act'summary_tab');
    
removeClass(cnt'summary_tab');
    
addClass(cnt'summary_tab_sel');
  }
  
cur.wkPollCriteria['percent'] = percent;
  
cur.wkPollCriteria['amount'] = amount;
  
WkPoll.updateDemography();
},
graphHide: function() {
  
show('wk_poll_stats');
  
hide('wk_poll_graph')
  
show('wk_poll_show_graph');
  
hide('wk_poll_hide_graph');
  if (
domFC(domFC(ge('wk_poll_tabs')))) show('wk_poll_tabs_wrap');
  
hide('wk_poll_grtabs');
  
cur.wkPollGraph false;
  
removeClass(ge('wk_content'), 'wk_poll_graph');
},

updatedDemography: function(type) {
  
cur.wkPollCache = {};
  
clearTimeout(cur.wkPollUpdateTO);
  
cur.wkPollUpdateTO setTimeout(WkPoll.updateDemography500);
  if (
type == 'country') {
    var 
cityId false,
        
cityName false,
        
citiesLen 0;
    if (
isChecked('wk_poll_extra_country')) {
      var 
country cur.privacy.poll_dmgr_country[0],
          
cities cur.privacy.poll_dmgr_city_counties[country];

      if (
cities) {
        
each (cities, function (kv) {
          
citiesLen++;
          if (
cityId || cityName) return;
          
cityId k;
          
cityName v;
        });
      }
      
// debugLog(citiesLen, cityId, cityName);
      
if (citiesLen 1) {
        
cur.privacy.poll_dmgr_city_types cities;
        
val('privacy_edit_poll_dmgr_city_wrap''<a id="privacy_edit_poll_dmgr_city" href="#" onclick="if (checkEvent(event) === false) Privacy.show(this, event, 'poll_dmgr_city'); return false;">' cityName '</a>');
      } else if (
citiesLen) {
        
val('privacy_edit_poll_dmgr_city_wrap'cityName);
      }
    }
    
cur.privacy.poll_dmgr_city[0] = cityId;
    
toggle('wk_poll_extra_city'citiesLen);
    
checkbox('wk_poll_extra_city'0);
  }
},
updateDemography: function(callback) {
  var 
criteria = clone(cur.wkPollCriteria);
  
each (['country''city''age''gender'], function (kparam) {
    if (
isChecked('wk_poll_extra_' param)) {
      
criteria[param] = cur.privacy['poll_dmgr_' param][0].substr(1); // remove prepending underscore
    
}
  });

  var 
onUpdate = function (options) {
    var 
total 0;
    
each(options, function (optIdoptData) {
      
total += parseInt(optData.countRaw || optData.count);
      
animate(ge('wk_poll_row' optId), {width: (optData.width 534 100)}, 200, function () {
        
val('wk_poll_row_percent' optIdoptData.percent '%');
        
val('wk_poll_row_count' optIdoptData.count);
      });
      if (
ge('wk_poll_usrs' optId)) {
        
val('wk_poll_usrs' optIdoptData.people);
      }
    })
    if (
total) {
      var 
totalLng cur.wkPollParams.lang['wall_X_people_voted_X'];
      var 
langNumeric(totaltotalLngtrue);
      var 
totalStr '';
      if (
criteria['country']) {
        var 
from '';
        var 
cur.privacy['poll_dmgr_city_counties']['_'+criteria['country']];
        if (
&& criteria['city'] && c['_'+criteria['city']]) {
          
from c['_'+criteria['city']];
        } else {
          
from cur.privacy['poll_dmgr_country_types']['_'+criteria['country']];
        }
        
totalStr += cur.wkPollParams.lang['wall_X_people_voted_from'].replace('%s'from);
      }
      if (
criteria['age']) {
        var 
cur.privacy['poll_dmgr_age_types']['_'+criteria['age']];
        if (
c) {
          
totalStr += cur.wkPollParams.lang['wall_X_people_voted_by_age'].replace('%s'c);
        }
      }
      if (
criteria['gender']) {
        
totalStr += ' '+cur.wkPollParams.lang['wall_voted_gender_'+intval(criteria['gender'])];
      }
      
l.replace('%s'totalStr);
    } else {
      var 
cur.wkPollParams.lang['wall_X_people_voted_empty'];
    }
    if (
ge('wk_poll_total').innerHTML != l) {
      
animate(ge('wk_poll_total'), {opacity0}, 100, function() {
        
ge('wk_poll_total').innerHTML l;
        
animate(ge('wk_poll_total'), {opacity:1}, 100);
      });
    }
    if (
callback) {
      
callback();
    }
  }

  if (
cur.wkPollGraph) {
    
WkPoll.graphUpdate(criteriaonUpdate);
  } else {
    
ajax.post('al_wall.php'extend({act'poll_demography'}, cur.wkPollOptscriteria), {
      
onDoneonUpdate
    
});
  }
},

privacyChanged: function(key) {
  if (
key.indexOf('poll_dmgr')) return cur.__oldOnPrivacyChanged(key);
  var 
param key.substr(10);
  
checkbox('wk_poll_extra_' param1);
  
WkPoll.updatedDemography(param);
},

more: function() {
  var 
opt cur.wkPollOptind cur.wkPollInddata cur.wkPollCache[opt][ind 1];
  
show('wk_poll_more_prg');
  
hide('wk_poll_more');
  if (!
data) return WkPoll.tabLoaded();
  if (
data == 'load' || data == 'show') {
    
cur.wkPollCache[opt][ind 1] = 'show';
    return;
  }
  var 
el ce('div', {innerHTMLdata[0]}), cont ge('wk_poll_people_rows');
  while (
domFC(el)) cont.appendChild(domFC(el));
  ++
cur.wkPollInd;
  
WkView.updateHeight();
  
hide('wk_poll_more_prg');
  if (
data[1]) {
    
show('wk_poll_more');
    
WkPoll.tabLoaded();
  } else {
    
hide('wk_poll_more');
  }
},

lSTLDown: function(e) {
  
|| window.event;
  if (
checkEvent(e)) return;

  if (!
__afterFocus) {
    var 
to 0st wkLayerWrap.scrollTop;
    if (
cur.lSTLWasSet && cur.lSTLWas) {
      
to cur.lSTLWas;
      
cur.lSTLWas 0;
    } else {
      
cur.lSTLWas st;
    }
    
wkLayerWrap.scrollTop to;
/*    var diff = st - to;
    if (Math.abs(diff) > 6) {
      wkLayerWrap.scrollTop = (to + (diff > 0 ? 6 : -6));
    }
    setTimeout(function() {
      animate(wkLayerWrap, {scrollTop: to, transition: Fx.Transitions.easeInCirc}, 100);
    }, 0);/**/
  
}
  return 
cancelEvent(e);
},
scroll: function() {
  var 
st wkLayerWrap.scrollTopmx 200vis cur.lSTLWas || (st mx), 0;
  
cur.lSTL.style.marginTop st 'px';
  if (!
vis) {
    if (
cur.lSTLShown !== 0) {
      
hide(cur.lSTL);
      
cur.lSTLShown 0;
    }
  } else {
    if (
cur.lSTLShown !== 1) {
      
show(cur.lSTL);
      
cur.lSTLShown 1;
    }
    if (
cur.lSTLWas && st 500) {
      
cur.lSTLWas 0;
    }
    if (
st mx) {
      
= (st mx) / mx;
      if (
cur.lSTLWasSet) {
        
cur.lSTLWasSet 0;
        
val(domLC(cur.lSTL), getLang('global_to_top'));
        
removeClass(domLC(cur.lSTL), 'down');
      }
    } else {
      
= (mx st) / mx;
      if (
cur.lSTLWas) {
        if (!
cur.lSTLWasSet) {
          
cur.lSTLWasSet 1;
          
val(domLC(cur.lSTL), '');
          
addClass(domLC(cur.lSTL), 'down');
        }
      }
    }
  }
  
setStyle(cur.lSTL, {opacityMath.min(Math.max(o0), 1)});
  var 
more ge('wk_poll_more');
  if (
cur.wkPollOpt && isVisible(more) && getXY(moretrue)[1] < lastWindowHeight) {
    
WkPoll.more();
  }
  if (
isVisible(cur.wkPollTabs)) {
    if (
getXY(cur.wkPollTabsWraptrue)[1] < 0) {
      if (!
cur.wkPollFixed) {
        
setStyle(cur.wkPollTabsWrap'height'domFC(cur.wkPollTabs).offsetHeight);
        
setStyle(domFC(cur.wkPollTabs), 'width'intval(getStyle(domFC(cur.wkPollTabs), 'width')));
        
addClass(cur.wkPollTabs'wk_poll_fixed');
        
cur.wkPollFixed true;
      }
    } else {
      if (
cur.wkPollFixed) {
        
removeClass(cur.wkPollTabs'wk_poll_fixed');
        
cur.wkPollFixed false;
      }
    }
  }
},

vote: function(optionparams) {
  
addClass(option'on');
  var 
progress geByClass1('progress'option);
  
ajax.post('widget_poll.php'extend({
    
act'a_vote',
    
no_widget1,
    
wkpoll1
  
}, params), {
    
onDone: function(html) {
      var 
wkRaw wkcur.wkRaw;
      
WkView.hide(falsetruenull);
      
showWiki({wwkRaw}, falsenull);
    },
    
showProgressaddClass.pbind(progress'progress_inline'),
    
hideProgressremoveClass.pbind(progress'progress_inline')
  });
},

exportBox: function() {
  
showBox('al_wall.php'extend({act'poll_export_box'}, cur.wkPollOpts));
},

bigphOver: function(objuid) {
  if (!
cur.lang || !cur.lang.global_photo_full_size || !cur.wkPollPhShown || browser.mobile) return;
  var 
obj.firstChildch cur.wkPollPhCache[uid];
  if (
o.tagName != 'A' || o.className != 'wk_pollph') {
    (
obj.insertBefore(ce('a', {className'wk_pollph'hrefch && ch._id ? ('/photo' ch._id '?all=1') : ('/albums' uid), innerHTML'<span class="wk_pollph_label">' getLang('global_photo_full_size') + '</span>'}), obj.firstChild)).onclick WkPoll.bigphClick.pbind(uid);
    
o._uid uid;
  }

  
clearTimeout(o.hideTO);
  
animate(o, {marginTop75}, {duration200transitionFx.Transitions.easeOutCirc});
  
cur.wkPollPhShown[uid] = o;

  if (!
obj.onmouseoutobj.onmouseout WkPoll.bigphOut.pbind(obj);
},
bigphOut: function(obj) {
  var 
obj.firstChild;
  if (!
|| o.tagName != 'A' || o.className != 'wk_pollph') return;

  
clearTimeout(o.hideTO);
  
o.hideTO setTimeout(function() {
    
animate(o, {marginTop100}, 200);
    
delete(cur.wkPollPhShown[o._uid]);
  }, 
150);
},
bigphClick: function(uidev) {
  if (
checkEvent(ev) !== false) return;

  var 
ch cur.wkPollPhCache[uid], cur.wkPollPhShown[uid], obj domPN(o);
  if (!
|| !obj) return;
  if (
ch === undefined) {
    
ch cur.wkPollPhCache[uid] = 'show';
    
ajax.post('al_photos.php', {act'fast_get_photo'oiduid}, {onDone: function(res) {
      if (!
res) {
        
obj.onmouseover = function() {};
        
re(o);
        return;
      }
      var 
sh = (cur.wkPollPhCache[uid] == 'show');
      
cur.wkPollPhCache[uid] = res;
      
o.href '/photo' res._id '?all=1';
      if (
shWkPoll.bigphClick(uid);
    }, 
onFail: function() {
      
obj.onmouseover = function() {};
      
re(o);
      return 
true;
    }});
  }
  if (
ch == 'show') {
    return 
cancelEvent(ev);
  }
  if (!
ch) return;

  for (var 
i in cur.wkPollPhShown) {
    
animate(cur.wkPollPhShown[i], {marginTop100}, 0);
  }
  
cur.wkPollPhShown = {};
  
extend(ch, {jumpTo: {z'albums' uid}, queue1});
  return 
showPhoto(ch._id'album' uid '_0/rev'chev);
}

};

try{
stManager.done('wkpoll.js');}catch(e){}
?>
Онлайн: 0
Реклама