let user_id = claims.id;
+ let orig_comment = CommentView::read(&conn, self.edit_id, None)?;
// You are allowed to mark the comment as read even if you're banned.
if self.read.is_none() {
// Verify its the creator or a mod, or an admin
- let orig_comment = CommentView::read(&conn, self.edit_id, None)?;
let mut editors: Vec<i32> = vec![self.creator_id];
editors.append(
&mut CommunityModeratorView::for_community(&conn, orig_comment.community_id)
creator_id: self.creator_id,
removed: self.removed.to_owned(),
read: self.read.to_owned(),
- updated: if self.read.is_some() { None } else {Some(naive_now())}
+ updated: if self.read.is_some() { orig_comment.updated } else {Some(naive_now())}
};
let _updated_comment = match Comment::update(&conn, self.edit_id, &comment_form) {
registerLoading: boolean;
}
-let emptyState: State = {
- loginForm: {
- username_or_email: undefined,
- password: undefined
- },
- registerForm: {
- username: undefined,
- password: undefined,
- password_verify: undefined,
- admin: false,
- },
- loginLoading: false,
- registerLoading: false
-}
export class Login extends Component<any, State> {
private subscription: Subscription;
+ emptyState: State = {
+ loginForm: {
+ username_or_email: undefined,
+ password: undefined
+ },
+ registerForm: {
+ username: undefined,
+ password: undefined,
+ password_verify: undefined,
+ admin: false,
+ },
+ loginLoading: false,
+ registerLoading: false
+ }
+
constructor(props: any, context: any) {
super(props, context);
- this.state = emptyState;
+ this.state = this.emptyState;
this.subscription = WebSocketService.Instance.subject
.pipe(retryWhen(errors => errors.pipe(delay(3000), take(10))))
let op: UserOperation = msgOp(msg);
if (msg.error) {
alert(msg.error);
- this.state.loginLoading = false;
- this.state.registerLoading = false;
+ this.state = this.emptyState;
this.setState(this.state);
return;
} else {