X-Git-Url: https://git.p6c8.net/jirafeau_mojo42.git/blobdiff_plain/2dc4984ad57dfcb0ded829bfc9d45493484fe6e3..9cb2631b8ac5fd7c0de6df67d259209eece25305:/lib/functions.php
diff --git a/lib/functions.php b/lib/functions.php
index eaedfac..9fa0e5e 100644
--- a/lib/functions.php
+++ b/lib/functions.php
@@ -597,7 +597,7 @@ function jirafeau_admin_list($name, $file_hash, $link_hash)
}
/* Filter. */
- if (!empty($name) && !preg_match("/$name/i", htmlspecialchars($l['file_name']))) {
+ if (!empty($name) && !preg_match("/$name/i", jirafeau_escape($l['file_name']))) {
continue;
}
if (!empty($file_hash) && $file_hash != $l['md5']) {
@@ -609,10 +609,10 @@ function jirafeau_admin_list($name, $file_hash, $link_hash)
/* Print link informations. */
echo '
';
echo '' .
- '' . htmlspecialchars($l['file_name']) . '';
+ '' . jirafeau_escape($l['file_name']) . '';
echo ' | ';
- echo '' . $l['mime_type'] . ' | ';
+ echo '' . jirafeau_escape($l['mime_type']) . ' | ';
echo '' . jirafeau_human_size($l['file_size']) . ' | ';
echo '' . ($l['time'] == -1 ? 'â' : jirafeau_get_datetimefield($l['time'])) . ' | ';
echo '';
@@ -628,16 +628,19 @@ function jirafeau_admin_list($name, $file_hash, $link_hash)
'' .
'' .
'' .
' | ';
@@ -1243,3 +1246,34 @@ function jirafeau_replace_markers($content, $htmllinebreaks = false)
return $content;
}
+
+function jirafeau_escape($string)
+{
+ return htmlspecialchars($string, ENT_QUOTES);
+}
+
+function jirafeau_admin_session_start()
+{
+ $_SESSION['admin_auth'] = true;
+ $_SESSION['admin_csrf'] = md5(uniqid(mt_rand(), true));
+}
+
+function jirafeau_admin_session_end()
+{
+ $_SESSION = array();
+ session_destroy();
+}
+
+function jirafeau_admin_session_logged()
+{
+ return isset($_SESSION['admin_auth']) &&
+ isset($_SESSION['admin_csrf']) &&
+ isset($_POST['admin_csrf']) &&
+ $_SESSION['admin_auth'] === true &&
+ $_SESSION['admin_csrf'] === $_POST['admin_csrf'];
+}
+
+function jirafeau_admin_csrf_field()
+{
+ return "";
+}