First attempt at making a logout feature

This commit is contained in:
harshil05133 2025-02-17 20:40:43 -05:00
parent 96234dff7b
commit f5598fdb4e
8 changed files with 30 additions and 4 deletions

View file

@ -644,7 +644,7 @@
"right": [ "right": [
["importexport", "timeslider", "savedrevision"], ["importexport", "timeslider", "savedrevision"],
["settings", "embed"], ["settings", "embed"],
["showusers", "gohome"] ["showusers", "gohome", "logout"]
], ],
"timeslider": [ "timeslider": [
["timeslider_export", "timeslider_returnToPad"] ["timeslider_export", "timeslider_returnToPad"]

View file

@ -643,7 +643,7 @@
"right": [ "right": [
["importexport", "timeslider", "savedrevision"], ["importexport", "timeslider", "savedrevision"],
["settings", "embed"], ["settings", "embed"],
["showusers", "gohome"] ["showusers", "gohome", "logout"]
], ],
"timeslider": [ "timeslider": [
["timeslider_export", "timeslider_returnToPad"] ["timeslider_export", "timeslider_returnToPad"]

View file

@ -55,6 +55,7 @@
"pad.toolbar.embed.title": "Share and Embed this pad", "pad.toolbar.embed.title": "Share and Embed this pad",
"pad.toolbar.showusers.title": "Show the users on this pad", "pad.toolbar.showusers.title": "Show the users on this pad",
"pad.toolbar.gohome.title": "Go Home", "pad.toolbar.gohome.title": "Go Home",
"pad.toolbar.logout.title": "Logout",
"pad.colorpicker.save": "Save", "pad.colorpicker.save": "Save",

View file

@ -247,7 +247,7 @@ exports.toolbar = {
right: [ right: [
['importexport', 'timeslider', 'savedrevision'], ['importexport', 'timeslider', 'savedrevision'],
['settings', 'embed'], ['settings', 'embed'],
['showusers', 'gohome'], ['showusers', 'gohome', 'logout'],
], ],
timeslider: [ timeslider: [
['timeslider_export', 'timeslider_settings', 'timeslider_returnToPad'], ['timeslider_export', 'timeslider_settings', 'timeslider_returnToPad'],

View file

@ -247,6 +247,12 @@ module.exports = {
class: 'buttonicon buttonicon-gohome', class: 'buttonicon buttonicon-gohome',
}, },
logout:{
command: 'logout',
localizationId: 'pad.toolbar.logout.title',
class: 'buttonicon buttonicon-logout',
},
timeslider_export: { timeslider_export: {
command: 'import_export', command: 'import_export',
localizationId: 'timeslider.toolbar.exportlink.title', localizationId: 'timeslider.toolbar.exportlink.title',

View file

@ -77,6 +77,9 @@
.buttonicon-gohome:before { .buttonicon-gohome:before {
content: "\e80b"; /* Assuming \e80b is the Unicode for the home icon */ content: "\e80b"; /* Assuming \e80b is the Unicode for the home icon */
} }
.buttonicon-logout:before {
content: "\e800"; /* Assuming \e800 is the Unicode for the logout icon */
}
.buttonicon-savedRevision:before { .buttonicon-savedRevision:before {
content: "\e856"; content: "\e856";
} }

View file

@ -392,6 +392,17 @@ exports.padeditbar = new class {
window.location.href = '/'; window.location.href = '/';
}); });
this.registerCommand('logout', () => {
console.log('Logout button clicked');
// Clear session or authentication token
fetch('/logout', { method: 'POST' })
.then(response => {
if (response.ok) {
window.location.href = '/'; // Redirect to the home page
}
});
});
this.registerCommand('embed', () => { this.registerCommand('embed', () => {
this.setEmbedLinks(); this.setEmbedLinks();
this.toggleDropDown('embed'); this.toggleDropDown('embed');

View file

@ -79,7 +79,12 @@
<li data-type="button" data-key="embed"><a class="grouped-right" data-l10n-id="pad.toolbar.embed.title"><button class=" buttonicon buttonicon-embed" data-l10n-id="pad.toolbar.embed.title"></button></a></li><li class="separator"></li><li data-type="button" data-key="showusers"><a class="" data-l10n-id="pad.toolbar.showusers.title"><button class=" buttonicon buttonicon-showusers" data-l10n-id="pad.toolbar.showusers.title"></button></a></li> <li data-type="button" data-key="embed"><a class="grouped-right" data-l10n-id="pad.toolbar.embed.title"><button class=" buttonicon buttonicon-embed" data-l10n-id="pad.toolbar.embed.title"></button></a></li><li class="separator"></li><li data-type="button" data-key="showusers"><a class="" data-l10n-id="pad.toolbar.showusers.title"><button class=" buttonicon buttonicon-showusers" data-l10n-id="pad.toolbar.showusers.title"></button></a></li>
<li data-type="button" data-key="gohome"> <li data-type="button" data-key="gohome">
<a class="grouped_middle" data-l10n-id="pad.toolbar.gohome.title"> <a class="grouped_middle" data-l10n-id="pad.toolbar.gohome.title">
<button class="buttonicon buttonicon-gohome" data-l10n-id="pad.toolbar.gohome.title"></button> <button class="buttonicon buttonicon-gohome" data-l10n-id="pad.toolbar.gohome.title" title="Go Home"></button>
</a>
</li>
<li data-type="button" data-key="logout">
<a class="grouped-right" data-l10n-id="pad.toolbar.logout.title">
<button class="buttonicon buttonicon-logout" data-l10n-id="pad.toolbar.logout.title" title="Logout"></button>
</a> </a>
</li> </li>