1var SKWM = {}; 2 3SKWM = { 4 5 pdfloader: '<img src="//seorch.net/gfx/ajax-loader-pdf.gif" alt="rendering" />', 6 pdfdownload: '<img src="//seorch.net/gfx/pdf-download.png" alt="download" />', 7 pdfdownloaderror: '<img src="//seorch.net/gfx/pdf-download-error.png" alt="error" />', 8 ajaxloader: '<img src="//seorch.net/gfx/ajax-loader.svg" alt="loading" style="display:block; margin: 0 auto;" />', 9 ajaxloadermini: '<img class="ctaminiloader" src="//seorch.net/gfx/ajax-loader-mini.gif" alt="loading" />', 10 rankingsUp: 0, 11 rankingsDown: 0, 12 rankingsEqual: 0, 13 rankingsNew: 0, 14 15 16 init: function() { 17 18 this.rankNew = $('#skwm_ranknew'); 19 this.rankUp = $('#skwm_rankup'); 20 this.rankEqual = $('#skwm_rankequal'); 21 this.rankDown = $('#skwm_rankdown'); 22 23 }, 24 25 26 urlmonitor: function () { 27 28 if ($(".difftable")) { 29 $("#selectall").change(function(){ 30 $(".removekeyword").prop('checked', $(this).prop("checked")); 31 }); 32 } 33 34 }, 35 36 37 niceForms: function () { 38 39 $('.formsection').each(function() { 40 41 var label = $(this).children("label"); 42 var input = $(this).children("textarea"); 43 44 if (input.val() !== '') { 45 input = $(this).children("input"); 46 } 47 48 label.click(function() { 49 input.focus(); 50 }); 51 52 SKWM.niceFormshideLabel(input, label); 53 54 input.bind('keyup change click', function() { 55 SKWM.niceFormshideLabel(input, label); 56 }); 57 }); 58 59 }, 60 61 62 niceFormshideLabel: function (input, label) { 63 64 if (input.val() !== '') { 65 label.addClass('hidden'); 66 } else { 67 label.removeClass('hidden'); 68 } 69 70 }, 71 72 73 targetBlank: function() { 74 75 var externalLinks = $('a[rel="external"]'); 76 77 externalLinks.each(function(i) { 78 $(this).attr('target', '_blank'); 79 }); 80 81 }, 82 83 84 calcRankingDelta: function(row) { 85 86 var shittySelector = $('tr>td:nth-child(4)>.kw-posneg'); 87 88 shittySelector.each(function() { 89 90 attributeValue = $(this).attr('alt'); 91 92 if (attributeValue === 'up') { 93 SKWM.rankingsUp = SKWM.rankingsUp + 1; 94 } else if (attributeValue === 'down') { 95 SKWM.rankingsDown = SKWM.rankingsDown + 1; 96 } else if (attributeValue === 'equal') { 97 SKWM.rankingsEqual = SKWM.rankingsEqual + 1; 98 } else { 99 SKWM.rankingsNew = SKWM.rankingsNew + 1; 100 } 101 102 }); 103 104 //render 105 this.rankNew.html(SKWM.rankingsNew); 106 this.rankUp.html(SKWM.rankingsUp); 107 this.rankEqual.html(SKWM.rankingsEqual); 108 this.rankDown.html(SKWM.rankingsDown); 109 110 }, 111 112 113 pieChartTable: function() { 114 115 $('.toggle').click(function(){ 116 $(this).next().toggle(); 117 }); 118 119 }, 120 121 122 pieChart: function(elem, pieSeries1, pieDesc1) { 123 124 var elen = document.getElementById(elem); 125 126 if (elen) { 127 128 Highcharts.chart(elen, { 129 chart: {
130 plotBackgroundColor: null, 131 plotBorderWidth: 0, 132 plotShadow: false 133 }, 134 credits: {enabled: false}, 135 title: { 136 text: pieDesc1, 137 align: 'center', 138 verticalAlign: 'middle', 139 y: -10, 140 style: { 141 fontSize: '1.3em' 142 } 143 }, 144 tooltip: {pointFormat: '<b>{point.percentage:.1f}%</b>'}, 145 accessibility: {point: {valueSuffix: '%'}}, 146 plotOptions: { 147 pie: { 148 dataLabels: { 149 enabled: true, 150 distance: -50, 151 style: {fontWeight: 'bold', color: 'white', fontSize: '.9em'} 152 }, 153 center: ['50%', '50%'], 154 size: '100%' 155 } 156 }, 157 exporting: { 158 buttons: {contextButton: { menuItems: ['downloadPNG', 'downloadJPEG', 'downloadSVG', 'downloadPDF'] }} 159 }, 160 series: pieSeries1 161 }); 162 163 } 164 165 }, 166 167 lineChart: function() { 168 169 var elen = document.getElementById('linechart'); 170 171 if (elen) { 172 173 elen.innerHTML = this.ajaxloader; 174 175 var kw = elen.getAttribute('data-keyword'); 176 var domain = elen.getAttribute('data-url'); 177 var lang = elen.getAttribute('data-lang'); 178 var loc = elen.getAttribute('data-loc'); 179 var timeframe = elen.getAttribute('data-timeframe'); 180 181 $.getJSON( SKWM.domain+"linechart.json", { kw: kw, url: domain, lang: lang, loc: loc, timeframe: timeframe } ) 182 183 .done(function(json) { 184 185 var chart = json.charts; 186 var series_data = new Array(); 187 var i = 0; 188 189 if (chart !== null) { 190 chart.forEach(function(entry) { 191 var entries = JSON.parse('[' + entry.series + ']'); 192 series_data[i] = {visible: true, name: entry.name, yAxis: 0, data: entries}; 193 i++; 194 }); 195 } 196 197 let kw_out = kw.replace('+', ' '); 198 199 Highcharts.chart('linechart', { 200 chart: {type: 'spline'}, 201 yAxis: [{type: 'logarithmic', startOnTick: false, endOnTick: false, min:1, max:100, minRange:1, labels: {formatter: function () {if (this.value == 0) { return 1 } else { return this.value };}}, alternateGridColor: '#f8f8f8', title: { text: 'POSITION' }, reversed: true, minorTickInterval: 0.5}], 202 xAxis: {categories: json.categories, reversed: true}, 203 title: {text: 'Rankings: ' + kw_out, align: 'center'}, 204 credits: {enabled: false}, 205 tooltip: {shared: true, pointFormat: '<span style="color:{point.color}">-</span> {series.name}: <b>{point.y}</b><br/>'}, 206 plotOptions: { 207 series: {
208 marker: { fillColor: '#FFFFFF', lineWidth: 1, radius: 3, lineColor: null }, 209 } 210 }, 211 series: series_data, 212 exporting: { 213 buttons: { 214 contextButton: { menuItems: ['downloadPNG', 'downloadJPEG', 'downloadSVG', 'downloadPDF'] } 215 } 216 }, 217 lang: { 218 noData: 'Aus den letzten drei Monaten sind keine Rankings vorhanden!' 219 }, 220 responsive: { 221 rules: [{ 222 condition: { maxWidth: 1500 }, 223 chartOptions: { legend: { layout: 'horizontal', align: 'center', verticalAlign: 'bottom' } } 224 }] 225 } 226 }); 227 228 }) 229 .fail(function( jqxhr, textStatus, error ) { 230 var err = textStatus + ", " + error; 231 }); 232 233 } 234 235 }, 236 237 238 lineChartVisibility: function() { 239 240 var elen = document.getElementById('vischart-first'); 241 242 if (elen) { 243 244 document.getElementById('vischart-second').innerHTML = this.ajaxloader; 245 246 elen.innerHTML = this.ajaxloader; 247 248 var domain = elen.getAttribute('data-url'); 249 var lang = elen.getAttribute('data-lang'); 250 var loc = elen.getAttribute('data-loc'); 251 var timeframe = elen.getAttribute('data-timeframe'); 252 253 $.getJSON( SKWM.domain+"linechart-visibility.json", { url: domain, lang: lang, loc: loc, timeframe: timeframe } ) 254 255 .done(function(json) { 256 257 SKWM.HighChartAllInverse('vischart-first', json.first, false); 258 SKWM.HighChartAllInverse('vischart-second', json.second, false); 259 260 }) 261 .fail(function( jqxhr, textStatus, error ) { 262 var err = textStatus + ", " + error; 263 }); 264 265 } 266 267 }, 268 269 lineChartAll: function() { 270 271 var elen = document.getElementById('linechart-first'); 272 273 if (elen) { 274 275 elen.innerHTML = this.ajaxloader; 276 document.getElementById('linechart-second').innerHTML = this.ajaxloader; 277 document.getElementById('linechart-third').innerHTML = this.ajaxloader; 278 279 var domain = elen.getAttribute('data-url'); 280 var lang = elen.getAttribute('data-lang'); 281 var loc = elen.getAttribute('data-loc'); 282 var timeframe = elen.getAttribute('data-timeframe'); 283 284 $.getJSON( SKWM.domain+"linechart-all.json", { url: domain, lang: lang, loc: loc, timeframe: timeframe } ) 285 286 .done(function(json) { 287 288 SKWM.HighChartAllInverse('linechart-first', json.first, true); 289 SKWM.HighChartAllNormal('linechart-second', json.second, 'Keywords die mehr als 20 Plätze gewonnen haben'); 290 SKWM.HighChartAllNormal('linechart-third', json.third, 'Keywords die mehr als 20 Plätze verloren haben'); 291 292 }) 293 .fail(function( jqxhr, textStatus, error ) { 294 var err = textStatus + ", " + error; 295 }); 296 297 } 298 299 }, 300 301 HighChartAllInverse: function(elem, json, inverse) { 302 303 var chart = json.charts; 304 var series_data = new Array(); 305 var i = 0; 306 307 chart.forEach(function(entry) { 308 var entries = JSON.parse('[' + entry.series + ']'); 309 series_data[i] = {visible: true, name: entry.name, yAxis: 0, data: entries}; 310 i++; 311 }); 312 313 Highcharts.chart(elem, { 314 chart: {type: 'spline'}, 315 yAxis: [{type: 'linear', tickInterval:5, labels: {formatter: function () {if (this.value == 0) { return 1 } else { return this.value };}}, alternateGridColor: '#f8f8f8', title: { text: json.yaxis }, reversed: false}], 316 xAxis: {categories: json.categories, reversed: inverse}, 317 title: {text: json.title, align: 'center'}, 318 credits: {enabled: false}, 319 tooltip: {shared: true, pointFormat: '<span style="color:{point.color}">-</span> {series.name}: <b>{point.y}</b><br/>'}, 320 plotOptions: { 321 series: {
322 marker: { fillColor: '#FFFFFF', lineWidth: 1, radius: 3, lineColor: null } 323 } 324 }, 325 series: series_data, 326 exporting: { 327 buttons: { 328 contextButton: { menuItems: ['downloadPNG', 'downloadJPEG', 'downloadSVG', 'downloadPDF'] } 329 } 330 }, 331 responsive: { 332 rules: [{ 333 condition: { maxWidth: 1500 }, 334 chartOptions: { legend: { layout: 'horizontal', align: 'center', verticalAlign: 'bottom' } } 335 }] 336 } 337 }); 338 339 }, 340 341 342 HighChartAllNormal: function(elem, json, title) { 343 344 var chart = json.charts; 345 var series_data = new Array(); 346 var i = 0; 347 348 chart.forEach(function(entry) { 349 var entries = JSON.parse('[' + entry.series + ']'); 350 series_data[i] = {visible: true, name: entry.name, yAxis: 0, data: entries}; 351 i++; 352 }); 353 354 Highcharts.chart(elem, { 355 chart: {type: 'spline'}, 356 yAxis: [{type: 'linear', tickInterval:5, labels: {formatter: function () {if (this.value == 0) { return 1 } else { return this.value };}}, alternateGridColor: '#f8f8f8', min:1, max:100, title: { text: 'POSITION' }, reversed: true}], 357 xAxis: {categories: json.categories, reversed: true}, 358 title: {text: title, align: 'center'}, 359 credits: {enabled: false}, 360 tooltip: {shared: false, pointFormat: '<span style="color:{point.color}">-</span> {series.name}: <b>{point.y}</b><br/>'}, 361 plotOptions: { 362 series: {
363 marker: { fillColor: '#FFFFFF', lineWidth: 1, radius: 3, lineColor: null } 364 } 365 }, 366 series: series_data, 367 exporting: { 368 buttons: { 369 contextButton: { menuItems: ['downloadPNG', 'downloadJPEG', 'downloadSVG', 'downloadPDF'] } 370 } 371 }, 372 lang: { 373 noData: 'Keine Ergebnisse' 374 }, 375 responsive: { 376 rules: [{ 377 condition: { maxWidth: 1500 }, 378 chartOptions: { legend: { layout: 'horizontal', align: 'center', verticalAlign: 'bottom' } } 379 }] 380 } 381 }); 382 383 }, 384 385 386 exportSpreadSheet: function() { 387 388 var makecsv = $('#rendercsv'); 389 var makeexcel = $('#renderexcel'); 390 var makegdrive = $('#gdriverender'); 391 392 makecsv.click(function(e) { 393 e.preventDefault(); 394 SKWM.saveSpreadsheet(makecsv, 'csv', '⇓'); 395 }); 396 397 makegdrive.click(function(e) { 398 e.preventDefault(); 399 SKWM.saveSpreadsheet(makegdrive, 'gdrive', '↗'); 400 }); 401 402 makeexcel.click(function(e) { 403 e.preventDefault(); 404 SKWM.saveSpreadsheet(makeexcel, 'excel', '⇓'); 405 }); 406 407 }, 408
409 exportSpreadSheetDetail: function() { 410 411 var makecsv = $('#rendercsvdetail'); 412 var makeexcel = $('#renderexceldetail'); 413 var makegdrive = $('#gdriverenderdetail'); 414 415 makecsv.click(function(e) { 416 e.preventDefault(); 417 SKWM.saveSpreadsheetDetail(makecsv, 'csv', '⇓'); 418 }); 419 420 makegdrive.click(function(e) { 421 e.preventDefault(); 422 SKWM.saveSpreadsheetDetail(makegdrive, 'gdrive', '↗'); 423 }); 424 425 makeexcel.click(function(e) { 426 e.preventDefault(); 427 SKWM.saveSpreadsheetDetail(makeexcel, 'excel', '⇓'); 428 }); 429 430 }, 431 432 saveSpreadsheet: function (elem, flavor, icon) { 433 434 var that = this; 435 436 elem.html('<span class="downloadspin">↻</span>'); 437 438 var data = Array(); 439 var head = Array(); 440 441 // URL RANKINGS 442 if ( $('.kwsmall').length > 0 ) { 443 444 var hclass = $('.keywordmonitor>tbody>tr'); 445 var hhead = $('.keywordmonitor>thead>tr'); 446 447 hhead.each(function(i, v) { 448 head[i] = Array(); 449 $(this).children('td').each(function(ii, vv){ 450 head[i][ii] = $(this).text().trim(); 451 }); 452 453 }); 454 455 hclass.each(function(i, v) { 456 457 data[i] = Array(); 458 459 $(this).children('td').each(function(ii, vv){ 460 461 if ( $(this).find('.kwsmall').length === 0 ) { 462 data[i][ii] = $(this).text().trim(); 463 } else { 464 data[i][ii] = $(this).find('.kwsmall tr td:eq(2)').text().trim() + ' / ' + $(this).find('.kwsmall tr td:eq(3)').text().trim(); 465 } 466 467 }); 468 469 }); 470 471 data = head.concat(data); 472 473 // ALL OTHER RANKINGS 474 } else { 475 476 var hclass = $('.keywordmonitor tr').not('.not'); 477 478 hclass.each(function(i, v){ 479 data[i] = Array(); 480 $(this).children('td').each(function(ii, vv){ 481 if ($(this).data('csv')) { 482 data[i][ii] = $(this).data('csv'); 483 } else { 484 data[i][ii] = $(this).text().trim(); 485 } 486 }); 487 }); 488 489 } 490 491 492 data = (JSON.stringify(data)); 493 494 $.ajax({ 495 type: "POST", 496 url: SKWM.domain+"dataexport", 497 data: { data: data, type: flavor }, 498 error:function (xhr, ajaxOptions, thrownError){ 499 elem.parent().html('<a class="download" target="_blank">✕</a>'); 500 }, 501 success: function(data){ 502 elem.off('click'); 503 504 if (flavor == 'gdrive') { 505 506 var datax = $.trim(data); 507 508 $.ajax({ 509 type: "POST", 510 url: SKWM.domain+"googledrive-csv", 511 data: { filepath: datax, filename: 'Dataexport' }, 512 error:function (xhr, ajaxOptions, thrownError){ 513 elem.parent().html('<a class="download" target="_blank">✕</a>'); 514 }, 515 success: function(data){ 516 elem.off('click'); 517 elem.parent().html('<a class="download" href="' + $.trim(data) + '" target="_blank">'+icon+'</a>'); 518 } 519 }); 520 521 } else { 522 elem.parent().html('<a class="download" href="' + $.trim(data) + '" target="_blank">'+icon+'</a>'); 523 } 524 525 } 526 527 }); 528 529 }, 530
531 saveSpreadsheetDetail: function (elem, flavor, icon) { 532 533 var that = this; 534 535 elem.html('<span class="downloadspin">↻</span>'); 536 537 var data = Array(); 538 539 $(".top100urls tbody tr").each(function(i, v){ 540 data[i] = Array(); 541 $(this).children('td').each(function(ii, vv){ 542 data[i][ii] = $(this).data('csv'); 543 }); 544 }); 545 546 data = (JSON.stringify(data)); 547 548 $.ajax({ 549 type: "POST", 550 url: SKWM.domain+"dataexport", 551 data: { data: data, type: flavor }, 552 error:function (xhr, ajaxOptions, thrownError){ 553 elem.parent().html('<a class="download" target="_blank">✕</a>'); 554 }, 555 success: function(data){ 556 557 elem.off('click'); 558 559 if (flavor == 'gdrive') { 560 561 var datax = $.trim(data); 562 563 $.ajax({ 564 type: "POST", 565 url: SKWM.domain+"googledrive-csv", 566 data: { filepath: datax, filename: 'Dataexport' }, 567 error:function (xhr, ajaxOptions, thrownError){ 568 elem.parent().html('<a class="download" target="_blank">✕</a>'); 569 }, 570 success: function(data){ 571 elem.off('click'); 572 elem.parent().html('<a class="download" href="' + $.trim(data) + '" target="_blank">'+icon+'</a>'); 573 } 574 }); 575 576 } else { 577 578 elem.parent().html('<a class="download" href="' + $.trim(data) + '" target="_blank">'+icon+'</a>'); 579 580 } 581 582 } 583 }); 584 585 }, 586 587 588 savePDF: function () { 589 590 var that = this, 591 makepdf = $('#renderpdf'); 592 593 makepdf.click(function(e) { 594 595 e.preventDefault(); 596 597 makepdf.html('<span class="downloadspin">↻</span>'); 598 599 var data = $(".screenwrapper-max").html(); 600 601 $.ajax({ 602 type: "POST", 603 url: SKWM.domain+"dataexport", 604 data: { data: data, type:'pdf' }, 605 error:function (xhr, ajaxOptions, thrownError){ 606 makepdf.parent().html('<a class="download" target="_blank">✕</a>'); 607 }, 608 success: function(data){ 609 makepdf.off('click'); 610 makepdf.parent().html('<a class="download" href="' + $.trim(data) + '" target="_blank">⇓</a>'); 611 } 612 }); 613 614 }); 615 616 }, 617 618 datepick: function (selector, target) { 619 620 var dates = $(selector), 621 start = dates.data('start'), 622 end = dates.data('end'), 623 timeframe = dates.data('timeframe'); 624 625 if (timeframe == 'weekly') { 626 $(target).pickmeup({ 627 format : "Y-m-d", 628 min : start, 629 max : end, 630 render: function (date) { 631 var weekday = date.toLocaleString('en-us', {weekday:'long'}); 632 if (weekday != 'Monday') { 633 return {disabled : true, class_name : 'date-in-past'}; 634 } 635 } 636 }); 637 } else { 638 $(target).pickmeup({ 639 format : "Y-m-d", 640 min : start, 641 max : end 642 }); 643 } 644 645 }, 646 647 comments: function() { 648 649 var kwcomment = $('.kwcomment'); 650 var datatableobject = this.datatable; 651 652 kwcomment.each(function() { 653 654 var that = $(this); 655 656 // DELETE 657 that.children('.kwcommentdelete').click(function() { 658 659 that.children('textarea').val(''); 660 that.children('.kwsaved').hide(); 661 that.children('.kwsaving').show(); 662 663 $.ajax({ 664 type: "POST", 665 url: SKWM.domain+"commentsave", 666 data: { kid: that.data('kid'), did: that.data('did'), token: that.data('token'), del: 'true' }, 667 error:function (xhr, ajaxOptions, thrownError){}, 668 success: function(data){ 669 that.children('.kwsaving').hide(); 670 that.children('.kwsaved').show(); 671 that.children('textarea').html(''); 672 } 673 }); 674 }); 675 676 // EDIT 677 $(this).children('textarea').focus(function() { 678 679 that.children('.kwsaved').hide(); 680 681 }).blur(function() { 682 683 var ctext = $(this).val(); 684 685 if (ctext) { 686 that.children('.kwsaved').hide(); 687 that.children('.kwsaving').show(); 688 $.ajax({ 689 type: "POST", 690 url: SKWM.domain+"commentsave", 691 data: { kid: that.data('kid'), did: that.data('did'), token: that.data('token'), comment: ctext }, 692 error:function (xhr, ajaxOptions, thrownError){}, 693 success: function(data){ 694 that.children('.kwsaving').hide(); 695 that.children('.kwsaved').show(); 696 that.children('textarea').html(ctext); 697 } 698 }); 699 } 700 701 }); 702 703 }); 704 705 }, 706 707 708 columRangeBalancer: function (col) { 709 $.fn.dataTable.ext.search.push ( 710 function( settings, data, dataIndex ) { 711 var min = parseInt( $('#min'+col).val(), 10 ); 712 var max = parseInt( $('#max'+col).val(), 10 ); 713 var val = 0; 714 if (data[col]) { 715 val = data[col].replace(/<\/?[^>]+(>|$)/g, ""); 716 } 717 var age = parseFloat( val ) || 0; 718 if ( ( isNaN( min ) && isNaN( max ) ) || 719 ( isNaN( min ) && age <= max ) || 720 ( min <= age && isNaN( max ) ) || 721 ( min <= age && age <= max ) ) 722 { 723 return true; 724 } 725 return false;
726 } 727 ); 728 729 }, 730 731 732 dataTableInit: function() { 733 734 if ($('#datatableoverview').length > 0) { 735 736 SKWM.columRangeBalancer(2); 737 SKWM.columRangeBalancer(3); 738 SKWM.columRangeBalancer(4); 739 SKWM.columRangeBalancer(5); 740 SKWM.columRangeBalancer(6); 741 SKWM.columRangeBalancer(7); 742 SKWM.columRangeBalancer(8); 743 744 $('#datatableoverview thead tr td.sf').each( function () { 745 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 746 }); 747 748 this.datatable = $('#datatableoverview').DataTable({ 749 'paging': false, 750 'info' : true, 751 'searching': true, 752 'autoWidth': false, 753 'fixedHeader': true, 754 'order': [[ 0, "asc" ]], 755 'dom': '<"table-header print"filp<"clear">>' 756 }); 757 758 759 } else if ($('#overviewscall').length > 0) { 760 761 SKWM.columRangeBalancer(2); 762 SKWM.columRangeBalancer(3); 763 SKWM.columRangeBalancer(4); 764 SKWM.columRangeBalancer(5); 765 SKWM.columRangeBalancer(6); 766 SKWM.columRangeBalancer(7); 767 SKWM.columRangeBalancer(8); 768 SKWM.columRangeBalancer(9); 769 770 $('#overviewscall thead tr td.sf').each( function () { 771 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 772 }); 773 774 this.datatable = $('#overviewscall').DataTable({ 775 'paging': false, 776 'info' : true, 777 'searching': true, 778 'autoWidth': false, 779 'fixedHeader': true, 780 'order': [[ 3, "desc" ]], 781 'dom': '<"table-header print"filp<"clear">>' 782 }); 783 784 } else if ($('#overviewanalytics').length > 0) { 785 786 SKWM.columRangeBalancer(2); 787 SKWM.columRangeBalancer(3); 788 SKWM.columRangeBalancer(4); 789 SKWM.columRangeBalancer(5); 790 SKWM.columRangeBalancer(6); 791 SKWM.columRangeBalancer(7); 792 SKWM.columRangeBalancer(8); 793 SKWM.columRangeBalancer(9); 794 SKWM.columRangeBalancer(10); 795 SKWM.columRangeBalancer(11); 796 SKWM.columRangeBalancer(12); 797 798 $('#overviewanalytics thead tr td.sf').each( function () { 799 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 800 }); 801 802 this.datatable = $('#overviewanalytics').DataTable({ 803 'paging': false, 804 'info' : true, 805 'searching': true, 806 'autoWidth': false, 807 'fixedHeader': true, 808 'order': [[ 2, "desc" ]], 809 'dom': '<"table-header print"filp<"clear">>' 810 }); 811 812 } else if ($('#overviewsc').length > 0) { 813 814 SKWM.columRangeBalancer(2); 815 SKWM.columRangeBalancer(3); 816 SKWM.columRangeBalancer(4); 817 SKWM.columRangeBalancer(5); 818 SKWM.columRangeBalancer(6); 819 SKWM.columRangeBalancer(7); 820 SKWM.columRangeBalancer(8); 821 SKWM.columRangeBalancer(9); 822 SKWM.columRangeBalancer(10); 823 SKWM.columRangeBalancer(11); 824 SKWM.columRangeBalancer(12); 825 SKWM.columRangeBalancer(13); 826 SKWM.columRangeBalancer(14); 827 SKWM.columRangeBalancer(15); 828 SKWM.columRangeBalancer(16); 829 830 $('#overviewsc thead tr td.sf').each( function () { 831 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 832 }); 833 834 this.datatable = $('#overviewsc').DataTable({ 835 'paging': false, 836 'info' : true, 837 'searching': true, 838 'autoWidth': false, 839 'fixedHeader': true, 840 'order': [[ 2, "desc" ]], 841 'dom': '<"table-header print"filp<"clear">>' 842 }); 843 844 } else if ($('#datatableoverviewcompetition').length > 0) { 845 846 SKWM.columRangeBalancer(2); 847 SKWM.columRangeBalancer(3); 848 SKWM.columRangeBalancer(4); 849 SKWM.columRangeBalancer(5); 850 SKWM.columRangeBalancer(6); 851 SKWM.columRangeBalancer(7); 852 853 $('#datatableoverviewcompetition thead tr td.sf').each( function () { 854 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 855 }); 856 857 this.datatable = $('#datatableoverviewcompetition').DataTable({ 858 'paging': false, 859 'info' : true, 860 'searching': true, 861 'autoWidth': false, 862 'fixedHeader': true, 863 'order': [[ 2, "desc" ]], 864 'dom': '<"table-header print"filp<"clear">>' 865 }); 866 867 } else if ($('#datatableoverviewblt').length > 0) { 868 869 $('#datatableoverviewblt thead tr td.sf').each( function () { 870 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 871 }); 872 873 this.datatable = $('#datatableoverviewblt').DataTable({ 874 'paging': false, 875 'info' : true, 876 'searching': true, 877 'autoWidth': false, 878 'fixedHeader': true, 879 'order': [[ 7, "desc" ]], 880 'dom': '<"table-header print"filp<"clear">>' 881 }); 882 883 } else if ($('.datatable').length > 0) { 884 885 $('.datatable thead tr td.sf').each( function () { 886 $(this).append( '<br /><input class="columnsearch print" type="text" placeholder="SEARCH" />' ); 887 }); 888 889 this.datatable = $('.datatable').DataTable({ 890 'paging': false, 891 'info' : true, 892 'searching': true, 893 'autoWidth': false, 894 'fixedHeader': true, 895 'dom': '<"table-header print"filp<"clear">>' 896 }); 897 898 } 899 900 if (typeof(this.datatable) != 'undefined') { 901 902 $('#min2, #max2, #min4, #max4, #min6, #max6, #min8, #max8, #min10, #max10, #min12, #max12, #min14, #max14').keyup( function() { 903 table.draw(); 904 }); 905 906 // columnsearch 907 var table = this.datatable; 908 table.columns().every( function () { 909 var that = this; 910 $( '.columnsearch', this.header() ).on( 'keyup change', function () { 911 if ( that.search() !== this.value ) { 912 that.search(this.value).draw(); 913 } 914 }); 915 }); 916 917 $("#selectall").change(function(){ 918 $(".removekeyword").prop('checked', $(this).prop("checked")); 919 }); 920 921 // PHANTOM PRINT FIX FOR DATA TABLES 922 $('#DataTables_Table_0').css("width", "100%"); 923 924 } 925 926 }, 927 928 929 domainSelect: function() { 930 var select = $('#domainselect'); 931 select.on('change', function() { 932 window.location = this.value; 933 }); 934 }, 935 936 937 emailrankchange: function() { 938 939 var checkbox = $('#emailrankchange'); 940 var select = $('select[name="emaildays"]'); 941 var chkval = $('input[name="emailrankchange"]') 942 943 if (select.val() != 7) { 944 checkbox.show(); 945 } 946 947 select.on('change', function() { 948 if (this.value != 7) { 949 checkbox.show(); 950 } else { 951 chkval.prop('checked', false); 952 checkbox.hide(); 953 } 954 }) 955 956 }, 957 958 959 changeCurrency: function() { 960 961 var usdbutton = $('#radio-usd'); 962 var eurbutton = $('#radio-eur'); 963 var usd = $('#usd'); 964 var eur = $('#eur'); 965 966 $('input:radio').click(function(){ 967 968 if(usdbutton.attr('checked') === 'checked') { 969 usd.show(); 970 eur.hide(); 971 } else { 972 usd.hide(); 973 eur.show(); 974 } 975 976 }); 977 978 }, 979 980 changeLocation: function() { 981 982 var loc = $('#changecustomloc'); 983 984 if (loc.length) { 985 986 987 $('#changecustomloc').keyup(function(e) { 988 989 if (e.keyCode !== 40 && e.keyCode !== 38) { 990 991 var string = $(this).val(); 992 var result = $('#changecustomlocresult'); 993 994 result.show(); 995 996 $('.locationsubmit').hide(); 997 $('#loc_select').show(); 998 999 if (string.length > 3) { 1000 1001 $.ajax({ 1002 type: "GET", 1003 url: "../local/local.php?", 1004 data: {q: string}, 1005 error:function (xhr, ajaxOptions, thrownError){ 1006 result.html(data); 1007 }, 1008 success: function(data){ 1009 result.html(data); 1010 $('.locationsubmit').prop("disabled",true); 1011 SKWM.selectLocation(); 1012 } 1013 1014 }); 1015 } 1016 1017 } 1018 }); 1019 1020 } 1021 1022 }, 1023 1024 selectLocation: function() { 1025 1026 $('.selectlocation').click(function() {
1027 $('.locationsubmit').prop("disabled",false); 1028 var loc = $(this).text(); 1029 var uule = $(this).attr('data-uule'); 1030 $('#changecustomloc').val(loc); 1031 $('#uule').val(uule); 1032 $('#changecustomlocresult').hide(); 1033 $('.locationsubmit').show(); 1034 $('#loc_select').hide(); 1035 }); 1036 1037 }, 1038 1039 setFocus: function() { 1040 1041 $('#setcompetition-close').click(function(){ 1042 setTimeout(function() { 1043 $('#competition').focus(); 1044 }, 1000); 1045 }); 1046 1047 }, 1048 1049 toggleComparisson: function() { 1050 1051 $('.togglecomparisson.hide').click(function(){ 1052 $(".comparisson tr:not(:first-child)").hide(); 1053 $('.togglecomparisson.hide').hide(); 1054 $('.togglecomparisson.show').show(); 1055 }); 1056 1057 $('.togglecomparisson.show').click(function(){ 1058 $(".comparisson tr:not(:first-child)").show(); 1059 $('.togglecomparisson.show').hide(); 1060 $('.togglecomparisson.hide').show(); 1061 }); 1062 1063 }, 1064 1065 deleteDomain: function() { 1066 1067 var deletedomain = $('#deletedomain'); 1068 1069 if (deletedomain.length > 0) { 1070 1071 deletedomain.click(function(){ 1072 var answer = window.confirm('Sicher?'); 1073 if (answer) { 1074 return true; 1075 } else { 1076 return false; 1077 } 1078 }); 1079 1080 } 1081 1082 }, 1083 1084 liveranking: function() { 1085 1086 var liverankingform = $('#liveranking'), 1087 liverankingsubmit = $('#liverankingsubmit'), 1088 inputarea = $('#liverankinginput'), 1089 outputarea = $('#liverankingoutput'); 1090 1091 if (liverankingform.length > 0) { 1092 1093 liverankingform.submit(function() { 1094 1095 var formdata = liverankingform.serialize(); 1096 1097 inputarea.html(SKWM.ajaxloader); 1098 1099 $.ajax({ 1100 type: "POST", 1101 url: SKWM.domain + "liverankingfetch", 1102 data: { data:formdata }, 1103 error:function (xhr, ajaxOptions, thrownError){}, 1104 success: function(data){ 1105 inputarea.hide(); 1106 outputarea.show(); 1107 outputarea.html(data); 1108 SKWM.exportSpreadSheetDetail(); 1109 } 1110 }); 1111 1112 return false; 1113 1114 }); 1115 1116 } 1117 1118 } 1119 1120}; 1121 1122 1123$(document).ready(function() { 1124 1125 var host = $(location).attr('hostname'); 1126 var first = $(location).attr('pathname'); 1127 first.indexOf(1); 1128 first = first.split("/")[1]; 1129 SKWM.domain = 'https://'+host+'/'+first+'/'; 1130 1131 SKWM.init(); 1132 SKWM.deleteDomain(); 1133 SKWM.changeCurrency(); 1134 SKWM.dataTableInit(); 1135 SKWM.toggleComparisson(); 1136 SKWM.domainSelect(); 1137 SKWM.comments(); 1138 SKWM.emailrankchange(); 1139 SKWM.urlmonitor(); 1140 SKWM.niceForms(); 1141 SKWM.targetBlank(); 1142 SKWM.exportSpreadSheet(); 1143 SKWM.exportSpreadSheetDetail(); 1144 SKWM.savePDF(); 1145 SKWM.lineChart(); 1146 SKWM.lineChartAll(); 1147 SKWM.lineChartVisibility(); 1148 SKWM.datepick('#date_compare', '.datepicker'); 1149 SKWM.datepick('#date_compare_week', '.datepickerweek'); 1150 SKWM.changeLocation(); 1151 SKWM.setFocus(); 1152 1153 if ($('#piechart1').length) { 1154 SKWM.pieChart('piechart1', pieSeries1, pieDesc1); 1155 SKWM.pieChart('piechart2', pieSeries2, pieDesc2); 1156 } 1157 1158 SKWM.pieChartTable(); 1159});
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.