Add Firefox Social API to the tools. Fixes #101.
This commit is contained in:
parent
569ffb59d4
commit
d33c5d4c3b
3 changed files with 39 additions and 7 deletions
|
@ -1555,7 +1555,7 @@ function renderPage()
|
||||||
pubsubhub();
|
pubsubhub();
|
||||||
|
|
||||||
// If we are called from the bookmarklet, we must close the popup:
|
// If we are called from the bookmarklet, we must close the popup:
|
||||||
if (isset($_GET['source']) && $_GET['source']=='bookmarklet') { echo '<script>self.close();</script>'; exit; }
|
if (isset($_GET['source']) && ($_GET['source']=='bookmarklet' || $_GET['source']=='firefoxsocialapi')) { echo '<script>self.close();</script>'; exit; }
|
||||||
$returnurl = ( isset($_POST['returnurl']) ? $_POST['returnurl'] : '?' );
|
$returnurl = ( isset($_POST['returnurl']) ? $_POST['returnurl'] : '?' );
|
||||||
$returnurl .= '#'.smallHash($linkdate); // Scroll to the link which has been edited.
|
$returnurl .= '#'.smallHash($linkdate); // Scroll to the link which has been edited.
|
||||||
if (strstr($returnurl, "do=addlink")) { $returnurl = '?'; } //if we come from ?do=addlink, set returnurl to homepage instead
|
if (strstr($returnurl, "do=addlink")) { $returnurl = '?'; } //if we come from ?do=addlink, set returnurl to homepage instead
|
||||||
|
@ -1567,7 +1567,7 @@ function renderPage()
|
||||||
if (isset($_POST['cancel_edit']))
|
if (isset($_POST['cancel_edit']))
|
||||||
{
|
{
|
||||||
// If we are called from the bookmarklet, we must close the popup:
|
// If we are called from the bookmarklet, we must close the popup:
|
||||||
if (isset($_GET['source']) && $_GET['source']=='bookmarklet') { echo '<script>self.close();</script>'; exit; }
|
if (isset($_GET['source']) && ($_GET['source']=='bookmarklet' || $_GET['source']=='firefoxsocialapi')) { echo '<script>self.close();</script>'; exit; }
|
||||||
$returnurl = ( isset($_POST['returnurl']) ? $_POST['returnurl'] : '?' );
|
$returnurl = ( isset($_POST['returnurl']) ? $_POST['returnurl'] : '?' );
|
||||||
$returnurl .= '#'.smallHash($_POST['lf_linkdate']); // Scroll to the link which has been edited.
|
$returnurl .= '#'.smallHash($_POST['lf_linkdate']); // Scroll to the link which has been edited.
|
||||||
header('Location: '.$returnurl); // After canceling, redirect to the page the user was on.
|
header('Location: '.$returnurl); // After canceling, redirect to the page the user was on.
|
||||||
|
@ -1586,7 +1586,7 @@ function renderPage()
|
||||||
$LINKSDB->savedb(); // save to disk
|
$LINKSDB->savedb(); // save to disk
|
||||||
|
|
||||||
// If we are called from the bookmarklet, we must close the popup:
|
// If we are called from the bookmarklet, we must close the popup:
|
||||||
if (isset($_GET['source']) && $_GET['source']=='bookmarklet') { echo '<script>self.close();</script>'; exit; }
|
if (isset($_GET['source']) && ($_GET['source']=='bookmarklet' || $_GET['source']=='firefoxsocialapi')) { echo '<script>self.close();</script>'; exit; }
|
||||||
// Pick where we're going to redirect
|
// Pick where we're going to redirect
|
||||||
// =============================================================
|
// =============================================================
|
||||||
// Basically, we can't redirect to where we were previously if it was a permalink
|
// Basically, we can't redirect to where we were previously if it was a permalink
|
||||||
|
@ -1704,6 +1704,7 @@ function renderPage()
|
||||||
$PAGE->assign('link_is_new',$link_is_new);
|
$PAGE->assign('link_is_new',$link_is_new);
|
||||||
$PAGE->assign('token',getToken()); // XSRF protection.
|
$PAGE->assign('token',getToken()); // XSRF protection.
|
||||||
$PAGE->assign('http_referer',(isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''));
|
$PAGE->assign('http_referer',(isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : ''));
|
||||||
|
$PAGE->assign('source',(isset($_GET['source']) ? $_GET['source'] : ''));
|
||||||
$PAGE->assign('tags', $LINKSDB->allTags());
|
$PAGE->assign('tags', $LINKSDB->allTags());
|
||||||
$PAGE->renderPage('editlink');
|
$PAGE->renderPage('editlink');
|
||||||
exit;
|
exit;
|
||||||
|
|
|
@ -9,7 +9,9 @@
|
||||||
{elseif="$link.description==''"}onload="document.linkform.lf_description.focus();"
|
{elseif="$link.description==''"}onload="document.linkform.lf_description.focus();"
|
||||||
{else}onload="document.linkform.lf_tags.focus();"{/if} >
|
{else}onload="document.linkform.lf_tags.focus();"{/if} >
|
||||||
<div id="pageheader">
|
<div id="pageheader">
|
||||||
|
{if="$source !== 'firefoxsocialapi'"}
|
||||||
{include="page.header"}
|
{include="page.header"}
|
||||||
|
{/if}
|
||||||
<div id="editlinkform">
|
<div id="editlinkform">
|
||||||
<form method="post" name="linkform">
|
<form method="post" name="linkform">
|
||||||
<input type="hidden" name="lf_linkdate" value="{$link.linkdate}">
|
<input type="hidden" name="lf_linkdate" value="{$link.linkdate}">
|
||||||
|
@ -34,7 +36,9 @@
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
{if="$source !== 'firefoxsocialapi'"}
|
||||||
{include="page.footer"}
|
{include="page.footer"}
|
||||||
|
{/if}
|
||||||
{if="($GLOBALS['config']['OPEN_SHAARLI'] || isLoggedIn())"}
|
{if="($GLOBALS['config']['OPEN_SHAARLI'] || isLoggedIn())"}
|
||||||
<script>
|
<script>
|
||||||
$ = Awesomplete.$;
|
$ = Awesomplete.$;
|
||||||
|
|
|
@ -12,7 +12,34 @@
|
||||||
<a href="?do=export"><b>Export</b> <span>: Export Netscape html bookmarks (which can be imported in Firefox, Chrome, Opera, delicious...)</span></a><br><br>
|
<a href="?do=export"><b>Export</b> <span>: Export Netscape html bookmarks (which can be imported in Firefox, Chrome, Opera, delicious...)</span></a><br><br>
|
||||||
<a class="smallbutton" onclick="alert('Drag this link to your bookmarks toolbar, or right-click it and choose Bookmark This Link...');return false;" href="javascript:javascript:(function(){var%20url%20=%20location.href;var%20title%20=%20document.title%20||%20url;window.open('{$pageabsaddr}?post='%20+%20encodeURIComponent(url)+'&title='%20+%20encodeURIComponent(title)+'&description='%20+%20encodeURIComponent(document.getSelection())+'&source=bookmarklet','_blank','menubar=no,height=390,width=600,toolbar=no,scrollbars=no,status=no,dialog=1');})();"><b>✚Shaare link</b></a> <a href="#" style="clear:none;"><span>⇐ Drag this link to your bookmarks toolbar (or right-click it and choose Bookmark This Link....).<br> Then click "✚Shaare link" button in any page you want to share.</span></a><br><br>
|
<a class="smallbutton" onclick="alert('Drag this link to your bookmarks toolbar, or right-click it and choose Bookmark This Link...');return false;" href="javascript:javascript:(function(){var%20url%20=%20location.href;var%20title%20=%20document.title%20||%20url;window.open('{$pageabsaddr}?post='%20+%20encodeURIComponent(url)+'&title='%20+%20encodeURIComponent(title)+'&description='%20+%20encodeURIComponent(document.getSelection())+'&source=bookmarklet','_blank','menubar=no,height=390,width=600,toolbar=no,scrollbars=no,status=no,dialog=1');})();"><b>✚Shaare link</b></a> <a href="#" style="clear:none;"><span>⇐ Drag this link to your bookmarks toolbar (or right-click it and choose Bookmark This Link....).<br> Then click "✚Shaare link" button in any page you want to share.</span></a><br><br>
|
||||||
<a class="smallbutton" onclick="alert('Drag this link to your bookmarks toolbar, or right-click it and choose Bookmark This Link...');return false;" href="?private=1&post="><b>✚Add Note</b></a> <a href="#" style="clear:none;"><span>⇐ Drag this link to your bookmarks toolbar (or right-click it and choose Bookmark This Link....).<br> Then click "✚Add Note" button anytime to start composing a (default private) Note (text post) to your Shaarli.</span></a><br><br>
|
<a class="smallbutton" onclick="alert('Drag this link to your bookmarks toolbar, or right-click it and choose Bookmark This Link...');return false;" href="?private=1&post="><b>✚Add Note</b></a> <a href="#" style="clear:none;"><span>⇐ Drag this link to your bookmarks toolbar (or right-click it and choose Bookmark This Link....).<br> Then click "✚Add Note" button anytime to start composing a (default private) Note (text post) to your Shaarli.</span></a><br><br>
|
||||||
|
<a class="smallbutton" onclick="activateFirefoxSocial(this)"><b>✚Add to Firefox social</b></a> <a href="#" style="clear:none;"><span>⇐ Click on this button to add Shaarli to the "Share this page" button in Firefox.</span></a><br><br>
|
||||||
<div class="clear"></div>
|
<div class="clear"></div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
function activateFirefoxSocial(node) {
|
||||||
|
var loc = location.href;
|
||||||
|
var baseURL = loc.substring(0, loc.lastIndexOf("/"));
|
||||||
|
|
||||||
|
// Keeping the data separated (ie. not in the DOM) so that it's maintainable and diffable.
|
||||||
|
var data = {
|
||||||
|
name: "{$shaarlititle}",
|
||||||
|
description: "The personal, minimalist, super-fast, no-database delicious clone.",
|
||||||
|
author: "Shaarli",
|
||||||
|
version: "1.0.0",
|
||||||
|
|
||||||
|
iconURL: baseURL + "/images/favicon.ico",
|
||||||
|
icon32URL: baseURL + "/images/favicon.ico",
|
||||||
|
icon64URL: baseURL + "/images/favicon.ico",
|
||||||
|
|
||||||
|
shareURL: baseURL + "{noparse}?post=%{url}&title=%{title}&description=%{description}&source=firefoxsocialapi{/noparse}",
|
||||||
|
homepageURL: baseURL
|
||||||
|
};
|
||||||
|
node.setAttribute("data-service", JSON.stringify(data));
|
||||||
|
|
||||||
|
var activate = new CustomEvent("ActivateSocialFeature");
|
||||||
|
node.dispatchEvent(activate);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{include="page.footer"}
|
{include="page.footer"}
|
||||||
|
|
Loading…
Reference in a new issue