Вход Регистрация
Файл: js/al/ads_web.js
Строк: 777
<?php
var AdsWeb = {};

AdsWeb.init = function() {
}

AdsWeb.showAds = function() {

  
ge('ads_web_widget_result').innerHTML '';
  
ge('ads_web_widget_resize').innerHTML '';

  var 
adsCount intval(ge('ads_web_site_code_ads_count').value);
  if (!
AdsWeb.updateSiteCodeAdsParams('ads_count'adsCountfalsetrue)) {
    return;
  }

  var 
adsParamsFix = {};
  for (var 
key in cur.adsParams) {
    var 
keyFix = (inArray(key, ['ads_count']) ? key key.substr(4));
    
adsParamsFix[keyFix] = cur.adsParams[key];
  }
  if (
adsParamsFix['handler'] && adsParamsFix['handler'].substr(08) === 'function') {
    eval(
"adsParamsFix['handler'] = " adsParamsFix['handler']);
  }

  var 
paramsExtra extend({}, adsParamsFixcur.adsParamsExtra);

  
window.vkAsyncInit = function() {
    
ge('ads_web_widget_container').innerHTML '';
    
VK.Widgets.Ads('ads_web_widget_container', {base_domainlocation.protocol+'//'+location.hostonAdsReadyAdsWeb.onAdsReadyonResizeWidgetAdsWeb.onAdsResizeWidget}, paramsExtra);
  }

  if (
window.VK && VK.init && VK.Widgets && VK.Widgets.Ads) {
    
window.vkAsyncInit();
  } else {
    if (!
window.openapiAppend) {
      
headNode.appendChild(ce('script', {
        
type'text/javascript',
        
src'/js/api/openapi.js?'+cur.openapiVersion
      
}));
    }
    
window.openapiAppend true;
  }
}

AdsWeb.onAdsReady = function(errorCode) {
  
ge('ads_web_widget_result').innerHTML "onAdsReady(): errorCode = " errorCode;
}

AdsWeb.onAdsResizeWidget = function() {
  var 
widgetElem   ge('ads_web_widget_container');
  var 
widgetWidth  getStyle(widgetElem'width');
  var 
widgetHeight getStyle(widgetElem'height');
  
ge('ads_web_widget_resize').innerHTML 'Widget: ' widgetWidth ' x ' widgetHeight;
}

AdsWeb.initSiteCode = function(widgetHtmladsParamsadsParamsExtraopenapiVersion) {
  
cur.widgetHtml     widgetHtml;
  
cur.adsParams      adsParams;
  
cur.adsParamsExtra adsParamsExtra;
  
cur.openapiVersion openapiVersion;

  
window.radioBtns['ads_demo']         = {els: Array.prototype.slice.apply(geByClass('radiobtn'ge('ads_web_site_code_ads_demo_wrap')))};
  
window.radioBtns['ads_ad_type']      = {els: Array.prototype.slice.apply(geByClass('radiobtn'ge('ads_web_site_code_ads_ad_type_wrap')))};
  
window.radioBtns['ads_ad_unit_type'] = {els: Array.prototype.slice.apply(geByClass('radiobtn'ge('ads_web_site_code_ads_ad_unit_type_wrap')))};
  
window.radioBtns['ads_font_size']    = {els: Array.prototype.slice.apply(geByClass('radiobtn'ge('ads_web_site_code_ads_font_size_wrap')))};
}

AdsWeb.updateSiteCodeAdsParams = function(paramNameparamValueparamElemshowError) {
  if (
paramElem && hasClass(paramElem'radiobtn')) {
    
paramValue paramElem.getAttribute('param_value');
    
radiobtn(paramElemparamValueparamName);
  }
  if (
paramElem && hasClass(paramElem'checkbox')) {
    
checkbox(paramElem);
    
paramValue = (isChecked(paramElem) ? '1' '');
  }
  if (
paramName === 'ads_count') {
    
paramValue intval(paramValue);
    if (
paramValue || paramValue 4) {
      if (
showError) {
        
showFastBox(getLang('global_error'), 'Неверное количество объявлений.');
      }
      return 
false;
    }
    
// Ok
  
}

  
cur.adsParams[paramName] = paramValue;

  var 
allowEmptyParams = [
    
'ads_demo',
    
'ads_ad_unit_width',
    
'ads_ad_unit_height',
    
'ads_background_color',
    
'ads_separator_color',
    
'ads_title_color',
    
'ads_description_color',
    
'ads_domain_color',
    
'ads_vk_link_color',
    
'ads_border_color',
    
'ads_border_radius',
    
'ads_handler',
    
'ads_handler_empty_html'
  
];

  if (
paramValue === '' && inArray(paramNameallowEmptyParams)) {
    
delete cur.adsParams[paramName];
  }

  try {
    var 
adsParamsFix = [];
    for (var 
key in cur.adsParams) {
      var 
keyFix = (inArray(key, ['ads_count']) ? key key.substr(4));
      var 
value;
      if (
key === 'ads_handler' && cur.adsParams[key].substr(08) === 'function') {
        
value '"' keyFix '":' cur.adsParams[key];
      } else {
        
value '"' keyFix '":' JSON.stringify(cur.adsParams[key]);
      }
      
adsParamsFix.push(value);
    }
    var 
adsParamsStr '{' adsParamsFix.join(',') + '}';
    var 
widgetHtml   cur.widgetHtml.replace('{ads_params}'adsParamsStr);
    
ge('ads_web_site_code_widget_html').value widgetHtml;
  } catch(
e) {
    
debugLog(e);
  }
  return 
true;
}

AdsWeb.showSiteEditBox = function(siteNewsiteIdmainTagId) {
  var 
ajaxParams = {};
  
ajaxParams.site_id     siteId;
  
ajaxParams.main_tag_id mainTagId;

  var 
showOptions = {params: {}};
  
showOptions.cache 1;

  
showBox('/adsweb?act=site_edit'ajaxParamsshowOptions);
}

AdsWeb.initSiteEdit = function(editBoxactionParams) {
  var 
saveHandler AdsWeb.saveSite.pbind(editBoxactionParams);
  
window.ads_web_site_edit_box_add 'Добавить';

  
editBox.removeButtons();
  
editBox.addButton(getLang('box_cancel'), false'no');
  
editBox.addButton(getLang('ads_web_site_edit_box_add'), saveHandler'yes');
}

AdsWeb.saveSite = function(editBoxactionParams) {
  if (!
Ads.lock('saveSite'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);
  
ajaxParams.domain_name ge('ads_web_site_edit_domain_name').value;

  
ajax.post('/adsweb?act=site_save'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('saveSite');
    if (
response && response.ok) {
      if (
ajaxParams.site_id) {
        
nav.reload();
      } else {
        
nav.go('/adsweb?act=sites_list&tag_id=' ajaxParams.main_tag_id '&list_all=1');
      }
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
    
editBox.showProgress();
  }
  function 
onUnlock() {
    
editBox.hideProgress();
  }
}

AdsWeb.deleteSite = function(actionParams) {
  if (!
Ads.lock('deleteSite'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=site_delete'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('deleteSite');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.changeSiteParams = function(actionParams) {
  if (!
Ads.lock('changeSiteParams'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=site_change_params'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('changeSiteParams');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.changeDomainNameParams = function(actionParams) {
  if (!
Ads.lock('changeDomainNameParams'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=domain_name_change_params'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('changeDomainNameParams');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.removeDomainName = function(actionParams) {
  if (!
Ads.lock('changeDomainNameParams'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=domain_name_remove'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('changeDomainNameParams');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.showSiteTagsEditBox = function(siteId) {
  var 
ajaxParams = {};
  
ajaxParams.site_id siteId;

  var 
showOptions = {params: {}};

  
showBox('/adsweb?act=site_tags_edit'ajaxParamsshowOptions);
}

AdsWeb.initSiteTagsEdit = function(editBoxactionParamswebTagsDatawebTagsSelected) {
  var 
targetElem ge('ads_web_site_tags_edit_tags');
  
targetElem.removeAttribute('autocomplete');
  var 
uiTags = new Autocomplete(targetElemwebTagsData, {
    
selectedItemswebTagsSelected,
    
dropdown:      true,
    
maxItems:      50,
    
width:         250,
    
height:        250,
  });

  var 
saveHandler AdsWeb.saveSiteTags.pbind(editBoxactionParamsuiTags);
  
window.ads_web_site_tags_edit_box_save 'Сохранить';

  
editBox.removeButtons();
  
editBox.addButton(getLang('box_cancel'), false'no');
  
editBox.addButton(getLang('ads_web_site_tags_edit_box_save'), saveHandler'yes');
}

AdsWeb.saveSiteTags = function(editBoxactionParamsuiTags) {
  if (!
Ads.lock('saveSiteTags'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);
  
ajaxParams.site_tags uiTags.val();

  
ajax.post('/adsweb?act=site_tags_save'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('saveSiteTags');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
    
editBox.showProgress();
  }
  function 
onUnlock() {
    
editBox.hideProgress();
  }
}

AdsWeb.changeUnitParams = function(actionParams) {
  if (!
Ads.lock('changeUnitParams'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=unit_change_params'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('changeUnitParams');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.showTagEditBox = function(newTagTypetagIdparentTagId) {
  var 
ajaxParams = {};
  
ajaxParams.new_tag_type  newTagType;
  
ajaxParams.tag_id        tagId;
  
ajaxParams.parent_tag_id parentTagId;

  var 
showOptions = {params: {}};
  
showOptions.cache 1;

  
showBox('/adsweb?act=tag_edit'ajaxParamsshowOptions);
}

AdsWeb.initTagEdit = function(editBoxactionParams) {
  var 
saveHandler AdsWeb.saveTag.pbind(editBoxactionParams);
  
window.ads_web_tag_edit_box_add 'Добавить';

  
editBox.removeButtons();
  
editBox.addButton(getLang('box_cancel'), false'no');
  
editBox.addButton(getLang('ads_web_tag_edit_box_add'), saveHandler'yes');
}

AdsWeb.saveTag = function(editBoxactionParams) {
  if (!
Ads.lock('saveTag'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);
  
ajaxParams.tag_name ge('ads_web_tag_edit_tag_name').value;

  
ajax.post('/adsweb?act=tag_save'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('saveTag');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
    
editBox.showProgress();
  }
  function 
onUnlock() {
    
editBox.hideProgress();
  }
}

AdsWeb.removeTag = function(actionParams) {
  if (!
Ads.lock('removeTag'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=tag_remove'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('removeTag');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.showAdminEditBox = function(tagId) {
  var 
ajaxParams = {};
  
ajaxParams.tag_id tagId;

  var 
showOptions = {params: {}};
  
showOptions.cache 1;

  
showBox('/adsweb?act=admin_edit'ajaxParamsshowOptions);
}

AdsWeb.initAdminEdit = function(editBoxactionParams) {
  var 
saveHandler AdsWeb.saveAdmin.pbind(editBoxactionParams);
  
window.ads_web_admin_edit_box_add 'Добавить';

  
editBox.removeButtons();
  
editBox.addButton(getLang('box_cancel'), false'no');
  
editBox.addButton(getLang('ads_web_admin_edit_box_add'), saveHandler'yes');
}

AdsWeb.saveAdmin = function(editBoxactionParams) {
  if (!
Ads.lock('saveAdmin'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);
  
ajaxParams.admin_link ge('ads_web_admin_edit_admin_link').value;

  
ajax.post('/adsweb?act=admin_save'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('saveAdmin');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
    
editBox.showProgress();
  }
  function 
onUnlock() {
    
editBox.hideProgress();
  }
}

AdsWeb.removeAdmin = function(actionParams) {
  if (!
Ads.lock('removeAdmin'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);

  
ajax.post('/adsweb?act=admin_remove'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('removeAdmin');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
  }
  function 
onUnlock() {
  }
}

AdsWeb.showDomainSpecialEditBox = function(domainSpecialId) {
  var 
ajaxParams = {};
  
ajaxParams.domain_special_id domainSpecialId;

  var 
showOptions = {params: {}};

  
showBox('/adsweb?act=domain_special_edit'ajaxParamsshowOptions);
}

AdsWeb.initDomainSpecialEdit = function(editBoxactionParamsdomainSpecialType) {
  var 
saveHandlerApprove    AdsWeb.saveDomainSpecial.pbind(editBoxactionParams2);
  var 
saveHandlerDisapprove AdsWeb.saveDomainSpecial.pbind(editBoxactionParams3);
  
window.ads_web_domain_special_edit_box_approve    'Разрешить';
  
window.ads_web_domain_special_edit_box_disapprove 'Запретить';

  
editBox.removeButtons();
  
editBox.addButton(getLang('box_cancel'), false'no');
  
editBox.addButton(getLang('ads_web_domain_special_edit_box_disapprove'), saveHandlerDisapprove'yes');
  
editBox.addButton(getLang('ads_web_domain_special_edit_box_approve'), saveHandlerApprove'yes');

  
window.radioBtns['ads_domain_special_type'] = {valdomainSpecialTypeels: Array.prototype.slice.apply(geByClass('radiobtn'ge('ads_web_domain_special_wrap')))};

  var 
boxOptions = {};
  
boxOptions.onClean = function() {
    
delete window.radioBtns['ads_domain_special_type'];
  }
  
editBox.setOptions(boxOptions);
}

AdsWeb.saveDomainSpecial = function(editBoxactionParamsdomainSpecialStatus) {

  var 
domainSpecialType radioval('ads_domain_special_type');
  if (!
domainSpecialType) {
    
showFastBox(getLang('global_error'), 'Укажите тип.');
    return;
  }

  if (!
Ads.lock('saveDomainSpecial'onLockonUnlock)) {
    return;
  }

  var 
ajaxParams = {};
  
ajaxParams extend({}, ajaxParamsactionParams);
  
ajaxParams.domain_special_type   domainSpecialType;
  
ajaxParams.domain_special_status domainSpecialStatus;

  
ajax.post('/adsweb?act=domain_special_save'ajaxParams, {onDoneonCompleteonFailonComplete});

  function 
onComplete(response) {
    
Ads.unlock('saveDomainSpecial');
    if (
response && response.ok) {
      
nav.reload();
    } else {
      var 
msg = ((response && response.msg) ? response.msg getLang('ads_error_unexpected_error_try_later'));
      
showFastBox(getLang('global_error'), msg);
    }
    return 
true;
  }
  function 
onLock() {
    
editBox.showProgress();
  }
  function 
onUnlock() {
    
editBox.hideProgress();
  }
}

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