// ==UserScript==
// @name         ProgrammersForumPostLink
// @namespace    http://programmersforum.ru/
// @version      0.22
// @description  adds button to copy post url
// @author       Alex P
// @include      *programmersforum.ru/*
// @grant        GM_setClipboard
// @grant        GM_addStyle
// @downloadURL  https://github.com/AlexP11223/ProgForumRuUserscripts/raw/master/pf_post_link.user.js
// ==/UserScript==

(function() {
    'use strict';

    if (window.postLinkInitialized)
        return;
    window.postLinkInitialized = true;

    GM_addStyle('.link-popup { font-weight: bold; margin-right: 8px; }');

    $.each($('[id^="postcount"]'), function(i, oldPostLink) {
        var id = $(oldPostLink).attr('id').replace('postcount', '');
        var href = '#post' + id;
        var container = $(oldPostLink).parent();

        var postLink = $('<a href="' + href + '">ссылка</a>').prependTo(container);
        postLink.click(function() {
            var url = window.location.href.split("#")[0];

            GM_setClipboard(url + href);

            var popup = $('<span class="link-popup" style="display: none;">ссылка скопирована в буфер обмена</span>').prependTo(container);
            popup.fadeIn();
            popup.delay(2500).fadeOut();
        });
    });
})();

@@ -119,12 +119,11 @@
     
-0.22
+1.0
 %0A// 
@@ -609,24 +609,78 @@
  8px; %7D');%0A%0A
+    const BASE_URL = 'https://programmersforum.ru/';%0A%0A
     $.each($
@@ -681,16 +681,17 @@
 each($('
+a
 %5Bid%5E=%22po
@@ -703,24 +703,16 @@
 nt%22%5D'), 
-function
 (i, oldP
@@ -719,16 +719,19 @@
 ostLink)
+ =%3E
  %7B%0A     
@@ -737,14 +737,18 @@
     
-var id
+const href
  = $
@@ -771,47 +771,25 @@
 tr('
-id').replace('postcount', '
+href
 ');%0A
+%0A
         
 var 
@@ -788,44 +788,13 @@
     
-var href = '#post' + id;%0A        var
+const
  con
@@ -836,19 +836,21 @@
         
-var
+const
  postLin
@@ -937,26 +937,20 @@
 k.click(
-function()
+e =%3E
  %7B%0A     
@@ -960,52 +960,26 @@
     
-var url = window.location.href.split(%22#%22)%5B0%5D
+e.preventDefault()
 ;%0A%0A 
@@ -1005,19 +1005,24 @@
 ipboard(
-url
+BASE_URL
  + href)
@@ -1040,11 +1040,13 @@
     
-var
+const
  pop

copy normal links instead of #post