rotrevrep

hfr

Dec 2nd, 2020
1,404
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @author        BZHDeveloper, roger21
  3. // @name          [HFR] Trouduc
  4. // @version       1.0.8
  5. // @namespace     forum.hardware.fr
  6. // @description   Colle les données du presse-papiers et les traite si elles sont reconnues.
  7. // @icon          https://gitlab.com/BZHDeveloper/HFR/raw/master/hfr-logo.png
  8. // @downloadURL   https://gitlab.com/BZHDeveloper/hfr/-/raw/master/hfr_cc.user.js
  9. // @updateURL     https://gitlab.com/BZHDeveloper/hfr/-/raw/master/hfr_cc.user.js
  10. // @include       https://forum.hardware.fr/*
  11. // @noframes
  12. // @grant         GM_info
  13. // @grant         GM.info
  14. // @grant         GM.xmlHttpRequest
  15. // @grant         GM_getValue
  16. // @grant         GM_setValue
  17. // @grant         GM_registerMenuCommand
  18. // @grant         GM_xmlhttpRequest
  19. // ==/UserScript==
  20.  
  21. let HFR = {
  22.     Info : function() {
  23.         var info = {};
  24.         if (typeof (GM) !== "object")
  25.             info = GM.info;
  26.         else
  27.             info = GM_info;
  28.         this.extension = info.scriptHandler;
  29.         var parts = info.version.split (".");
  30.         this.version = {};
  31.         if (parts.length > 0)
  32.             this.version.major = parseInt (parts[0]);
  33.         if (parts.length > 1)
  34.             this.version.minor = parseInt (parts[1]);
  35.         if (parts.length > 2)
  36.             this.version.micro = parseInt (parts[2]);
  37.     },
  38.     IsGM4 : function(){
  39.         var info = new this.Info();
  40.         return info.extension == "GreaseMonkey" && info.version.major >= 4;
  41.     },
  42.     Regex : {
  43.         Twitter : /^(https:\/\/(mobile\.)?twitter\.com\/\w+\/status\/\d+(\?s=\d+)?)$/g,
  44.         Instagram : /^(https:\/\/(www\.)?instagram\.com\/p\/\w+\/)$/g,
  45.         Telegram : /^(https:\/\/t\.me\/[a-z]+\/\d+)$/g,
  46.         Minds : /^(https:\/\/www\.minds\.com\/newsfeed\/\d+)$/g,
  47.         Sndup : /^(https:\/\/sndup\.net\/[a-z0-9]+\/d)$/g
  48.     },
  49.     Request : function (object) {
  50.         if (this.IsGM4())
  51.             return GM.xmlHttpRequest (object);
  52.         else
  53.             return GM_xmlhttpRequest (object);
  54.     },
  55.     SetValue : function (key, data) {
  56.         if (!this.IsGM4()) {
  57.             GM_setValue (key, data);
  58.             return;
  59.         }
  60.         if (typeof (data) === "object")
  61.             localStorage.setItem (GM.info.script.name + " :: " + key, JSON.stringify (data));
  62.         else
  63.             localStorage.setItem (GM.info.script.name + " :: " + key, data);
  64.     }
  65. };
  66.  
RAW Paste Data