mirror of
https://github.com/hedgedoc/hedgedoc.git
synced 2024-10-19 13:50:15 -04:00
Merge pull request #428 from dalcde/cookies
This commit is contained in:
commit
244a5a937e
5 changed files with 35 additions and 14 deletions
|
@ -1594,7 +1594,8 @@ function toggleNightMode () {
|
||||||
store.set('nightMode', !isActive)
|
store.set('nightMode', !isActive)
|
||||||
} else {
|
} else {
|
||||||
Cookies.set('nightMode', !isActive, {
|
Cookies.set('nightMode', !isActive, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,11 +19,13 @@ export function resetCheckAuth () {
|
||||||
|
|
||||||
export function setLoginState (bool, id) {
|
export function setLoginState (bool, id) {
|
||||||
Cookies.set('loginstate', bool, {
|
Cookies.set('loginstate', bool, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
if (id) {
|
if (id) {
|
||||||
Cookies.set('userid', id, {
|
Cookies.set('userid', id, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
Cookies.remove('userid')
|
Cookies.remove('userid')
|
||||||
|
|
|
@ -344,12 +344,14 @@ export default class Editor {
|
||||||
const setType = () => {
|
const setType = () => {
|
||||||
if (this.editor.getOption('indentWithTabs')) {
|
if (this.editor.getOption('indentWithTabs')) {
|
||||||
Cookies.set('indent_type', 'tab', {
|
Cookies.set('indent_type', 'tab', {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
type.text('Tab Size:')
|
type.text('Tab Size:')
|
||||||
} else {
|
} else {
|
||||||
Cookies.set('indent_type', 'space', {
|
Cookies.set('indent_type', 'space', {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
type.text('Spaces:')
|
type.text('Spaces:')
|
||||||
}
|
}
|
||||||
|
@ -360,11 +362,13 @@ export default class Editor {
|
||||||
var unit = this.editor.getOption('indentUnit')
|
var unit = this.editor.getOption('indentUnit')
|
||||||
if (this.editor.getOption('indentWithTabs')) {
|
if (this.editor.getOption('indentWithTabs')) {
|
||||||
Cookies.set('tab_size', unit, {
|
Cookies.set('tab_size', unit, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
Cookies.set('space_units', unit, {
|
Cookies.set('space_units', unit, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
widthLabel.text(unit)
|
widthLabel.text(unit)
|
||||||
|
@ -432,7 +436,8 @@ export default class Editor {
|
||||||
const setKeymapLabel = () => {
|
const setKeymapLabel = () => {
|
||||||
var keymap = this.editor.getOption('keyMap')
|
var keymap = this.editor.getOption('keyMap')
|
||||||
Cookies.set('keymap', keymap, {
|
Cookies.set('keymap', keymap, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
label.text(keymap)
|
label.text(keymap)
|
||||||
this.restoreOverrideEditorKeymap()
|
this.restoreOverrideEditorKeymap()
|
||||||
|
@ -480,7 +485,8 @@ export default class Editor {
|
||||||
}
|
}
|
||||||
this.editor.setOption('theme', theme)
|
this.editor.setOption('theme', theme)
|
||||||
Cookies.set('theme', theme, {
|
Cookies.set('theme', theme, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
|
|
||||||
checkTheme()
|
checkTheme()
|
||||||
|
@ -525,7 +531,8 @@ export default class Editor {
|
||||||
this.editor.setOption('mode', mode)
|
this.editor.setOption('mode', mode)
|
||||||
}
|
}
|
||||||
Cookies.set('spellcheck', mode === 'spell-checker', {
|
Cookies.set('spellcheck', mode === 'spell-checker', {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
|
|
||||||
checkSpellcheck()
|
checkSpellcheck()
|
||||||
|
@ -570,7 +577,8 @@ export default class Editor {
|
||||||
)
|
)
|
||||||
if (overrideBrowserKeymap.is(':checked')) {
|
if (overrideBrowserKeymap.is(':checked')) {
|
||||||
Cookies.set('preferences-override-browser-keymap', true, {
|
Cookies.set('preferences-override-browser-keymap', true, {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
this.restoreOverrideEditorKeymap()
|
this.restoreOverrideEditorKeymap()
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -25,7 +25,8 @@ $('select.ui-locale option[value="' + lang + '"]').attr('selected', 'selected')
|
||||||
|
|
||||||
locale.change(function () {
|
locale.change(function () {
|
||||||
Cookies.set('locale', $(this).val(), {
|
Cookies.set('locale', $(this).val(), {
|
||||||
expires: 365
|
expires: 365,
|
||||||
|
sameSite: 'strict'
|
||||||
})
|
})
|
||||||
window.location.reload()
|
window.location.reload()
|
||||||
})
|
})
|
||||||
|
|
|
@ -63,8 +63,15 @@ if (config.useSSL) {
|
||||||
server = http.createServer(app)
|
server = http.createServer(app)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// if we manage to provide HTTPS domains, but don't provide TLS ourselves
|
||||||
|
// obviously a proxy is involded. In order to make sure express is aware of
|
||||||
|
// this, we provide the option to trust proxies here.
|
||||||
|
if (!config.useSSL && config.protocolUseSSL) {
|
||||||
|
app.set('trust proxy', 1)
|
||||||
|
}
|
||||||
|
|
||||||
// socket io
|
// socket io
|
||||||
const io = SocketIO(server)
|
const io = SocketIO(server, { cookie: false })
|
||||||
io.engine.ws = new WebSocket.Server({
|
io.engine.ws = new WebSocket.Server({
|
||||||
noServer: true,
|
noServer: true,
|
||||||
perMessageDeflate: false
|
perMessageDeflate: false
|
||||||
|
@ -181,7 +188,9 @@ app.use(session({
|
||||||
saveUninitialized: true, // always create session to ensure the origin
|
saveUninitialized: true, // always create session to ensure the origin
|
||||||
rolling: true, // reset maxAge on every response
|
rolling: true, // reset maxAge on every response
|
||||||
cookie: {
|
cookie: {
|
||||||
maxAge: config.sessionLife
|
maxAge: config.sessionLife,
|
||||||
|
sameSite: 'lax',
|
||||||
|
secure: config.useSSL || config.protocolUseSSL || false
|
||||||
},
|
},
|
||||||
store: sessionStore
|
store: sessionStore
|
||||||
}))
|
}))
|
||||||
|
|
Loading…
Reference in a new issue