'$geotag' => $geotag,
'$nickname' => $x['nickname'],
'$ispublic' => L10n::t('Visible to <strong>everybody</strong>'),
- '$linkurl' => L10n::t('Please enter a link URL:'),
- '$vidurl' => L10n::t("Please enter a video link/URL:"),
- '$audurl' => L10n::t("Please enter an audio link/URL:"),
+ '$linkurl' => L10n::t('Please enter a image/video/audio/webpage URL:'),
'$term' => L10n::t('Tag term:'),
'$fileas' => L10n::t('Save to Folder:'),
'$whereareu' => L10n::t('Where are you right now?'),
'$shortupload' => L10n::t('upload photo'),
'$attach' => L10n::t('Attach file'),
'$shortattach' => L10n::t('attach file'),
- '$weblink' => L10n::t('Insert web link'),
- '$shortweblink' => L10n::t('web link'),
- '$video' => L10n::t('Insert video link'),
- '$shortvideo' => L10n::t('video link'),
- '$audio' => L10n::t('Insert audio link'),
- '$shortaudio' => L10n::t('audio link'),
+ '$edbold' => L10n::t('Bold'),
+ '$editalic' => L10n::t('Italic'),
+ '$eduline' => L10n::t('Underline'),
+ '$edquote' => L10n::t('Quote'),
+ '$edcode' => L10n::t('Code'),
+ '$edimg' => L10n::t('Image'),
+ '$edurl' => L10n::t('Link'),
+ '$edattach' => L10n::t('Link or Media'),
'$setloc' => L10n::t('Set your location'),
'$shortsetloc' => L10n::t('set location'),
'$noloc' => L10n::t('Clear browser location'),
}
}
- if (!empty($_GET['isComment'])) {
- echo $br . '[url]' . $url . '[/url]';
- exit();
- }
$template = '[bookmark=%s]%s[/bookmark]%s';
unset($siteinfo['keywords']);
+ // Bypass attachment if parse url for a comment
+ if (!empty($_GET['noAttachment'])) {
+ echo $br . '[url=' . $url . ']' . $siteinfo['title'] . '[/url]';
+ exit();
+ }
+
// Format it as BBCode attachment
$info = add_page_info_data($siteinfo);
if ($item["event-id"] != 0) {
$edpost = ["events/event/" . $item['event-id'], L10n::t("Edit")];
} else {
- $edpost = ["editpost/" . $item['id'] . "/" . base64_encode($a->cmd), L10n::t("Edit")];
+ $edpost = ["editpost/" . $item['id'], L10n::t("Edit")];
}
$dropping = in_array($item['uid'], [0, local_user()]);
} else {
$author = ['uid' => 0, 'id' => $item['author-id'],
'network' => $item['author-network'], 'url' => $item['author-link']];
- $profile_link = Contact::magicLinkbyContact($author);
+
+ if (local_user() || remote_user()) {
+ $profile_link = Contact::magicLinkbyContact($author);
+ } else {
+ $profile_link = $item['author-link'];
+ }
+
if (strpos($profile_link, 'redir/') === 0) {
$sparkle = ' sparkle';
}
* Hmmm, code depending on the presence of a particular addon?
* This should be better if done by a hook
*/
- if (in_array('qcomment', $a->addons)) {
+ if (Addon::isEnabled('qcomment')) {
$qc = ((local_user()) ? PConfig::get(local_user(), 'qcomment', 'words') : null);
$qcomment = (($qc) ? explode("\n", $qc) : null);
}
'$edquote' => L10n::t('Quote'),
'$edcode' => L10n::t('Code'),
'$edimg' => L10n::t('Image'),
- '$edurl' => L10n::t('Link or Media'),
+ '$edurl' => L10n::t('Link'),
+ '$edattach' => L10n::t('Link or Media'),
+ '$prompttext' => L10n::t('Please enter a image/video/audio/webpage URL:'),
'$preview' => ((Feature::isEnabled($conv->getProfileOwner(), 'preview')) ? L10n::t('Preview') : ''),
'$indent' => $indent,
'$sourceapp' => L10n::t($a->sourcename),
}
function openMenu(theID) {
- var el = document.getElementById(theID)
+ var el = document.getElementById(theID);
if (el) {
el.style.display = "block";
* @brief The file contains functions for text editing and commenting
*/
-function commentGetLink(id) {
- reply = prompt("Please enter a link URL:");
+function commentGetLink(id,prompttext) {
+ reply = prompt(prompttext);
if(reply && reply.length) {
- reply = bin2hex(reply);
- $.get('parse_url?isComment=1&binurl=' + reply, function(data) {
- addcommenttext(data, id);
- });
- }
+ reply = bin2hex(reply);
+ $.get('parse_url?noAttachment=1&binurl=' + reply, function(data) {
+ addCommentText(data, id);
+ });
+ }
}
-function 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
autosize.update($("#comment-edit-text-" + id));
}
-function commentlinkdrop(event, 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) {
- addcommenttext(data, id);
+ $.get('parse_url?noAttachment=1&binurl=' + reply, function(data) {
+ addCommentText(data, id);
});
}
}
-function commentlinkdropper(event) {
+function commentLinkDropper(event) {
var linkFound = event.dataTransfer.types.contains("text/uri-list");
if (linkFound) {
event.preventDefault();
</button>
</li>
<li>
- <button type="button" class="btn-link icon bb-url" style="cursor: pointer;" aria-label="{{$edurl}}" title="{{$edurl}}" ondragenter="return commentlinkdrop(event, {{$id}});" ondragover="return commentlinkdrop(event, {{$id}});" ondrop="commentlinkdropper(event);" onclick="commentGetLink({{$id}});">
+ <button type="button" class="btn-link icon bb-url" style="cursor: pointer;" aria-label="{{$edurl}}" title="{{$edurl}}" onclick="insertFormatting('url',{{$id}});">
<i class="fa fa-link"></i>
</button>
</li>
+ <li>
+ <button type="button" class="btn-link icon" style="cursor: pointer;" aria-label="{{$edattach}}" title="{{$edattach}}" ondragenter="return commentLinkDrop(event, {{$id}});" ondragover="return commentLinkDrop(event, {{$id}});" ondrop="commentLinkDropper(event);" onclick="commentGetLink({{$id}}, '{{$prompttext}}');">
+ <i class="fa fa-paperclip"></i>
+ </button>
+ </li>
<li>
<button type="button" class="btn-link icon underline" style="cursor: pointer;" aria-label="{{$eduline}}" title="{{$eduline}}" onclick="insertFormatting('u',{{$id}});">
<i class="fa fa-underline"></i>
}
function jotGetLink() {
+ var currentText = $("#profile-jot-text").val();
+ var noAttachment = '';
reply = prompt("{{$linkurl}}");
if(reply && reply.length) {
reply = bin2hex(reply);
$('#profile-rotator').show();
- $.get('parse_url?binurl=' + reply, function(data) {
+ if (currentText.includes("[attachment") && currentText.includes("[/attachment]")) {
+ noAttachment = '&noAttachment=1';
+ }
+ $.get('parse_url?binurl=' + reply + noAttachment, function(data) {
addeditortext(data);
$('#profile-rotator').hide();
});
+ autosize.update($("#profile-jot-text"));
}
}
function linkdrop(event) {
var reply = event.dataTransfer.getData("text/uri-list");
+ var noAttachment = '';
event.target.textContent = reply;
event.preventDefault();
if(reply && reply.length) {
reply = bin2hex(reply);
$('#profile-rotator').show();
- $.get('parse_url?binurl=' + reply, function(data) {
+ if (currentText.includes("[attachment") && currentText.includes("[/attachment]")) {
+ noAttachment = '&noAttachment=1';
+ }
+ $.get('parse_url?binurl=' + reply + noAttachment, function(data) {
if (!editor) $("#profile-jot-text").val("");
initEditor(function(){
addeditortext(data);
$('#profile-rotator').hide();
});
});
+ autosize.update($("#profile-jot-text"));
}
}
var currentText = $("#profile-jot-text").val();
//insert the data as new value
textfield.value = currentText + data;
+ autosize.update($("#profile-jot-text"));
}
{{$geotag}}
<li role="presentation"><button type="button" class="hidden-xs btn-link icon italic" style="cursor: pointer;" aria-label="{{$editalic}}" title="{{$editalic}}" onclick="insertFormattingToPost('i');"><i class="fa fa-italic"></i></button></li>
<li role="presentation"><button type="button" class="hidden-xs btn-link icon bold" style="cursor: pointer;" aria-label="{{$edbold}}" title="{{$edbold}}" onclick="insertFormattingToPost('b');"><i class="fa fa-bold"></i></button></li>
<li role="presentation"><button type="button" class="hidden-xs btn-link icon quote" style="cursor: pointer;" aria-label="{{$edquote}}" title="{{$edquote}}" onclick="insertFormattingToPost('quote');"><i class="fa fa-quote-left"></i></button></li>
- <li role="presentation"><button type="button" class="btn-link" id="profile-link" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" title="{{$weblink}}"><i class="fa fa-link"></i></button></li>
- <li role="presentation"><button type="button" class="btn-link" id="profile-video" onclick="jotVideoURL();" title="{{$video}}"><i class="fa fa-film" aria-hidden="true"></i></button></li>
- <li role="presentation"><button type="button" class="btn-link" id="profile-audio" onclick="jotAudioURL();" title="{{$audio}}"><i class="fa fa-music" aria-hidden="true"></i></button></li>
+ <li role="presentation"><button type="button" class="btn-link icon" style="cursor: pointer;" aria-label="{{$edurl}}" title="{{$edurl}}" onclick="insertFormattingToPost('url');"><i class="fa fa-link"></i></button></li>
+ <li role="presentation"><button type="button" class="btn-link" id="profile-attach" ondragenter="return linkdropper(event);" ondragover="return linkdropper(event);" ondrop="linkdrop(event);" onclick="jotGetLink();" title="{{$edattach}}"><i class="fa fa-paperclip"></i></button></li>
<li role="presentation"><button type="button" class="btn-link" id="profile-location" onclick="jotGetLocation();" title="{{$setloc}}"><i class="fa fa-map-marker" aria-hidden="true"></i></button></li>
<!-- TODO: waiting for a better placement
<li><button type="button" class="btn-link" id="profile-nolocation" onclick="jotClearLocation();" title="{{$noloc}}">{{$shortnoloc}}</button></li>