index file with bookmarklet
authorChristian Weiske <cweiske@cweiske.de>
Tue, 25 Mar 2014 21:59:21 +0000 (22:59 +0100)
committerChristian Weiske <cweiske@cweiske.de>
Tue, 25 Mar 2014 21:59:21 +0000 (22:59 +0100)
www/index.php [new file with mode: 0644]
www/js/show-links.js

diff --git a/www/index.php b/www/index.php
new file mode 100644 (file)
index 0000000..25d13e2
--- /dev/null
@@ -0,0 +1,25 @@
+<?php
+if (!isset($_SERVER['REQUEST_SCHEME'])) {
+    $_SERVER['REQUEST_SCHEME'] = 'http';
+}
+$baseurl = $_SERVER['REQUEST_SCHEME'] . '://'
+    . $_SERVER['HTTP_HOST']
+    . preg_replace('#\?.+$#', '', $_SERVER['REQUEST_URI']);
+?>
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+ <head>
+  <title>stapibas: The standalone linkback server</title>
+  <meta name="robots" content="noindex,nofollow"/>
+ </head>
+ <body>
+  <h3>Linkback stats</h3>
+  <p>
+   Add the following bookmarklet to your browser's bookmarks (right-click):
+  </p>
+  <p>
+   <a href="javascript:s=document.createElement('script');s.src='<?php echo $baseurl; ?>js/show-links.js';document.body.appendChild(s);">stapibas linkback stats</a>
+  </p>
+ </body>
+</html>
index 52c307522241b8a4dd1e6b5fe107d58be6a0b1ca..28923540237f8050fc16ef5954bc0e3fefdb895f 100644 (file)
@@ -2,9 +2,13 @@
  * Load it with:
  * s=document.createElement('script');s.src='http://stapibas.bogo/js/show-links.js';document.body.appendChild(s);
  */
-var stapibasUrl = 'http://stapibas.bogo/';
+var scripts = document.getElementsByTagName("script");
+var thisScript = scripts[scripts.length-1];
+var thisScriptsSrc = thisScript.src;
+var stapibasUrl = thisScriptsSrc.replace('js/show-links.js', '');
+//var stapibasUrl = 'http://stapibas.bogo/';
+
 var pageUrl = window.location.href;
-//var pageUrl = 'http://cweiske.de/tagebuch/bdrem.htm';
 
 function loadScript(url, callback)
 {
@@ -15,6 +19,7 @@ function loadScript(url, callback)
     script.onload = callback;
     document.getElementsByTagName('head')[0].appendChild(script);
 }
+
 function loadData()
 {
     jQuery('head').append(
@@ -25,10 +30,11 @@ function loadData()
     );
     jQuery.ajax(
         stapibasUrl + 'api/links.php?url='
-        + encodeURIComponent(pageUrl.replace(/www.bogo/, 'cweiske.de'))
+        + encodeURIComponent(fixUrl(pageUrl))
     ).done(function(data) {showData(data);})
         .fail(function(data) {showError(data);});
 }
+
 function showData(data)
 {
     var items = jQuery('.e-content a');
@@ -61,10 +67,10 @@ function showData(data)
 
     //add link info
     items.each(function(key, elem) {
-        if (!data.links[elem.href.replace(/www.bogo/, 'cweiske.de')]) {
+        if (!data.links[fixUrl(elem.href)]) {
             return;
         }
-        var link = data.links[elem.href.replace(/www.bogo/, 'cweiske.de')];
+        var link = data.links[fixUrl(elem.href)];
         $(elem).addClass('stapibas-link')
             .addClass('stapibas-status-' + link.status);
         $(elem).smallipop(
@@ -83,6 +89,12 @@ function showData(data)
         );
     });
 }
+
+function fixUrl(url)
+{
+    return url.replace(/www.bogo/, 'cweiske.de');
+}
+
 function showError(data)
 {
     $('body').prepend(