1
0
mirror of https://github.com/vichan-devel/vichan.git synced 2024-11-24 07:30:10 +01:00

Merge pull request #743 from Zankaria/fix-deprecations

Fix deprecations
This commit is contained in:
Lorenzo Yario 2024-05-11 04:38:59 -07:00 committed by GitHub
commit b2f246abb0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 30 additions and 12 deletions

View File

@ -14,3 +14,7 @@ The folder structure expected by compose is as follows
└── www └── www
``` ```
The vichan container is by itself much less rigid. The vichan container is by itself much less rigid.
Use `docker compose up --build` to start the docker compose.
Use `docker compose up --build -d php` to rebuild just the vichan container while the compose is running. Useful for development.

View File

@ -123,7 +123,7 @@ class AntiBot {
$html = ''; $html = '';
if ($count === false) { if ($count === false) {
$count = mt_rand(1, abs(count($this->inputs) / 15) + 1); $count = mt_rand(1, (int)abs(count($this->inputs) / 15) + 1);
} }
if ($count === true) { if ($count === true) {

View File

@ -1990,7 +1990,7 @@ function extract_modifiers($body) {
} }
function remove_modifiers($body) { function remove_modifiers($body) {
return preg_replace('@<tinyboard ([\w\s]+)>(.+?)</tinyboard>@usm', '', $body); return $body ? preg_replace('@<tinyboard ([\w\s]+)>(.+?)</tinyboard>@usm', '', $body) : null;
} }
function markup(&$body, $track_cites = false, $op = false) { function markup(&$body, $track_cites = false, $op = false) {
@ -2259,6 +2259,7 @@ function escape_markup_modifiers($string) {
} }
function defined_flags_accumulate($desired_flags) { function defined_flags_accumulate($desired_flags) {
global $config;
$output_flags = 0x0; $output_flags = 0x0;
foreach ($desired_flags as $flagname) { foreach ($desired_flags as $flagname) {
if (defined($flagname)) { if (defined($flagname)) {
@ -2276,7 +2277,7 @@ function defined_flags_accumulate($desired_flags) {
function utf8tohtml($utf8) { function utf8tohtml($utf8) {
$flags = defined_flags_accumulate(['ENT_NOQUOTES', 'ENT_SUBSTITUTE', 'ENT_DISALLOWED']); $flags = defined_flags_accumulate(['ENT_NOQUOTES', 'ENT_SUBSTITUTE', 'ENT_DISALLOWED']);
return htmlspecialchars($utf8, $flags, 'UTF-8'); return $utf8 ? htmlspecialchars($utf8, $flags, 'UTF-8') : '';
} }
function ordutf8($string, &$offset) { function ordutf8($string, &$offset) {

View File

@ -291,6 +291,7 @@ class ImageConvert extends ImageBase {
} else { } else {
rename($this->temp, $src); rename($this->temp, $src);
chmod($src, 0664); chmod($src, 0664);
$this->temp = false;
} }
} }
public function width() { public function width() {
@ -300,9 +301,11 @@ class ImageConvert extends ImageBase {
return $this->height; return $this->height;
} }
public function destroy() { public function destroy() {
if ($this->temp !== false) {
@unlink($this->temp); @unlink($this->temp);
$this->temp = false; $this->temp = false;
} }
}
public function resize() { public function resize() {
global $config; global $config;

View File

@ -240,7 +240,7 @@ function check_login(bool $prompt = false): void {
$expected_cookie_name = calc_cookie_name($is_https, $is_path_jailed, $config['cookies']['mod']); $expected_cookie_name = calc_cookie_name($is_https, $is_path_jailed, $config['cookies']['mod']);
// Validate session // Validate session
if (isset($expected_cookie_name)) { if (isset($_COOKIE[$expected_cookie_name])) {
// Should be username:hash:salt // Should be username:hash:salt
$cookie = explode(':', $_COOKIE[$expected_cookie_name]); $cookie = explode(':', $_COOKIE[$expected_cookie_name]);
if (count($cookie) != 3) { if (count($cookie) != 3) {

View File

@ -1055,9 +1055,11 @@ if (isset($_POST['delete'])) {
if ($size[0] > $config['max_width'] || $size[1] > $config['max_height']) { if ($size[0] > $config['max_width'] || $size[1] > $config['max_height']) {
error($config['error']['maxsize']); error($config['error']['maxsize']);
} }
// If, on the basis of the file extension, the image file has metadata we can operate on. // If, on the basis of the file extension, the image file has metadata we can operate on.
$file_image_has_operable_metadata = $file['extension'] === 'jpg' || $file['extension'] === 'jpeg' || $file['extension'] === 'webp' || $file['extension'] == 'png'; $file_image_has_operable_metadata = $file['extension'] === 'jpg' || $file['extension'] === 'jpeg' || $file['extension'] === 'webp' || $file['extension'] == 'png';
$file['exif_stripped'] = false;
if ($file_image_has_operable_metadata && $config['convert_auto_orient']) { if ($file_image_has_operable_metadata && $config['convert_auto_orient']) {
// The following code corrects the image orientation. // The following code corrects the image orientation.
@ -1123,7 +1125,7 @@ if (isset($_POST['delete'])) {
$dont_copy_file = false; $dont_copy_file = false;
if ($config['redraw_image'] || ($file_image_has_operable_metadata && !@$file['exif_stripped'] && $config['strip_exif'])) { if ($config['redraw_image'] || ($file_image_has_operable_metadata && !$file['exif_stripped'] && $config['strip_exif'])) {
if (!$config['redraw_image'] && $config['use_exiftool']) { if (!$config['redraw_image'] && $config['use_exiftool']) {
try { try {
$file['size'] = strip_image_metadata($file['tmp_name']); $file['size'] = strip_image_metadata($file['tmp_name']);
@ -1319,14 +1321,22 @@ if (isset($_POST['delete'])) {
if (isset($_SERVER['HTTP_REFERER'])) { if (isset($_SERVER['HTTP_REFERER'])) {
// Tell Javascript that we posted successfully // Tell Javascript that we posted successfully
if (isset($_COOKIE[$config['cookies']['js']])) if (isset($_COOKIE[$config['cookies']['js']])) {
$js = json_decode($_COOKIE[$config['cookies']['js']]); $js = json_decode($_COOKIE[$config['cookies']['js']]);
else } else {
$js = (object) array(); $js = (object)array();
}
// Tell it to delete the cached post for referer // Tell it to delete the cached post for referer
$js->{$_SERVER['HTTP_REFERER']} = true; $js->{$_SERVER['HTTP_REFERER']} = true;
// Encode and set cookie
setcookie($config['cookies']['js'], json_encode($js), 0, $config['cookies']['jail'] ? $config['cookies']['path'] : '/', null, false, false); // Encode and set cookie.
$options = [
'expires' => 0,
'path' => $config['cookies']['jail'] ? $config['cookies']['path'] : '/',
'httponly' => false,
'samesite' => 'Strict'
];
setcookie($config['cookies']['js'], json_encode($js), $options);
} }
$root = $post['mod'] ? $config['root'] . $config['file_mod'] . '?/' : $config['root']; $root = $post['mod'] ? $config['root'] . $config['file_mod'] . '?/' : $config['root'];