
\section{Änderungen zum Pflichtenheft}

Im Folgenden werden die Änderungen zum Pflichtenheft aufgelistet.
Hierbei handelt es sich um neue Kriterien, Kriterien die wegfallen und Kriterien die modifiziert wurden.

\subsection{Neue Kriterien}

\subsubsection{Cooldown Fetch-Vorgang}
\begin{description}
    \item[\textcolor{Green}{\textlangle RS11\textrangle}] \textcolor{Green}{Wenn ein Nuter ein \Gls{abo} oder eine \Gls{episode} eines \Gls{abo} hinzugefügt hat, welche noch nicht 
    in der \Gls{db} vorhanden ist, werden die Daten vom entsprechenden Server gefetched. Bis eine weitere fetch-Anfrage 
    zum selben \Gls{abo} gestartet wird, wird ein Cooldown von einer Stunde abgewartet. 
    Das hilft dabei DoS Angriffe zu vermeiden, da der Server damit nicht durch zu viele Fetch-Anfragen überlastet 
    werden kann.}
\end{description}
    
\subsubsection{Sprache von Browserinformationen übernehmen} 
\begin{description}
    \item[\textcolor{Green}{\textlangle RC13\textrangle}] \textcolor{Green}{Betritt ein Nutzer zum ersten Mal die Webseite, ruft ein Skript die Browserdaten zur eingestellten Sprache ab.
	Die Sprache wird im localStorage gespeichert und ruft entsprechend die Webseite in der jeweiligen Sprache auf.
	Ändert der Nutzer die Sprache, so wird dies durch eine Änderung der Sprachvariable im localStorage festgehalten. }
\end{description}
    
\subsection{Abgeänderte Kriterien}

    \subsubsection{Sessionspeicherung mit JWT}

    \begin{description}
        \item[\textlangle RS10\textrangle]  Im Webfrontend angemeldete Benutzer bleiben dort angemeldet. 
        Hierfür wird ein \Gls{session-token} in einem \Gls{cookie} gespeichert.
        \textcolor{blue}{Als \Gls{session-token} wird ein \Gls{json} Web Token verwendet. 
        Dieser Token wird für die Authentifikation genutzt.}
    \end{description}

\subsection{Entfernte Kriterien}

    \begin{description}
        \item[\textlangle RC5\textrangle] 
        \textcolor{red}{\sout{Die Weboberfläche ist kompatibel mit beliebigen \Glspl{gpodder}.}}
    \end{description}
