mirror of
https://github.com/hnhx/librex.git
synced 2025-04-29 14:09:27 -04:00
the text result api returns special results as well (currency conversion, wikipedia result etc.)
This commit is contained in:
parent
e2b353dfc0
commit
c355792964
6 changed files with 50 additions and 28 deletions
2
api.php
2
api.php
|
@ -17,7 +17,7 @@
|
|||
{
|
||||
case 0:
|
||||
require "engines/google/text.php";
|
||||
$results = get_text_results($query_encoded, $page, true);
|
||||
$results = get_text_results($query_encoded, $page);
|
||||
break;
|
||||
case 1:
|
||||
require "engines/google/image.php";
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
$special_search = $page == 0 ? check_for_special_search($query) : 0;
|
||||
$special_ch = null;
|
||||
$url = null;
|
||||
if ($special_search != 0 && $api == false)
|
||||
if ($special_search != 0)
|
||||
{
|
||||
switch ($special_search)
|
||||
{
|
||||
|
@ -72,15 +72,15 @@
|
|||
{
|
||||
case 1:
|
||||
require "engines/special/currency.php";
|
||||
currency_results($query, curl_multi_getcontent($special_ch));
|
||||
array_push($results, currency_results($query, curl_multi_getcontent($special_ch)));
|
||||
break;
|
||||
case 2:
|
||||
require "engines/special/definition.php";
|
||||
definition_results($query, curl_multi_getcontent($special_ch));
|
||||
array_push($results, definition_results($query, curl_multi_getcontent($special_ch)));
|
||||
break;
|
||||
case 3:
|
||||
require "engines/special/wikipedia.php";
|
||||
wikipedia_results($query, curl_multi_getcontent($special_ch));
|
||||
array_push($results, wikipedia_results($query, curl_multi_getcontent($special_ch)));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -94,9 +94,13 @@
|
|||
if ($url == null)
|
||||
continue;
|
||||
|
||||
if (!empty($results)) // filter duplicate results
|
||||
if (end($results)["url"] == $url->textContent)
|
||||
continue;
|
||||
if (!empty($results)) // filter duplicate results, ignore special result
|
||||
{
|
||||
if (!array_key_exists("special_response", end($results)))
|
||||
if (end($results)["url"] == $url->textContent)
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
$url = $url->textContent;
|
||||
$url = check_for_privacy_friendly_alternative($url);
|
||||
|
@ -121,9 +125,22 @@
|
|||
|
||||
function print_text_results($results)
|
||||
{
|
||||
global $query , $page;
|
||||
|
||||
echo "<div class=\"text-result-container\">";
|
||||
|
||||
$special = $results[0];
|
||||
if (array_key_exists("special_response", $special))
|
||||
{
|
||||
$response = $special["special_response"]["response"];
|
||||
$source = $special["special_response"]["source"];
|
||||
|
||||
echo "<p class=\"special-result-container\">";
|
||||
echo $response;
|
||||
echo "<a href=\"$source\" target=\"_blank\">$source</a>";
|
||||
echo "</p>";
|
||||
|
||||
array_shift($results);
|
||||
}
|
||||
|
||||
foreach($results as $result)
|
||||
{
|
||||
$title = $result["title"];
|
||||
|
@ -139,6 +156,7 @@
|
|||
echo "<span>$description</span>";
|
||||
echo "</div>";
|
||||
}
|
||||
|
||||
echo "</div>";
|
||||
}
|
||||
?>
|
|
@ -21,10 +21,14 @@
|
|||
|
||||
$conversion_result = ($currency_to_convert_response / $base_currency_response) * $amount_to_convert;
|
||||
|
||||
echo "<p class=\"special-result-container\">";
|
||||
echo "$amount_to_convert $base_currency = $conversion_result $currency_to_convert";
|
||||
echo "<a href=\"https://moneyconvert.net/\" target=\"_blank\">moneyconvert.net</a>";
|
||||
echo "</p>";
|
||||
$formatted_response = "$amount_to_convert $base_currency = $conversion_result $currency_to_convert";
|
||||
$source = "https://moneyconvert.net/";
|
||||
return array(
|
||||
"special_response" => array(
|
||||
"response" => $formatted_response,
|
||||
"source" => $source
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -14,11 +14,13 @@
|
|||
{
|
||||
$definition = $json_response[0]["meanings"][0]["definitions"][0]["definition"];
|
||||
|
||||
echo "<p class=\"special-result-container\">";
|
||||
echo "$word_to_define meaning<br/>";
|
||||
echo "<br/>" . $definition . "<br/>";
|
||||
echo "<a href=\"https://dictionaryapi.dev/\" target=\"_blank\">dictionaryapi.dev</a>";
|
||||
echo "</p>";
|
||||
$source = "https://en.wikipedia.org/wiki/$query";
|
||||
return array(
|
||||
"special_response" => array(
|
||||
"response" => $definition,
|
||||
"source" => $source
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -13,15 +13,14 @@
|
|||
if (!array_key_exists("missing", $first_page))
|
||||
{
|
||||
$description = substr($first_page["extract"], 0, 250) . "...";
|
||||
|
||||
if (strpos($description, "may refer to"))
|
||||
return;
|
||||
|
||||
echo "<p class=\"special-result-container\">";
|
||||
echo "$description";
|
||||
echo "<a href=\"https://en.wikipedia.org/wiki/$query\">wikipedia.org</a>";
|
||||
|
||||
echo "</p>";
|
||||
$source = "https://en.wikipedia.org/wiki/$query";
|
||||
return array(
|
||||
"special_response" => array(
|
||||
"response" => $description,
|
||||
"source" => $source
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -101,7 +101,6 @@ a:hover, .text-result-wrapper h2:hover {
|
|||
}
|
||||
|
||||
.text-result-container,
|
||||
.special-result-container,
|
||||
#time,
|
||||
.next-page-button-wrapper {
|
||||
margin-left:10%;
|
||||
|
|
Loading…
Add table
Reference in a new issue