Remove unnecessary files.

This commit is contained in:
2026-01-12 11:14:30 +01:00
parent 01861f08c6
commit 2f7d11b7d2
3 changed files with 0 additions and 253 deletions

View File

@@ -1,102 +0,0 @@
# CHANGE LOG
For the newest (und unstable) version always check the develop branch, for beta check
master branch, for really stable stuff check the releases (the ones that have a real version number :))
## master branch
- [slaveek/panique] [PR](https://github.com/panique/huge/pull/773) [#770] fix for sending user back to last visited page after login
- [slaveek] [PR](https://github.com/panique/huge/pull/815) lots of code styling fixes
- [panique] [#729] Fix, mail sending now returns true or false success status (https://github.com/panique/huge/issues/729)
- [OmarElGabry] [PR](https://github.com/panique/huge/pull/693) session id regeneration in certain situations
- [OmarElGabry] [PR](https://github.com/panique/huge/pull/693) encrypted cookies
- [OmarElGabry] [PR](https://github.com/panique/huge/pull/693) new encryption class
- [OmarElGabry] [PR](https://github.com/panique/huge/pull/693) anti-CSRF feature (used in login and username change forms)
- [josh-bridge] [PR](https://github.com/panique/huge/pull/689) logged-in user can now change password
- [justincdotme] [PR](https://github.com/panique/huge/pull/684) better code for brute-force blocking when logging in
- [panique] soft autoinstaller improvements
- [panique] updated dependencies to current versions
- [Kent55/panique] XSS protection filter
- [FAlbanni] XSS protection with better session/cookie, now only allowed on used domain
- [panique] there's now a simple Favicon and a fallback to avoid browsers hammering the application requesting favicons
- [panique] application has now a page title
- [panique] avatar upload feature can now handle jpg, png, gif
- [panique/tankerkiller125] avatars folder now does not run any PHP code (security improvement)
- [tysonlist] [#657] send user back to last-visited page after successful login (when not being logged in first)
- [sandropons] anti-brute-force feature for login process
- [panique] removed old Facebook texts (as Login-via-Facebook feature was removed since 3.0)
- [oisian/ldmusic] [#608] Deletion / suspension of users, Admin menu
- [panique] [#654](https://github.com/panique/huge/issues/654) little frontend navi bug fixed
- [Dominic28] [PR](https://github.com/panique/huge/pull/645) added checkboxes to request class
- [Dominic28] [PR](https://github.com/panique/huge/pull/644) code style fixes
- [M0ritzWeide] [PR](https://github.com/panique/huge/pull/635) added browser caching
- [modInfo/panique] [PR](https://github.com/panique/huge/pull/647) added missing view table column
## 3.1
Code Quality at Scrutinizer 9.7/10, at Code Climate 3.9/4
**February 2015**
- [panique] several code quality improvements (and line reductions :) ) all over the project
- [PR](https://github.com/panique/huge/pull/620) [owenr88] view rending now possible with multiple view files
- [panique] lots of code refactorings and simplifications all over the project
- [PR](https://github.com/panique/huge/pull/615) [Dominic28] Avatar can now be deleted by the user
- [panique] First Unit tests :)
- [panique] several code quality improvements all over the project
- [panique] avatarModel code improvements
- [panique] renamed AccountType stuff to UserRole, minor changes
## 3.0
Code Quality at Scrutinizer 9.3/10, at Code Climate 3.9/4
**February 2015**
- [panique] removed duplicate code in AccountTypeModel
- [PR](https://github.com/panique/huge/pull/587) [upperwood] Facebook stuff completely removed from SQL
- [panique] tiny text changes
**January 2015**
- [panique] added static Text class (gets the messages etc)
- [panique] added static Environment class (get the environment)
- [panique] added static Config class (gets config easily and according to environment)
- [panique] new styling of the entire project: login/index has new look now
- [panique] massive refactoring of all model classes: lots of methods have been organized into other model classes
- [panique] massive refactoring of all model classes: all methods are static now
- [panique] EXPERIMENTAL: added static database call / DatabaseFactory, rebuild NoteModel with static methods
- [panique] massive refactoring of mail sending, (chose between PHPMailer, SwiftMailer, native / SMTP or no SMTP)
**December 2014**
- [panique] lots of refactorings
- [panique] refactored LoginModel'S login() method / LoginController's login() method
- [panique] removed COOKIE_DOMAIN (cookie is now valid on the domain/IP it has been created on)
- [panique] Abstracting super-globals like $_POST['x'] into Request::post('x')
- [panique] entirely removed all the Facebook stuff [will be replaced by new proper Oauth2 solution soon]
- [panique] lots of code refactorings and cleaning, deletions of duplicate code
- [panique] moving nearly all hardcoded values to config
- [panique] new View handling: you'll have to pass vars to the view renderer now
- [panique] completely removed Facebook login process from controller (incomplete) [will be replaced by new solution]
- [panique] less config, URL/IP is auto-detected now
- [panique] added loadConfig() to load a specific config according to environment setting (fallback: development)
- [panique] added getEnvironment() to fetch (potential) environment setting
- [panique] replaced native super-globals access by wrapper access (Session:get instead of $_SESSION)
- [panique] complete frontend rebuilding (incomplete yet)
- [panique] massive cleaning of all controllers
- [panique] added Session::add() to allow stacking of elements (useful for collecting feedback, errors etc)
- [panique] complete rebuild of model handling
- [panique] View can now render(), renderWithoutHeaderFooter() and renderJSON
- [panique] using Composer's PSR-4 autoloader (in a very basic way currently)
- [panique] DB construction needs now port by default
- [panique] removed (semi-optional) hashing cost factor (as it's redundant usually)
- [panique] email max limit increased to 254/255 (official number)
- [panique] simpler and improved core
- [panique] improved architecture, controllers are now named like "IndexController"
- [panique] moved index.php to /public folder, new .htaccess, new installation guideline
- [panique] MVC naming fixes
- [nerdalertdk] betters paths, automatic paths
- [panique] removed legacy PHP stuff: 5.5.x is now the minimum
- [PR](https://github.com/panique/php-login/pull/503) [Malkleth] allow users to request password reset by inputting email as well as user names
- [PR](https://github.com/panique/php-login/pull/516) [pein0119] cookie runtime calculation fix

View File

@@ -1,33 +0,0 @@
<?php
/**
* Migration: Add is_read column to messages table
*/
// Include database connection
require_once __DIR__ . '/../../config.php';
try {
$database = DatabaseFactory::getFactory()->getConnection();
// Check if is_read column exists
$sql = "SHOW COLUMNS FROM messages LIKE 'is_read'";
$query = $database->prepare($sql);
$query->execute();
$result = $query->fetch();
if (!$result) {
// Add is_read column
$sql = "ALTER TABLE messages ADD COLUMN is_read TINYINT(1) NOT NULL DEFAULT 0";
$query = $database->prepare($sql);
$query->execute();
echo "Successfully added is_read column to messages table\n";
} else {
echo "is_read column already exists in messages table\n";
}
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}
?>

View File

@@ -1,118 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>Test Messaging Endpoints</title>
</head>
<body>
<h1>Test Messaging Endpoints</h1>
<h2>Test 1: Get Global Messages</h2>
<button onclick="testGetGlobalMessages()">Test Get Global Messages</button>
<div id="result1"></div>
<h2>Test 2: Get Conversation Messages</h2>
<button onclick="testGetConversationMessages()">Test Get Conversation Messages</button>
<div id="result2"></div>
<h2>Test 3: Send Global Message</h2>
<button onclick="testSendGlobalMessage()">Test Send Global Message</button>
<div id="result3"></div>
<h2>Test 4: Send Conversation Message</h2>
<button onclick="testSendConversationMessage()">Test Send Conversation Message</button>
<div id="result4"></div>
<script>
async function testGetGlobalMessages() {
const resultDiv = document.getElementById('result1');
resultDiv.innerHTML = '<p>Testing...</p>';
try {
const response = await fetch('<?= Config::get('URL') ?>message/getGlobalMessages');
const text = await response.text();
resultDiv.innerHTML = `
<p><strong>Status:</strong> ${response.status}</p>
<p><strong>Headers:</strong> ${response.headers.get('content-type')}</p>
<p><strong>Response:</strong></p>
<pre style="background: #f0f0f0; padding: 10px; overflow-x: auto;">${text}</pre>
`;
} catch (error) {
resultDiv.innerHTML = `<p style="color: red;">Error: ${error.message}</p>`;
}
}
async function testGetConversationMessages() {
const resultDiv = document.getElementById('result2');
resultDiv.innerHTML = '<p>Testing...</p>';
try {
// Try to get user ID from conversation (first user)
const response = await fetch('<?= Config::get('URL') ?>message/getConversationMessages/1');
const text = await response.text();
resultDiv.innerHTML = `
<p><strong>Status:</strong> ${response.status}</p>
<p><strong>Headers:</strong> ${response.headers.get('content-type')}</p>
<p><strong>Response:</strong></p>
<pre style="background: #f0f0f0; padding: 10px; overflow-x: auto;">${text}</pre>
`;
} catch (error) {
resultDiv.innerHTML = `<p style="color: red;">Error: ${error.message}</p>`;
}
}
async function testSendGlobalMessage() {
const resultDiv = document.getElementById('result3');
resultDiv.innerHTML = '<p>Testing...</p>';
try {
const response = await fetch('<?= Config::get('URL') ?>message/sendToGlobal', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'X-Requested-With': 'XMLHttpRequest'
},
body: 'message=Test message from test script'
});
const text = await response.text();
resultDiv.innerHTML = `
<p><strong>Status:</strong> ${response.status}</p>
<p><strong>Headers:</strong> ${response.headers.get('content-type')}</p>
<p><strong>Response:</strong></p>
<pre style="background: #f0f0f0; padding: 10px; overflow-x: auto;">${text}</pre>
`;
} catch (error) {
resultDiv.innerHTML = `<p style="color: red;">Error: ${error.message}</p>`;
}
}
async function testSendConversationMessage() {
const resultDiv = document.getElementById('result4');
resultDiv.innerHTML = '<p>Testing...</p>';
try {
const response = await fetch('<?= Config::get('URL') ?>message/reply', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'X-Requested-With': 'XMLHttpRequest'
},
body: 'receiver_id=1&message=Test message from test script'
});
const text = await response.text();
resultDiv.innerHTML = `
<p><strong>Status:</strong> ${response.status}</p>
<p><strong>Headers:</strong> ${response.headers.get('content-type')}</p>
<p><strong>Response:</strong></p>
<pre style="background: #f0f0f0; padding: 10px; overflow-x: auto;">${text}</pre>
`;
} catch (error) {
resultDiv.innerHTML = `<p style="color: red;">Error: ${error.message}</p>`;
}
}
</script>
</body>
</html>