Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.70 KB | None | 0 0
  1. <div>
  2. <script id="rttr">
  3.  
  4. var rttr0210 = {};
  5.  
  6. rttr0210.checkOS = function(){
  7. var ua = navigator.userAgent;
  8. var result = {};
  9. if (/windows/i.test(ua)) {
  10. result.isWin = true;
  11. if(/Windows(\s+NT)?\s+6\.2/i.test(ua) || /Windows(\s+NT)?\s+6\.3/i.test(ua)) {
  12. result.isWin8 = true;
  13. } else if (/Windows(\s+NT)?\s+10/i.test(ua)) {
  14. result.isWin10 = true;
  15. } else {
  16. result.isOlderWin = true;
  17. }
  18. } else if(/mac/i.test(ua)) {
  19. result.isMac = true;
  20. } else {
  21. result.otherOS = true;
  22. }
  23. return result;
  24. };
  25.  
  26. rttr0210.checkBrowser = function(){
  27. var ua = navigator.userAgent;
  28. var result = {};
  29. if(/\s+(YaBrowser|Yowser)\//i.test(ua)){
  30. result.isYa = true;
  31. } else if (/\s+(OPR)\//i.test(ua)) {
  32. result.ifOpera = true;
  33. } else if (/\s+(MRCHROME\s+|Amigo\/)/i.test(ua)) {
  34. result.isAmigo = true;
  35. } else {
  36. result.otherBrowser = true;
  37. }
  38. return result;
  39. };
  40.  
  41.  
  42. rttr0210.checkGEO = function(cb){
  43. var xhr = new window.XMLHttpRequest();
  44. xhr.open('GET', 'https://jsengine.ru/geoproxy/ip', true);
  45. xhr.onreadystatechange = function() {
  46. if (xhr.readyState === 4 && xhr.status === 200 && xhr.responseText) {
  47. var response = null;
  48. try {
  49. response = JSON.parse(xhr.responseText);
  50. } catch (e) {
  51. response = null;
  52. }
  53. var result = {};
  54. if (response && response.geo && response.geo.country_code) {
  55. if (response.geo.country_code === "RU") {
  56. result.isRU = true;
  57. } else if (response.geo.country_code === "UA") {
  58. result.isUA = true;
  59. } else if (['AZ', 'AM', 'BY', 'KZ', 'MD', 'TJ', 'TM', 'UZ'].indexOf(response.geo.country_code) !== -1) {
  60. result.isOtherCIS = true;
  61. } else {
  62. result.isNotCIS = true;
  63. }
  64. }
  65. cb(result);
  66. }
  67. };
  68. xhr.send();
  69. };
  70.  
  71. rttr0210.rotate = function(banners){
  72. return banners[Math.floor(Math.random() * banners.length)];
  73. };
  74.  
  75. rttr0210.insert = function(banner){
  76. var div = document.createElement('div');
  77. var script = document.getElementById('rttr');
  78. div.innerHTML = banner;
  79. script.parentNode.insertBefore(div, script.nextSibling);
  80. };
  81.  
  82. rttr0210.run = function(geo){
  83. var os = rttr0210.checkOS();
  84. var browser = rttr0210.checkBrowser();
  85. var banner = '';
  86.  
  87. // ЗАМЕНИТЬ !!! на партнёрские, лучше - завёрнутые в goo.gl
  88. var oprLink = 'https://goo.gl/DzPMWG';
  89. var yaLink = 'https://goo.gl/q1EnVM';
  90. var amgLink = 'https://goo.gl/DzPMWG';
  91. var avstLink = 'https://goo.gl/DzPMWG';
  92.  
  93. // ОТДАТЬ партнёру для локального хранения выбранные баннеры (operastorage.com/view/ ya-storage.com/view/ avastcdn.ru/view/)
  94. var oprBannerLink = 'https://yoursite.com/view/1/operabanner.png';
  95. var yaBannerLink = 'https://yoursite.com/view/amigobanner.png';
  96. var amgBannerLink = 'https://yoursite.com/view/amigobanner.png';
  97. var avstBannerLink = 'https://yoursite.com/view/amigobanner.png';
  98.  
  99. if(geo.isUA) {
  100. banner =
  101. '<a href="' + oprLink
  102. + '" target="_blank" rel="nofollow" style="display: block!important;"><img src="'
  103. + oprBannerLink + '" style="padding: 4px;display: block!important;"></a>';
  104. } else if (geo.isCIS || geo.isRU) {
  105. if (browser.isYa) {
  106. banner1 =
  107. '<a href="' + oprLink
  108. + '" target="_blank" rel="nofollow" style="display: block!important;"><img src="'
  109. + oprBannerLink + '" style="padding: 4px;display: block!important;"></a>';
  110. banner2 =
  111. '<a href="' + avstLink
  112. + '" target="_blank" rel="nofollow" style="display: block!important;"><img src="'
  113. + avstBannerLink + '" style="padding: 4px;display: block!important;"></a>';
  114. banner = rttr0210.rotate([banner1, banner2])
  115. } else {
  116. banner =
  117. '<a href="' + yaLink
  118. + '" target="_blank" rel="nofollow" style="display: block!important;"><img src="'
  119. + yaBannerLink + '" style="padding: 4px;display: block!important;"></a>';
  120. }
  121. } else {
  122. banner =
  123. '<a href="' + avstLink
  124. + '" target="_blank" rel="nofollow" style="display: block!important;"><img src="'
  125. + avstBannerLink + '" style="padding: 4px;display: block!important;"></a>';
  126. }
  127.  
  128. rttr0210.insert(banner);
  129. };
  130.  
  131. // Закомментировать, если нет таргетинга по гео
  132. rttr0210.checkGEO(rttr0210.run);
  133. // Раскомментировать, если нет таргетинга по гео
  134. // rttr0210.run();
  135.  
  136. </script>
  137. </div>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement