This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from collections import namedtuple | |
def http_response_namedtuple_converter(user_function): | |
def tuple_to_namedtuple_http_response(result): | |
HttpNamedTupleResponse = namedtuple("HttpNamedTupleResponse", ["message", "status_code"]) | |
converted_result = HttpNamedTupleResponse(*result) | |
return user_function(converted_result) | |
return tuple_to_namedtuple_http_response |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@http_response_namedtuple_converter | |
def http_response_checker(result): | |
if result.status_code == HTTPStatus.NOT_FOUND: | |
result = http_not_found_status_checker(result) | |
#... more 'if' here | |
return result | |
@http_response_namedtuple_converter | |
def http_not_found_status_checker(result): | |
if result.message == messages.WRONG_USERNAME_OR_PASSWORD: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def http_response_checker(result): | |
if result[1] == HTTPStatus.NOT_FOUND: | |
result = http_not_found_status_checker(result) | |
# ... more 'if' here ... | |
return result | |
def http_not_found_status_checker(result): | |
if result[0] == messages.WRONG_USERNAME_OR_PASSWORD | |
return messages.WRONG_USERNAME_OR_PASSWORD, HTTPStatus.UNAUTHORIZED | |
# ... more 'if' here ... |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React, {createContext, useEffect, useState} from "react"; | |
import Cookies from "js-cookie"; | |
export const AuthContext = createContext({ | |
user: null, isAuth: false, login: () => { | |
}, logout: () => { | |
} | |
}); | |
function AuthProvider({ children }) { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React from "react"; | |
import { BrowserRouter as Router, Switch, Route } from "react-router-dom"; | |
import Home from "./Home"; | |
import Login from "./Login"; | |
import MySpace from "./MySpace"; | |
import ProtectedRoute from "./ProtectedRoute"; | |
import Navigation from "./Navigation"; | |
import AuthProvider from "./AuthContext"; | |
export default function Routes() { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React, { useContext } from "react"; | |
import { Route, Redirect } from "react-router-dom"; | |
import { AuthContext } from "./AuthContext"; | |
export default function ProtectedRoute({ children, ...rest }) { | |
const { isAuth } = useContext(AuthContext); | |
return ( | |
<Route | |
{...rest} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
@classmethod | |
@users_ns.doc("create_user_additional_info") | |
@users_ns.response( | |
HTTPStatus.CREATED, f"{messages.ADDITIONAL_INFO_SUCCESSFULLY_CREATED}" | |
) | |
@users_ns.response( | |
HTTPStatus.BAD_REQUEST, | |
f"{messages.USER_ID_IS_NOT_VALID}\n" | |
f"{messages.IS_ORGANIZATION_REP_FIELD_IS_MISSING}\n" | |
f"{messages.TIMEZONE_FIELD_IS_MISSING}" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export default function AdditionalInfo() { | |
const [responseMessage, setResponseMessage] = useState(null); | |
const [additionalInfo, setAdditionalInfo] = useState({}); | |
const { access_token, user } = useContext(AuthContext); | |
const [isValidPhone, setIsValidPhone] = useState(true); | |
const [isValidMobile, setIsValidMobile] = useState(true); | |
const requestAdditionalInfo = { | |
method: "GET", | |
headers: { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//... | |
@classmethod | |
@users_ns.doc("update_user_additional_info") | |
@users_ns.response( | |
HTTPStatus.OK, f"{messages.ADDITIONAL_INFO_SUCCESSFULLY_UPDATED}" | |
) | |
@users_ns.response( | |
HTTPStatus.CREATED, f"{messages.ADDITIONAL_INFO_SUCCESSFULLY_CREATED}" | |
) |
OlderNewer