mirror of
https://github.com/mCaptcha/mCaptcha.git
synced 2026-02-12 18:45:41 +00:00
Deploying to gh-pages from @ 5c4435430f 🚀
This commit is contained in:
@@ -140,8 +140,24 @@
|
||||
<span id="137">137</span>
|
||||
<span id="138">138</span>
|
||||
<span id="139">139</span>
|
||||
<span id="140">140</span>
|
||||
</pre><div class="example-wrap"><pre class="rust ">
|
||||
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">io</span>::{<span class="ident">Error</span> <span class="kw">as</span> <span class="ident">IOError</span>, <span class="ident">ErrorKind</span> <span class="kw">as</span> <span class="ident">IOErrorKind</span>};
|
||||
<span class="comment">/*
|
||||
* Copyright (C) 2021 Aravinth Manivannan <realaravinth@batsense.net>
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
*/</span>
|
||||
|
||||
<span class="kw">use</span> <span class="ident">actix_web</span>::{
|
||||
<span class="ident">dev</span>::<span class="ident">HttpResponseBuilder</span>,
|
||||
@@ -154,7 +170,7 @@
|
||||
|
||||
<span class="kw">use</span> <span class="ident">derive_more</span>::{<span class="ident">Display</span>, <span class="ident">Error</span>};
|
||||
<span class="kw">use</span> <span class="ident">log</span>::<span class="ident">debug</span>;
|
||||
<span class="kw">use</span> <span class="ident">serde</span>::<span class="ident">Serialize</span>;
|
||||
<span class="kw">use</span> <span class="ident">serde</span>::{<span class="ident">Deserialize</span>, <span class="ident">Serialize</span>};
|
||||
<span class="comment">// use validator::ValidationErrors;</span>
|
||||
|
||||
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">convert</span>::<span class="ident">From</span>;
|
||||
@@ -166,14 +182,11 @@
|
||||
<span class="ident">InternalServerError</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"The value you entered for email is not an email"</span>)]</span> <span class="comment">//405j</span>
|
||||
<span class="ident">NotAnEmail</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"File not found"</span>)]</span>
|
||||
<span class="ident">FileNotFound</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"File exists"</span>)]</span>
|
||||
<span class="ident">FileExists</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Permission denied"</span>)]</span>
|
||||
<span class="ident">PermissionDenied</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Invalid credentials"</span>)]</span>
|
||||
<span class="ident">InvalidCredentials</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Wrong password"</span>)]</span>
|
||||
<span class="ident">WrongPassword</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Username not found"</span>)]</span>
|
||||
<span class="ident">UsernameNotFound</span>,
|
||||
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Authorization required"</span>)]</span>
|
||||
<span class="ident">AuthorizationRequired</span>,
|
||||
|
||||
@@ -194,15 +207,16 @@
|
||||
<span class="doccomment">/// when the value passed contains profainity</span>
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Username not available"</span>)]</span>
|
||||
<span class="ident">UsernameTaken</span>,
|
||||
<span class="doccomment">/// when a question is already answered</span>
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Already answered"</span>)]</span>
|
||||
<span class="ident">AlreadyAnswered</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Passsword too short"</span>)]</span>
|
||||
<span class="ident">PasswordTooShort</span>,
|
||||
<span class="attribute">#[<span class="ident">display</span>(<span class="ident">fmt</span> <span class="op">=</span> <span class="string">"Username too long"</span>)]</span>
|
||||
<span class="ident">PasswordTooLong</span>,
|
||||
}
|
||||
|
||||
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Serialize</span>)]</span>
|
||||
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Serialize</span>, <span class="ident">Deserialize</span>)]</span>
|
||||
<span class="attribute">#[<span class="ident">cfg</span>(<span class="ident">not</span>(<span class="ident">tarpaulin_include</span>))]</span>
|
||||
<span class="kw">struct</span> <span class="ident">ErrorToResponse</span> {
|
||||
<span class="ident">error</span>: <span class="ident">String</span>,
|
||||
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">ErrorToResponse</span> {
|
||||
<span class="kw">pub</span> <span class="ident">error</span>: <span class="ident">String</span>,
|
||||
}
|
||||
|
||||
<span class="kw">impl</span> <span class="ident">ResponseError</span> <span class="kw">for</span> <span class="ident">ServiceError</span> {
|
||||
@@ -218,28 +232,15 @@
|
||||
<span class="kw">match</span> <span class="kw-2">*</span><span class="self">self</span> {
|
||||
<span class="ident">ServiceError</span>::<span class="ident">InternalServerError</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">INTERNAL_SERVER_ERROR</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">NotAnEmail</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">FileNotFound</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">NOT_FOUND</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">FileExists</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">METHOD_NOT_ALLOWED</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">PermissionDenied</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">UNAUTHORIZED</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">InvalidCredentials</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">UNAUTHORIZED</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">WrongPassword</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">UNAUTHORIZED</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">UsernameNotFound</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">UNAUTHORIZED</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">AuthorizationRequired</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">UNAUTHORIZED</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">ProfainityError</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">BlacklistError</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">PasswordTooShort</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">PasswordTooLong</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">UsernameCaseMappedError</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">UsernameTaken</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
<span class="ident">ServiceError</span>::<span class="ident">AlreadyAnswered</span> <span class="op">=</span><span class="op">></span> <span class="ident">StatusCode</span>::<span class="ident">BAD_REQUEST</span>,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
<span class="kw">impl</span> <span class="ident">From</span><span class="op"><</span><span class="ident">IOError</span><span class="op">></span> <span class="kw">for</span> <span class="ident">ServiceError</span> {
|
||||
<span class="kw">fn</span> <span class="ident">from</span>(<span class="ident">e</span>: <span class="ident">IOError</span>) <span class="op">-</span><span class="op">></span> <span class="ident">ServiceError</span> {
|
||||
<span class="macro">debug</span><span class="macro">!</span>(<span class="string">"{:?}"</span>, <span class="kw-2">&</span><span class="ident">e</span>);
|
||||
<span class="kw">match</span> <span class="ident">e</span>.<span class="ident">kind</span>() {
|
||||
<span class="ident">IOErrorKind</span>::<span class="ident">NotFound</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">FileNotFound</span>,
|
||||
<span class="ident">IOErrorKind</span>::<span class="ident">PermissionDenied</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">PermissionDenied</span>,
|
||||
<span class="ident">IOErrorKind</span>::<span class="ident">AlreadyExists</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">FileExists</span>,
|
||||
<span class="kw">_</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">InternalServerError</span>,
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -253,7 +254,8 @@
|
||||
<span class="ident">CredsError</span>::<span class="ident">BlacklistError</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">BlacklistError</span>,
|
||||
<span class="ident">CredsError</span>::<span class="ident">NotAnEmail</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">NotAnEmail</span>,
|
||||
<span class="ident">CredsError</span>::<span class="ident">Argon2Error</span>(<span class="kw">_</span>) <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">InternalServerError</span>,
|
||||
<span class="kw">_</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">InternalServerError</span>,
|
||||
<span class="ident">CredsError</span>::<span class="ident">PasswordTooLong</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">PasswordTooLong</span>,
|
||||
<span class="ident">CredsError</span>::<span class="ident">PasswordTooShort</span> <span class="op">=</span><span class="op">></span> <span class="ident">ServiceError</span>::<span class="ident">PasswordTooShort</span>,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user