From 3065d1c40afec3bef9c5b82a10672a5746fc2915 Mon Sep 17 00:00:00 2001 From: Jonny Tischbein Date: Wed, 17 Oct 2018 21:05:45 +0200 Subject: [PATCH] Add Link promt in comment + only add URL instead of attachement via parse_url --- mod/parse_url.php | 5 +++ view/theme/frio/js/textedit.js | 49 ++++++++++++++++++++++ view/theme/frio/templates/comment_item.tpl | 2 +- 3 files changed, 55 insertions(+), 1 deletion(-) diff --git a/mod/parse_url.php b/mod/parse_url.php index 40eddc3bdd..a68f405de8 100644 --- a/mod/parse_url.php +++ b/mod/parse_url.php @@ -92,6 +92,11 @@ function parse_url_content(App $a) } } + if(!empty($_GET['isComment'])) { + echo $br . '[url]' . $url . '[/url]'; + exit(); + } + $template = '[bookmark=%s]%s[/bookmark]%s'; $arr = ['url' => $url, 'text' => '']; diff --git a/view/theme/frio/js/textedit.js b/view/theme/frio/js/textedit.js index ad5f950234..551298b726 100644 --- a/view/theme/frio/js/textedit.js +++ b/view/theme/frio/js/textedit.js @@ -2,6 +2,55 @@ * @brief The file contains functions for text editing and commenting */ +function initComment(callback) { + if (typeof callback != "undefined") { + callback(); + } +} + +function commentGetLink(id) { + reply = prompt("Please enter a link URL:"); + if(reply && reply.length) { + reply = bin2hex(reply); + $.get('parse_url?isComment=1&binurl=' + reply, function(data) { + addcommenttext(data, id); + }); + } +} + +function addcommenttext(data, id) { + // get the textfield + var textfield = document.getElementById("comment-edit-text-" + id); + // check if the textfield does have the default-value + commentOpenUI(textfield, id); + // save already existent content + var currentText = $("#comment-edit-text-" + id).val(); + //insert the data as new value + textfield.value = currentText + data; + autosize.update($("#comment-edit-text-" + id)); +} + +function commentlinkdrop(event, id) { + var reply = event.dataTransfer.getData("text/uri-list"); + event.target.textContent = reply; + event.preventDefault(); + if(reply && reply.length) { + reply = bin2hex(reply); + $.get('parse_url?isComment=1&binurl=' + reply, function(data) { + if (!editor) $("comment-edit-text-" + id).val(""); + initComment(function(){ + addcommenttext(data, id); + }); + }); + } +} + +function commentlinkdropper(event) { + var linkFound = event.dataTransfer.types.contains("text/uri-list"); + if(linkFound) + event.preventDefault(); +} + function insertFormatting(BBcode, id) { var tmpStr = $("#comment-edit-text-" + id).val(); diff --git a/view/theme/frio/templates/comment_item.tpl b/view/theme/frio/templates/comment_item.tpl index 8d90394d58..a9b85d3e79 100644 --- a/view/theme/frio/templates/comment_item.tpl +++ b/view/theme/frio/templates/comment_item.tpl @@ -38,7 +38,7 @@
  • -
  • -- 2.39.5