Merge pull request #351 from openreplay/dev

Chore(release): v1.5.2
This commit is contained in:
Mehdi Osman 2022-02-24 22:32:33 +00:00 committed by GitHub
commit e0410acc4f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 29 additions and 4 deletions

View file

@ -23,9 +23,26 @@ class JWTAuth(HTTPBearer):
or jwt_payload.get("iat") is None or jwt_payload.get("aud") is None \
or not users.auth_exists(user_id=jwt_payload["userId"], tenant_id=jwt_payload["tenantId"],
jwt_iat=jwt_payload["iat"], jwt_aud=jwt_payload["aud"]):
print("JWTAuth: Token issue")
if jwt_payload is not None:
print(jwt_payload)
print(f"JWTAuth: user_id={jwt_payload.get('userId')} tenant_id={jwt_payload.get('tenantId')}")
if jwt_payload is None:
print("JWTAuth: jwt_payload is None")
print(credentials.scheme + " " + credentials.credentials)
if jwt_payload is not None and jwt_payload.get("iat") is None:
print("JWTAuth: iat is None")
if jwt_payload is not None and jwt_payload.get("aud") is None:
print("JWTAuth: aud is None")
if jwt_payload is not None and \
not users.auth_exists(user_id=jwt_payload["userId"], tenant_id=jwt_payload["tenantId"],
jwt_iat=jwt_payload["iat"], jwt_aud=jwt_payload["aud"]):
print("JWTAuth: not users.auth_exists")
raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="Invalid token or expired token.")
user = users.get(user_id=jwt_payload["userId"], tenant_id=jwt_payload["tenantId"])
if user is None:
print("JWTAuth: User not found.")
raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="User not found.")
jwt_payload["authorizer_identity"] = "jwt"
print(jwt_payload)
@ -36,4 +53,5 @@ class JWTAuth(HTTPBearer):
return request.state.currentContext
else:
print("JWTAuth: Invalid authorization code.")
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid authorization code.")

View file

@ -18,7 +18,10 @@ class Notifications extends React.Component {
constructor(props) {
super(props);
props.fetchList();
setTimeout(() => {
props.fetchList();
}, 1000);
setInterval(() => {
props.fetchList();
}, AUTOREFRESH_INTERVAL);

View file

@ -9,16 +9,19 @@ import {
const AUTOREFRESH_INTERVAL = 5 * 60 * 1000;
const weekRange = getDateRangeFromValue(DATE_RANGE_VALUES.LAST_7_DAYS);
let intervalId = null
function ErrorsBadge({ errorsStats = {}, fetchNewErrorsCount }) {
function ErrorsBadge({ errorsStats = {}, fetchNewErrorsCount, projects }) {
useEffect(() => {
if (projects.size === 0 || !!intervalId) return;
const params = { startTimestamp: weekRange.start.unix() * 1000, endTimestamp: weekRange.end.unix() * 1000 };
fetchNewErrorsCount(params)
setInterval(() => {
intervalId = setInterval(() => {
fetchNewErrorsCount(params);
}, AUTOREFRESH_INTERVAL);
}, [])
}, [projects])
return errorsStats.unresolvedAndUnviewed > 0 ? (
<div>{<div className={stl.badge} /> }</div>
@ -27,4 +30,5 @@ function ErrorsBadge({ errorsStats = {}, fetchNewErrorsCount }) {
export default connect(state => ({
errorsStats: state.getIn([ 'errors', 'stats' ]),
projects: state.getIn([ 'site', 'list' ]),
}), { fetchNewErrorsCount })(ErrorsBadge)