improve description to add consearch to browsers
[consearch.git] / index.php
index b50bcaf487afe9dd472286cd759083977bed553d..6314d36febdea4b82aeca0e5d9a0d05243f903b0 100644 (file)
--- a/index.php
+++ b/index.php
@@ -11,7 +11,11 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY
 You should have received a copy of the GNU General Public License along with this program; if not, see http://www.gnu.org/licenses/.
 */
 
-$dse = "";
+$consearch_name = "consearch";
+$consearch_base_url = "https://fpunktk.de/consearch/";
+$consearch_url = "$consearch_base_url" . "index.php";
+
+$dse = ""; // default search engine
 if ( isset($_GET['dse']) and preg_match('/^[0-9a-z]{1,5}$/', $_GET['dse']) === 1 ) { // TODO: prevent injection, check whether dse is a valid searchengine
     $dse = $_GET['dse'];
 }
@@ -24,18 +28,18 @@ if ( isset($_GET['get']) and $_GET['get'] === "opensearchdescription" ) {
     header('Content-Type: text/xml');
     echo '<?xml version="1.0" encoding="UTF-8"?>
 <OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
-<ShortName>consearch';
+<ShortName>' . "$consearch_name";
     if ( $dse ) { echo " ($dse)"; }
     echo '</ShortName>
 <Description>conveniently use different searchengines</Description>
 <Tags>consearch</Tags>
 <Contact>consearch @ f p u n k t k . de</Contact>
-<Url type="text/html" template="https://fpunktk.de/consearch/index.php';
+<Url type="text/html" template="' . "$consearch_url";
     if ( $dse ) { echo "?dse=$dse"; }
     echo '#{searchTerms}"></Url>
-<Image height="16" width="16" type="image/png">https://fpunktk.de/consearch/consearch.png</Image>
-</OpenSearchDescription>';
-    
+<Image height="16" width="16" type="image/png">' . "$consearch_base_url" . 'consearch.png</Image>
+</OpenSearchDescription>
+';
     exit;
 }
 
@@ -47,7 +51,7 @@ if ( isset($_GET['get']) and $_GET['get'] === "opensearchdescription" ) {
 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
 <meta name="referrer" content="no-referrer">
-<title>consearch</title>
+<title><?php echo "$consearch_name";?></title>
 <link rel="icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAACMuuz63rNKAAAAK0lEQVQI12P4/58BiM4cZ9gdDUVnboNE/n8Hoc6JDLvLGLrLGF4DyWlAcQBYKBgvsgbJOAAAAABJRU5ErkJggg==" type="image/png">
 <?php
 if ( $browserintegration ) {
@@ -55,7 +59,7 @@ if ( $browserintegration ) {
     if ( $dse ) {
         echo "&amp;dse=$dse";
     }
-    echo '" title="consearch';
+    echo '" title="' . "$consearch_name";
     if ( $dse ) {
         echo " ($dse)";
     }
@@ -118,7 +122,6 @@ b64images["osm.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA
 b64images["php.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAgMAAABinRfyAAAACVBMVEWAgMDX19cAAAD1ff0gAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAANElEQVQI12NgQAOiIEISxJB0DGDIipq2lCF1ZlokEpEVmQYUYxELYEhhYHNgCGFgdUBoBwCrTgwE/Pwg0gAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0xMVQxNzowNTo0NiswMjowMA7uwncAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTMtMTAtMjhUMTY6NTY6NTArMDE6MDBB6/VSAAAAAElFTkSuQmCC";
 b64images["sh.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAACXBIWXMAAABIAAAASABGyWs+AAAA+VBMVEU5gqrgrR82f6jfqBw3gqo4gqs4g6s5g6tBiK9Dia9Fi7BGi7FHjLFMj7NTk7Zemrtmn75noL92qcV/r8mAr8mNt86UvNKcwdWewtaixdioyNq10N+60+LJ3ejN4OrS4+zY5+/a6O/fqx7frCDfrCHfrSHgriXhsS3isjHitTjjtjnjtjvjtz3kuUPkukblvErlvU7mvU7mvlDnwVrrynLr8vbs8/ftz3/w9vnx2pzx257x3KHy36jy9/nz4a325772+fv36cT36cX3+vv579T79OL79eP89uf8/f38/f79+vH9/v7++/X+/Pf+/Pj+/fn+/fr+/fv///8t5hX9AAAABHRSTlNaWuDgiHwzrgAAAAFiS0dEUg1gLZAAAACxSURBVBgZPcEHQsJQAAPQ0H6NAxXEvRCCW9xbcRdx4Mj9D2OLlveAiJzuuKd7EBcQheFl564Ug5xz342EQdZsfyfJy9vP54mEMHpm+1brG1t7TUkII6e2k/NmQz3gQNWZr+fL4zVJICvOPWxLIFlZ9b+7usBMaXal5VR3VyADM8UFp44EhuLU5MT42NCMU4cCOW+/P7UuXm1/7Ajkkvse60LERefa+4qBqHzvP9ebigu/AGwyxwJqEuAAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTUtMDUtMjJUMTg6MTk6NDArMDI6MDCIMpBxAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE1LTA1LTIyVDE4OjE5OjIzKzAyOjAwDug71wAAAABJRU5ErkJggg==";
 b64images["uu.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAIAAADAAbR1AAAABnRSTlMAAAAAAABupgeRAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAMklEQVQ4y2NgwAC/f3d3YyMh4NGj8HBsJAlg1IKBB1eukEOOWkCPOCAmjY1aMGoBLQAAutj8GeaBm/MAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTQtMDctMTFUMTc6MDU6NDcrMDI6MDComcnDAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDEzLTEwLTI4VDE2OjU2OjU0KzAxOjAwtaTRQQAAAABJRU5ErkJggg==";
-b64images["wb.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAIAAADAAbR1AAAABnRSTlMAAAAAAABupgeRAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAiklEQVQ4y2NgIBHMxAsYKAEQI57jBWRag2z0PbzgDBiQbA3NLUC2hiZG449kiAUkG33tWlUVjMRvGcluhxj6///du3Fx//+fOYPbGjITKMwCkNH4LaAIEBNEZIOCgsmTCYlQZPTixSdPwtiYIlQwGj9JpjUQbVOnrluH22iILBUswE9SIaDwk6QBAFItUWLI8uCPAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTExVDE3OjA1OjQ3KzAyOjAwqJnJwwAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMy0xMC0yOFQxNjo1Njo1NSswMTowMBPT2vUAAAAASUVORK5CYII=";
 b64images["wp.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAMFBMVEX8/fy5urlXWFdIR0ipqKl6e3rY2dhpammEg4QoKCjp6OmYmJgZGBnIx8gEAgQ8OjxFp+PiAAAACXBIWXMAAABIAAAASABGyWs+AAAAbUlEQVQI12NgwA2EDFlME4LSihg4JjJYZnVzVTOwHV+wx7eAq4CBQedC8gwHRgcGBpkG7kcMKwQYGJjN2D4zpAK1cTxh+ymwG2TApCX1BV0gRn9I6uwGEMNzCuPMCyAGsxlDJdgSxgsMiUh2AgDcjxn2cDFW0wAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0xMVQxNzowNTo0NyswMjowMKiZycMAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTMtMTAtMjhUMTY6NTY6NTUrMDE6MDAT09r1AAAAAElFTkSuQmCC";
 b64images["yt.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAABV0lEQVRIx8VUO24CMRD1AaighQaugoREQ8UVtkTcgJqWDiIaOj4CKR3bI0EDAmkRoUWCDtOwDZ+JncXxb511siR5zezM88w8j+1F8IDnDYeVCkCtViwmEvCJfN5xBgOATmcy2e3g6UBa4AMAGHe7ov9b0Eqv16MRnQRrrO7cdRuNQoHzjlOvz2b6Bkx+pIDzeb/v9XjiZnO93u8Avi/H1QZs3b8LaLer1VTKLChSgO8fDv2+WPhyud04Px7rRzCdct7z5CNkl9hawF+DCHgjoJ+5XDIpWzrKsHg8m80GdrulfREnTDAXDARGr/vKovgFnyhALlgul0qiz0Zn4hlcArEe808njKldLlerHwlQJ6Tzcn6z2WqFCYwh4Hu8KiD8DlkIYCNUwfj5fLEQ468EYr0XAosJHI/pNP1xMItxJiP6tpblqfkYy7wggAKh6Odmf7vt1gd93wGWV/JQKq7UWwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0xMVQxNzowNTo0NyswMjowMKiZycMAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTMtMTAtMjhUMTY6NTY6NTYrMDE6MDAiO8BoAAAAAElFTkSuQmCC";
 b64images["imdb.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAaVBMVEUAAAC6pB303yPx3CPu1yPq0yPmziPiyCPfxSPcwCN4bREAAACplBoQDgKUgxczLAjXvSLCrh5tYBF0aREjHwVYTA5qWxFbUA6RfxeulB1xZBGhixq5oh4OCwLUtiPRsyLNrSLGpCKLexYQiDEbAAAAAXRSTlMAQObYZgAAAAlwSFlzAAAASAAAAEgARslrPgAAAHFJREFUGBkFwTFSAzEAADGtbXAITApK/v9AOhguuSABACgAwBJJIn+LRCJpJIkk61LP8ftqPqyOcw84P6D7sI03jDnwwMtzwP7ZYOk+YJquNqaxcTjwDhZcx4nvNS1dZLuR0PjKdlOiWrYbiWD5BAD+AWj2ERU8QW3TAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTExVDE3OjA3OjM0KzAyOjAwl0EKegAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0xMVQxNzowNjozOSswMjowMGgJuDgAAAAASUVORK5CYII=";
@@ -136,11 +139,12 @@ b64images["ks.png"] = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAB9VBMVEUAA
 
 var se = new Object(); // object of search engines
 // se["keyword"] = ["displayed name, max 7 chars", "url to which the querystring can be appended", "b64images name"];
-se["ii"] = ["ixquick", "https://eu.ixquick.com/do/search?q=", "ixquick.png"];
-se["id"] = ["ixq_de", "https://eu.ixquick.com/do/search?l=deutsch&q=", "ixquick.png"];
+se["ii"] = ["startpg", "https://www.startpage.com/do/search?query=", "sp.png"];
+se["id"] = ["sp_de", "https://www.startpage.com/do/search?cmd=process_search&language=deutsch&with_language=lang_de&query=", "sp.png"];
 se["wp"] = ["wp_de", "https://de.wikipedia.org/wiki/Spezial:Search?search=", "wp.png"];
 se["wpe"] = ["wp_en", "https://en.wikipedia.org/wiki/Special:Search?search=", "wp.png"];
-se["sp"] = ["strtpge", "https://startpage.com/do/search?query=", "sp.png"];
+se["qq"] = ["qwant_l", "https://lite.qwant.com/?t=web&s=0&b=0&q=", ""];
+se["qi"] = ["qw_img", "https://lite.qwant.com/?t=images&s=0&b=0&q=", ""];
 se["dd"] = ["dd_go", "https://duckduckgo.com/html/?ka=n&kh=1&kl=wt-wt&kp=-1&kt=n&kv=1&ky=-1&q=", "dd.png"];
 se["sx"] = ["searx", "https://searx.me/?q=", ""];
 se["gg"] = ["google", "https://www.google.com/search?hl=de&safe=off&q=", "gg.png"];
@@ -148,17 +152,21 @@ se["wa"] = ["wolfram", "https://www.wolframalpha.com/input/?i=", ""];
 se["si"] = ["sp_img", "https://startpage.com/do/search?cat=pics&query=", "sp.png"];
 se["gi"] = ["gg_img", "https://www.google.com/images?hl=de&safe=off&q=", "gg.png"];
 se["mg"] = ["metager", "https://metager.de/meta/meta.ger3?eingabe=", ""];
-se["wb"] = ["wb", "http://www.woerterbuch.info/?query=", "wb.png"];
-se["leo"] = ["leo", "https://dict.leo.org/ende/index_en.html#/searchLoc=0&resultOrder=basic&multiwordShowSingle=on&search=", "leo.png"];
-se["ud"] = ["ud", "http://www.urbandictionary.com/define.php?term=", "ud.png"];
+se["wb"] = ["wb", "http://www.woerterbuch.info/?query=", ""];
+se["leo"] = ["leo", "https://dict.leo.org/german-english/", "leo.png"];
+se["lg"] = ["linguee", "https://www.linguee.com/search?source=auto&query=", ""]
+se["dc"] = ["dict.cc", "https://www.dict.cc/?s=", ""];
 se["gt"] = ["gg_tl", "https://translate.google.de/?hl=de&tab=wT#en|de|", "gg.png"];
+se["ud"] = ["ud", "http://www.urbandictionary.com/define.php?term=", "ud.png"];
 se["osm"] = ["osm", "https://www.openstreetmap.org/?query=", "osm.png"];
 se["gm"] = ["g-maps", "https://www.google.de/maps/preview?hl=de&q=", "gm.png"];
 se["uu"] = ["uu_wiki", "http://wiki.ubuntuusers.de/", "uu.png"];
 se["man"] = ["u_man", "http://manpages.ubuntu.com/cgi-bin/search.py?ie=UTF-8&titles=Title&q=", "man-u.png"];
 se["dps"] = ["deb-pkg", "https://packages.debian.org/search?searchon=names&suite=all&section=all&keywords=", ""];
 se["ups"] = ["uu-pkg", "http://packages.ubuntu.com/search?searchon=names&suite=all&section=all&keywords=", "man-u.png"];
-se["fps"] = ["fed-pkg", "https://admin.fedoraproject.org/pkgdb/packages/?motif=*", ""];
+se["fps"] = ["fed-pkg", "https://apps.fedoraproject.org/packages/s/", ""];
+se["lps"] = ["lnxpkgs", "https://pkgs.org/download/", ""];
+se["fd"] = ["f-droid", "https://search.f-droid.org/?q=", ""];
 se["yt"] = ["youtube", "https://www.youtube.com/results?search_query=", "yt.png"];
 se["imdb"] = ["imdb", "http://www.imdb.com/find?s=all&q=", "imdb.png"];
 se["az"] = ["amazon", "https://www.amazon.de/s/?url=search-alias%3Daps&field-keywords=", "az.png"];
@@ -177,8 +185,14 @@ se["gpg"] = ["pgp.mit", "https://pgp.mit.edu/pks/lookup?op=index&fingerprint=on&
 se["amo"] = ["amo", "https://addons.mozilla.org/search/?q=", ""];
 se["gsm"] = ["gsm", "http://www.gsmarena.com/results.php3?sQuickSearch=yes&sName=", ""];
 se["ck"] = ["chfkch", "http://www.chefkoch.de/suche.php?wo=2&suche=", ""];
-se["ypi"] = ["ypi", "http://youpronounce.it/search.jsp?q=", ""];
+se["ye"] = ["you-eng", "https://youglish.com/search/", ""];
 se["ks"] = ["ks", "https://kraut.space/start?do=search&id=", "ks.png"];
+se["obi"] = ["obi", "https://www.obi.de/search/", ""];
+se["ikea"] = ["ikea", "https://www.ikea.com/de/de/search/?query=", ""];
+se["it"] = ["i-tanke", "https://ich-tanke.de/suche/?q=", ""]
+se["ct"] = ["clv-tkn", "https://www.clever-tanken.de/tankstelle_liste?spritsorte=7&r=10&ort=", ""]
+se["tp"] = ["tankstp", "https://www.tankstellenpreise.de/suche.html?sorte=2&u=10&s=1&o=", ""]
+se["ost"] = ["ost", "https://www.opensubtitles.org/en/search2/sublanguageid-eng/moviename-", ""];
 
 function display_searchbuttons() {
     document.getElementById("searchbuttons").innerHTML = "";
@@ -230,12 +244,10 @@ if ( $dse ) {
 
 <body onload="parse_fragmentstring();">
 
-<h1><a href="./">fpunktk.de/consearch</a></h1>
+<h1><a href="./"><?php echo "$consearch_base_url";?></a></h1>
 
 <noscript>
-<p style="color: red; font-size: 200%; font-weight: bold;">
-please enable javascript
-</p>
+<p style="color: red; font-size: 200%; font-weight: bold;">please enable javascript</p>
 </noscript>
 
 <?php
@@ -245,36 +257,37 @@ if ( $browserintegration ) {
 }
 ?>
 
-<div>
-<label><input id="querystring" type="text"></label>
-</div>
+<div><label><input id="querystring" type="text"></label></div>
 
-<div id="searchbuttons">
-</div>
+<div id="searchbuttons"></div>
 
-<p>
-<a href="?include=browserintegration">add to browser</a>
-</p>
+<p><a href="?include=browserintegration">add to browser</a></p>
 
 <?php
 if ( $browserintegration ) {
-    echo '</div>
+    echo "</div>
 
-<p>
-Now add consearch to your browser. In firefox this is done via the searchbar. If this does not work then consearch can be added via the following form, but this would send all queries to the server :-(
-</p>
-
-<form method="GET" action="./">' . "\n";
-    if ( $dse ) { echo '<input type="hidden" name="dse" value="' . $dse . '">' . "\n"; }
-    echo '<input type="text" name="consearchterm" value="">
-</form>
+<div style='text-align: left;'>
+<p>Add $consearch_name to your browser:</p>
+<ul style='margin: 0.5ex 2ex'>
+<li>In firefox desktop this is done via the search bar or the ⋯-button in the address bar.</li>
+<li>In firefox for android: Go to settings → search → add search engine → other, add a name (like $consearch_name) and the url '$consearch_url#%s'</li>
+<li>
+    If this does not work then $consearch_name can perhaps be added via the following form (right-click the input and select 'Add a Keyword for this Search...'), but this will send all queries to the server and is therefore not recommended.
+    <form method=\"GET\" action=\"./\">";
+    if ( $dse ) { echo "
+        <input type=\"hidden\" name=\"dse\" value=\"$dse\">"; }
+        echo '
+        <input type="text" name="consearchterm" value="">
+    </form>
+</li>
+</ul>
+</div>
 ';
 }
 ?>
 
-<p>
-<a href="https://github.com/fpunktk/consearch">about</a>
-</p>
+<p><a href="https://fpunktk.de/gitweb/?p=consearch.git;a=summary">about</a> | <a href="https://fpunktk.de/#kontakt">contact</a></p>
 
 </body>
 </html>