diff --git a/client/security.js b/client/security.js
deleted file mode 100644
index c2bce58..0000000
--- a/client/security.js
+++ /dev/null
@@ -1,213 +0,0 @@
-
-/*
- * Federated Wiki : Social Security Plugin
- *
- * Licensed under the MIT license.
- * https://github.com/fedwiki/wiki-security-social/blob/master/LICENSE.txt
- */
-
-
-/*
-1. Display login button - if there is no authenticated user
-2. Display logout button - if the user is authenticated
-
-3. When user authenticated, claim site if unclaimed - and repaint footer.
- */
-
-(function() {
- var WinChan, claim_wiki, settings, setup, update_footer;
-
- WinChan = require('./winchan.js');
-
- settings = {};
-
- claim_wiki = function() {
- var myInit;
- if (!isClaimed) {
- myInit = {
- method: 'GET',
- cache: 'no-cache',
- mode: 'same-origin',
- credentials: 'include'
- };
- return fetch('/auth/claim-wiki', myInit).then(function(response) {
- if (response.ok) {
- return response.json().then(function(json) {
- var ownerName;
- if (wiki.lineup.bestTitle() === 'Login Required') {
- return location.reload();
- } else {
- ownerName = json.ownerName;
- window.isClaimed = true;
- window.isOwner = true;
- return update_footer(ownerName, true);
- }
- });
- } else {
- return console.log('Attempt to claim site failed', response);
- }
- });
- }
- };
-
- update_footer = function(ownerName, isAuthenticated) {
- var logoutIconClass, logoutTitle, signonTitle;
- if (ownerName) {
- $('footer > #site-owner').html("Site Owned by: " + ownerName + "");
- }
- $('footer > #security').empty();
- if (isAuthenticated) {
- if (isOwner) {
- logoutTitle = "Sign-out";
- logoutIconClass = 'fa fa-unlock fa-lg fa-fw';
- } else {
- logoutTitle = "Not Owner : Sign-out";
- logoutIconClass = 'fa fa-lock fa-lg fa-fw notOwner';
- }
- $('footer > #security').append("");
- $('footer > #security > #logout').on('click', function(e) {
- var myInit;
- e.preventDefault();
- myInit = {
- method: 'GET',
- cache: 'no-cache',
- mode: 'same-origin',
- credentials: 'include'
- };
- return fetch('/logout', myInit).then(function(response) {
- var user;
- if (response.ok) {
- window.isAuthenticated = false;
- user = '';
- document.cookie = "state=loggedOut" + ";domain=." + settings.cookieDomain + "; path=/; max-age=60; sameSite=Strict;";
- return update_footer(ownerName, isAuthenticated);
- } else {
- return console.log('logout failed: ', response);
- }
- });
- });
- if (!isClaimed) {
- $('footer > #security').append("");
- return $('footer > #security > #claim').on('click', function(e) {
- e.preventDefault();
- return claim_wiki();
- });
- }
- } else {
- if (!isClaimed) {
- signonTitle = 'Claim this Wiki';
- } else {
- signonTitle = 'Wiki Owner Sign-on';
- }
- $('footer > #security').append("");
- return $('footer > #security > #show-security-dialog').on('click', function(e) {
- var w;
- e.preventDefault();
- document.cookie = ("wikiName=" + window.location.host) + (";domain=." + settings.cookieDomain + "; path=/; max-age=300; sameSite=Strict;");
- return w = WinChan.open({
- url: settings.dialogURL,
- relay_url: settings.relayURL,
- window_features: "menubar=0, location=0, resizable=0, scrollbars=1, status=0, dialog=1, width=700, height=375",
- params: {}
- }, function(err, r) {
- if (err) {
- return console.log(err);
- } else {
- window.isAuthenticated = true;
- if (!isClaimed) {
- return claim_wiki();
- } else {
- if (wiki.lineup.bestTitle() === 'Login Required') {
- return location.reload();
- } else {
- return update_footer(ownerName, true);
- }
- }
- }
- });
- });
- }
- };
-
- setup = function(user) {
- var lastCookie, myInit;
- if (!$("link[href='https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css']").length) {
- $('').appendTo("head");
- }
- lastCookie = document.cookie;
- window.setInterval(function() {
- var currentCookie, myInit;
- currentCookie = document.cookie;
- if (currentCookie !== lastCookie) {
- console.log("Cookie changed");
- if (document.cookie.match('(?:^|;)\\s?state=(.*?)(?:;|$)') !== null) {
- try {
- switch (document.cookie.match('(?:^|;)\\s?state=(.*?)(?:;|$)')[1]) {
- case 'loggedIn':
- window.isAuthenticated = true;
- break;
- case 'loggedOut':
- window.isAuthenticated = false;
- }
- myInit = {
- method: 'GET',
- cache: 'no-cache',
- mode: 'same-origin'
- };
- fetch('/auth/client-settings.json', myInit).then(function(response) {
- return response.json().then(function(json) {
- window.isOwner = json.isOwner;
- return update_footer(ownerName, isAuthenticated);
- });
- });
- } catch (error) {}
- }
- return lastCookie = currentCookie;
- }
- }, 100);
- if (!$("link[href='/security/style.css']").length) {
- $('').appendTo("head");
- }
- myInit = {
- method: 'GET',
- cache: 'no-cache',
- mode: 'same-origin'
- };
- return fetch('/auth/client-settings.json', myInit).then(function(response) {
- if (response.ok) {
- return response.json().then(function(json) {
- var dialogHost, dialogProtocol;
- window.isOwner = json.isOwner;
- settings = json;
- if (settings.wikiHost) {
- dialogHost = settings.wikiHost;
- } else {
- dialogHost = window.location.hostname;
- }
- settings.cookieDomain = dialogHost;
- if (settings.useHttps) {
- dialogProtocol = 'https:';
- } else {
- dialogProtocol = window.location.protocol;
- if (window.location.port) {
- dialogHost = dialogHost + ':' + window.location.port;
- }
- }
- settings.dialogURL = dialogProtocol + '//' + dialogHost + '/auth/loginDialog';
- settings.relayURL = dialogProtocol + '//' + dialogHost + '/auth/relay.html';
- settings.dialogAddAltURL = dialogProtocol + '//' + dialogHost + '/auth/addAuthDialog';
- return update_footer(ownerName, isAuthenticated);
- });
- } else {
- return console.log('Unable to fetch client settings: ', response);
- }
- });
- };
-
- window.plugins.security = {
- setup: setup,
- claim_wiki: claim_wiki,
- update_footer: update_footer
- };
-
-}).call(this);