still missing things on google scraper
This commit is contained in:
commit
bca265aea6
90 changed files with 17559 additions and 0 deletions
316
settings.php
Normal file
316
settings.php
Normal file
|
@ -0,0 +1,316 @@
|
|||
<?php
|
||||
|
||||
/*
|
||||
Define settings
|
||||
*/
|
||||
$settings = [
|
||||
[
|
||||
"name" => "General",
|
||||
"settings" => [
|
||||
[
|
||||
"description" => "Allow NSFW content",
|
||||
"parameter" => "nsfw",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "yes",
|
||||
"text" => "Yes"
|
||||
],
|
||||
[
|
||||
"value" => "maybe",
|
||||
"text" => "Maybe"
|
||||
],
|
||||
[
|
||||
"value" => "no",
|
||||
"text" => "No"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"description" => "Theme",
|
||||
"parameter" => "theme",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "dark",
|
||||
"text" => "Gruvbox dark"
|
||||
],
|
||||
[
|
||||
"value" => "cream",
|
||||
"text" => "Gruvbox cream"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"description" => "Prevent clicking background elements when image viewer is open",
|
||||
"parameter" => "bg_noclick",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "no",
|
||||
"text" => "No"
|
||||
],
|
||||
[
|
||||
"value" => "yes",
|
||||
"text" => "Yes"
|
||||
]
|
||||
]
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"name" => "Scrapers to use",
|
||||
"settings" => [
|
||||
[
|
||||
"description" => "Web",
|
||||
"parameter" => "scraper_web",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "ddg",
|
||||
"text" => "DuckDuckGo"
|
||||
],
|
||||
[
|
||||
"value" => "brave",
|
||||
"text" => "Brave"
|
||||
],
|
||||
[
|
||||
"value" => "google",
|
||||
"text" => "Google"
|
||||
],
|
||||
[
|
||||
"value" => "mojeek",
|
||||
"text" => "Mojeek"
|
||||
],
|
||||
[
|
||||
"value" => "marginalia",
|
||||
"text" => "Marginalia"
|
||||
],
|
||||
[
|
||||
"value" => "wiby",
|
||||
"text" => "wiby"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"description" => "Images",
|
||||
"parameter" => "scraper_images",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "ddg",
|
||||
"text" => "DuckDuckGo"
|
||||
],
|
||||
[
|
||||
"value" => "yandex",
|
||||
"text" => "Yandex"
|
||||
],
|
||||
[
|
||||
"value" => "google",
|
||||
"text" => "Google"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"description" => "Videos",
|
||||
"parameter" => "scraper_videos",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "yt",
|
||||
"text" => "YouTube"
|
||||
],
|
||||
[
|
||||
"value" => "ddg",
|
||||
"text" => "DuckDuckGo"
|
||||
],
|
||||
[
|
||||
"value" => "google",
|
||||
"text" => "Google"
|
||||
]
|
||||
]
|
||||
],
|
||||
[
|
||||
"description" => "News",
|
||||
"parameter" => "scraper_news",
|
||||
"options" => [
|
||||
[
|
||||
"value" => "ddg",
|
||||
"text" => "DuckDuckGo"
|
||||
],
|
||||
[
|
||||
"value" => "brave",
|
||||
"text" => "Brave"
|
||||
],
|
||||
[
|
||||
"value" => "google",
|
||||
"text" => "Google"
|
||||
],
|
||||
[
|
||||
"value" => "mojeek",
|
||||
"text" => "Mojeek"
|
||||
]
|
||||
]
|
||||
]
|
||||
]
|
||||
]
|
||||
];
|
||||
|
||||
/*
|
||||
Set cookies
|
||||
*/
|
||||
|
||||
if($_POST){
|
||||
|
||||
$loop = &$_POST;
|
||||
}else{
|
||||
|
||||
// refresh cookie dates
|
||||
$loop = &$_COOKIE;
|
||||
}
|
||||
|
||||
foreach($loop as $key => $value){
|
||||
|
||||
foreach($settings as $title){
|
||||
|
||||
foreach($title["settings"] as $list){
|
||||
|
||||
if(
|
||||
$list["parameter"] == $key &&
|
||||
$list["options"][0]["value"] == $value
|
||||
){
|
||||
|
||||
unset($_COOKIE[$key]);
|
||||
|
||||
setcookie(
|
||||
$key,
|
||||
"",
|
||||
[
|
||||
"expires" => -1, // removes cookie
|
||||
"samesite" => "Strict"
|
||||
]
|
||||
);
|
||||
|
||||
continue 3;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!is_string($value)){
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
$key = trim($key);
|
||||
$value = trim($value);
|
||||
|
||||
$_COOKIE[$key] = $value;
|
||||
|
||||
setcookie(
|
||||
$key,
|
||||
$value,
|
||||
[
|
||||
"expires" => strtotime("+400 days"), // maximal cookie ttl in chrome
|
||||
"samesite" => "Strict"
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
include "lib/frontend.php";
|
||||
$frontend = new frontend();
|
||||
|
||||
echo
|
||||
'<!DOCTYPE html>' .
|
||||
'<html lang="en">' .
|
||||
'<head>' .
|
||||
'<meta http-equiv="Content-Type" content="text/html;charset=utf-8">' .
|
||||
'<title>Settings</title>' .
|
||||
'<link rel="stylesheet" href="/static/style.css">' .
|
||||
'<meta name="viewport" content="width=device-width,initial-scale=1">' .
|
||||
'<meta name="robots" content="index,follow">' .
|
||||
'<link rel="icon" type="image/x-icon" href="/favicon.ico">' .
|
||||
'<meta name="description" content="4get.ca: Settings">' .
|
||||
'<link rel="search" type="application/opensearchdescription+xml" title="4get" href="/opensearch.xml">' .
|
||||
'</head>' .
|
||||
'<body' . $frontend->getthemeclass() . '>';
|
||||
|
||||
$left =
|
||||
'<h1>Settings</h1>' .
|
||||
'<form method="post" autocomplete="off">' .
|
||||
'By clicking <div class="code-inline">Update settings!</div>, a plaintext <div class="code-inline">key=value</div> cookie will be stored on your browser. When selecting a default setting, the parameter is removed from your cookies.';
|
||||
|
||||
$c = count($_COOKIE);
|
||||
if($c !== 0){
|
||||
|
||||
$left .=
|
||||
'<br><br>Your current cookie looks like this:' .
|
||||
'<div class="code">';
|
||||
|
||||
$code = "";
|
||||
|
||||
$ca = 0;
|
||||
foreach($_COOKIE as $key => $value){
|
||||
|
||||
$code .= $key . "=" . $value;
|
||||
|
||||
$ca++;
|
||||
if($ca !== $c){
|
||||
|
||||
$code .= "; ";
|
||||
}
|
||||
}
|
||||
|
||||
$left .= $frontend->highlightcode($code);
|
||||
|
||||
$left .= '</div>';
|
||||
}else{
|
||||
|
||||
$left .=
|
||||
'<br><br>You currently don\'t have any cookies set.';
|
||||
}
|
||||
|
||||
$left .=
|
||||
'<div class="settings">';
|
||||
|
||||
foreach($settings as $title){
|
||||
|
||||
$left .= '<h2>' . $title["name"] . '</h2>';
|
||||
|
||||
foreach($title["settings"] as $setting){
|
||||
|
||||
$left .=
|
||||
'<div class="setting">' .
|
||||
'<div class="title">' . $setting["description"] . '</div>' .
|
||||
'<select name="' . $setting["parameter"] . '">';
|
||||
|
||||
foreach($setting["options"] as $option){
|
||||
|
||||
$left .=
|
||||
'<option value="' . $option["value"] . '"';
|
||||
|
||||
if(
|
||||
isset($_COOKIE[$setting["parameter"]]) &&
|
||||
$_COOKIE[$setting["parameter"]] == $option["value"]
|
||||
){
|
||||
$left .= ' selected';
|
||||
}
|
||||
|
||||
$left .= '>' . $option["text"] . '</option>';
|
||||
}
|
||||
|
||||
$left .= '</select></div>';
|
||||
}
|
||||
}
|
||||
|
||||
$left .=
|
||||
'</div>' .
|
||||
'<div class="settings-submit">' .
|
||||
'<input type="submit" value="Update settings!">' .
|
||||
'<a href="../">< Return to main page</a>' .
|
||||
'</div>' .
|
||||
'</form>';
|
||||
|
||||
echo
|
||||
$frontend->load(
|
||||
"search.html",
|
||||
[
|
||||
"class" => "",
|
||||
"right-left" => "",
|
||||
"right-right" => "",
|
||||
"left" => $left
|
||||
]
|
||||
);
|
Loading…
Add table
Add a link
Reference in a new issue