Compare commits

...

9 Commits

Author SHA1 Message Date
NOrtmann1 b7160f4df6 .idea 2026-06-09 15:32:06 +02:00
NOrtmann1 a6b57bc352 Merge branch 'DatabaseArticleManager' into dev 2026-06-09 15:31:59 +02:00
NOrtmann1 70f7e05fe1 Update DatabaseArticleManager.php 2026-06-09 15:30:05 +02:00
NOrtmann1 15f17b7af4 .idea 2026-06-09 15:29:53 +02:00
niklas.ortmann 3c14df129d Create data_sources_history.xml 2026-06-08 12:04:56 +02:00
niklas.ortmann 5660f8d59d .idea 2026-06-08 11:15:42 +02:00
niklas.ortmann 198fefbdf5 Update LocalUserManager.php 2026-06-05 10:35:33 +02:00
niklas.ortmann 135bd7b9cd Update updateArticle.php 2026-06-05 10:33:21 +02:00
niklas.ortmann 4cd0383322 deleteArticle -> Autorisierungsprüfung 2026-06-05 10:31:09 +02:00
9 changed files with 45 additions and 1845 deletions
+18
View File
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="dataSourceStorageLocal" created-in="IU-261.24374.151">
<data-source name="articles" uuid="315cb5c9-2b0f-435b-b602-59823b160908">
<database-info product="SQLite" version="3.51.1" jdbc-version="4.2" driver-name="SQLite JDBC" driver-version="3.51.1.0" dbms="SQLITE" exact-version="3.51.1" exact-driver-version="3.51">
<identifier-quote-string>&quot;</identifier-quote-string>
</database-info>
<case-sensitivity plain-identifiers="mixed" quoted-identifiers="mixed" />
<secret-storage>master_key</secret-storage>
<auth-provider>no-auth</auth-provider>
<schema-mapping>
<introspection-scope>
<node kind="schema" qname="@" />
</introspection-scope>
</schema-mapping>
</data-source>
</component>
</project>
+12
View File
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
<data-source source="LOCAL" name="articles" uuid="315cb5c9-2b0f-435b-b602-59823b160908">
<driver-ref>sqlite.xerial</driver-ref>
<synchronize>true</synchronize>
<jdbc-driver>org.sqlite.JDBC</jdbc-driver>
<jdbc-url>jdbc:sqlite:$PROJECT_DIR$/db/articles</jdbc-url>
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</component>
</project>
File diff suppressed because it is too large Load Diff
@@ -1,2 +0,0 @@
#n:main
!<md> [0, 0, null, null, -2147483648, -2147483648]
+1 -1
View File
@@ -19,7 +19,7 @@
<working-dir>$ProjectFileDir$</working-dir>
</data-source>
</DataSourceFromHistory>
<DataSourceFromHistory isRemovedFromProject="false">
<DataSourceFromHistory isRemovedFromProject="true">
<data-source source="LOCAL" name="articles" uuid="315cb5c9-2b0f-435b-b602-59823b160908">
<database-info product="SQLite" version="3.51.1" jdbc-version="4.2" driver-name="SQLite JDBC" driver-version="3.51.1.0" dbms="SQLITE" exact-version="3.51.1" exact-driver-version="3.51">
<identifier-quote-string>&quot;</identifier-quote-string>
+5
View File
@@ -58,6 +58,11 @@ include_once 'php/controller/showArticle-controller.php';
Sie sind nicht berechtigt, diesen Beitrag zu bearbeiten.
</p>
<?php endif; ?>
<?php if (isset($_SESSION["message"]) && $_SESSION["message"] == "not_found_article"): ?>
<p class="alert-message is-error">
Der zu bearbeitende Artikel wurde nicht gefunden. Bitte versuche es erneut.
</p>
<?php endif; ?>
<?php
unset($_SESSION["message"]);
?>
+2 -4
View File
@@ -20,10 +20,8 @@ class DatabaseArticleManager implements ArticleManagerDAO {
{
if (!file_exists(__DIR__ . '/../../db/articles.db')) {
try {
$user = 'root';
$pw = null;
$dsn = 'sqlite:' . __DIR__ . '/../../db/articles.db';
$db = new PDO($dsn, $user, $pw);
$db = $this->getConnection();
$db->exec("
CREATE TABLE articles (
+2 -2
View File
@@ -66,7 +66,7 @@ class LocalArticleManager implements ArticleManagerDAO {
public function updateArticle($id, $article, $author)
{
if (empty($article)) {
throw new InternalServerErrorException("internal_error");
throw new NotFoundException("not_found_article");
}
// Berechtigungsprüfung:
@@ -208,7 +208,7 @@ class LocalArticleManager implements ArticleManagerDAO {
}
}
return $filteredArticles;
return $filteredArticles;
}
public function getArticlesByCategory($category)
+2
View File
@@ -162,6 +162,8 @@ class LocalUserManager implements UserManagerDAO {
/**
* Löscht einen Benutzer anhand seiner E-Mail-Adresse.
*
* TODO: wenn ein Benutzer gelöscht wird, sollten dann auch seine Beiträge gelöscht werden?
*
* @param string $email E-Mail-Adresse des zu löschenden Benutzers
* @return bool true, wenn der Benutzer gelöscht wurde, sonst false
* @throws RuntimeException wenn die Benutzerdaten nicht gelesen oder gespeichert werden können