Guest User

Untitled

a guest
Mar 22nd, 2022
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name         comdirect.wknFilter
  3. // @namespace    http://tampermonkey.net/
  4. // @version      1.2
  5. // @description  Erstellt einen Link auf der Seite zu der WKN
  6. // @author       Hokkaydo
  7. // @match        https://community.comdirect.de/t5/*
  8. // @icon        
  9. // @grant        none
  10. // ==/UserScript==
  11.  
  12. (function() {
  13.     'use strict';
  14.  
  15.     // WKN Filter
  16.     var all_words;
  17.     // alle Posts einlesen
  18.     let all_msgs = document.getElementsByClassName("lia-message-body-content");
  19.  
  20.     for (var j = 0; all_msgs.length - 1; j++) {
  21.         if (all_msgs.item(j) == undefined) { break; }
  22.         // Text der Meldung
  23.         let single_msg = all_msgs.item(j).innerHTML;
  24.         // Tags entfernen
  25.         let single_msg_no_tags = single_msg.replace(/nbsp/gm,' ');
  26.         single_msg_no_tags = single_msg_no_tags.replace(/<[^>]*>?/gm, ' ');
  27.         single_msg_no_tags = single_msg_no_tags.replace(/[+\-/\\(\){}\[\]<>!§$%&=?*#€¿&_\".,:;]/gm, ' ');
  28.        single_msg_no_tags = single_msg_no_tags.replace("nbsp",' ');
  29.        // auf Wörter aufteilen
  30.        let single_msg_words = single_msg_no_tags.split(' ');
  31.        for (var k = 0; single_msg_words.length - 1; k++) {
  32.            if (single_msg_words[k] == undefined) {
  33.                break;
  34.            }
  35.            // wenn Länge des Wortes 6 Zeichen
  36.            if (single_msg_words[k].length == 6) {
  37.                // prüfen, ob bereits verarbeitet
  38.                if (all_words != undefined) {
  39.                    if (all_words.indexOf(single_msg_words[k]) != -1) {
  40.                        continue;
  41.                    }
  42.                }
  43.                // prüfen, ob nur Zahlen+Buchstaben, oder nur Zahlen
  44.                var RegEx = /[A-Z]/i;
  45.                var valid_chars = RegEx.test(single_msg_words[k]);
  46.                RegEx = /[0-9]/i;
  47.                var valid_num = RegEx.test(single_msg_words[k]);
  48.                RegEx = /[A-Z0-9]/i;
  49.                var valid_both = RegEx.test(single_msg_words[k]);
  50.  
  51.                if ( ( valid_chars == true && valid_num == true ) || valid_num == true )
  52.                {
  53.                    // Link aufbauen
  54.                    var href = "<a target=\"_blank\" href=\"https://www.comdirect.de/inf/search/general.html?SEARCH_VALUE=" +
  55.                         single_msg_words[k]
  56.                     +"&SEARCH_REDIRECT=true&REDIRECT_TYPE=WKN\">" + single_msg_words[k] + "</a>";
  57.                     // Text ersetzen
  58.                     single_msg = single_msg.replaceAll(single_msg_words[k], href);
  59.                     valid_num = false;
  60.                     valid_both = false;
  61.                 }
  62.             }
  63.             // Liste der verwendeten Wörter
  64.             all_words = all_words + single_msg_words[k];
  65.         }
  66.         all_words = '';
  67.         // Text im Seitenquelltext ersetzen
  68.         all_msgs.item(j).innerHTML = single_msg;
  69.     }
  70.  
  71. })();
Advertisement
Add Comment
Please, Sign In to add comment