# WebSSO configuration for PHPBB
The following attributes must be added to apache configuration
```
**forum-front.js** |
``` // Script to remove user & password from front page // debug ("***********************************************************************"); account = secretStore.getAccount("ldap"); debug ("Account = "+account); debug ("***********************************************************************"); user = document.getElementById("username"); if (user != undefined) { fieldset = user.parentNode; children = fieldset.childNodes; for (i = 0; i < 6; i++) { children.item(i).setAttribute("style", "display:none"); } if (account != undefined) { user.setAttribute("value", account); user.setAttribute("readonly", true); user.setAttribute("style", ""); } fieldset.setAttribute("style", "display:none"); } // Change login button anchors = document.getElementsByTagName("a"); for (i = 0 ; i < anchors.length; i++) { if (/.*\/ucp.php\?mode=login.*/.test(anchors.item(i).getAttribute("href"))) { anchors.item(i).setText("Login / Register"); } } ``` |
**forum-ucp.js** |
``` // Script to perform login / logout actions // account = secretStore.getAccount("ldap"); if (request.params["mode"] == "login") { user = document.getElementById("username"); account = secretStore.getAccount("ldap"); if (user != undefined) { user.setAttribute("value", account); user.setAttribute("readonly", true); pass = document.getElementById("password"); fieldset = pass.parentNode; dl = fieldset.parentNode; dl.setAttribute("style", "display:none"); div = dl.parentNode; login = div.childNodes.item(4).childNodes.item(2).childNodes.item(2); login.setAttribute("id", "loginButtonToClick"); body=document.getElementsByTagName("body").item(0); div = body.addChild("div"); div.setAttribute("style", "width: 90%; height: 90%; position: absolute; top: 5%; left: 5%; z-index: +10; background-color: #7F9FC2; color: white; opacity: 0.9; display: table-cell; text-align: center; vertical-align: middle; line-height: 90px; font-size: 250%; "); div2 = div.addChild("div"); div2.setAttribute("style", "width: 100%; height: 40%;"); div.addChild("span").setText ("Logging in. Please wait ...."); script = body.addChild("script"); script.setAttribute("type", "text/javascript"); script.setText("onload_functions.push('document.getElementById(\\'loginButtonToClick\\').click();');"); } } if (request.params["mode"] == "logout") { logout (); } if (request.params["mode"] == "reg_details") { // Remove change details link fieldsets=document.getElementsByTagName("fieldset"); for (i = 0; i < fieldsets.length; i++) { fieldsets.item(i).setAttribute("style", "visible: false;"); fieldsets.item(i).remove(); } } ``` |
**forum-posting.js** |
``` // Script to perform login on post // user = document.getElementById("username"); if (user != undefined) { if (secretStore != undefined) { account = secretStore.getAccount("soffid.org-ldap"); user.setAttribute("value", account); } user.setAttribute("readonly", true); pass = document.getElementById("password"); fieldset = pass.parentNode; dl = fieldset.parentNode; dl.setAttribute("style", "display:none"); div = dl.parentNode; login = div.childNodes.item(4).childNodes.item(2).childNodes.item(1); login.setAttribute("id", "loginButtonToClick"); body=document.getElementsByTagName("body").item(0); div = body.addChild("div"); div.setAttribute("style", "width: 90%; height: 90%; position: absolute; top: 5%; left: 5%; z-index: +10; background-color: #7F9FC2; color: white; opacity: 0.9; display: table-cell; text-align: center; vertical-align: middle; line-height: 90px; font-size: 250%; "); div2 = div.addChild("div"); div2.setAttribute("style", "width: 100%; height: 40%;"); div.addChild("span").setText ("Logging in. Please wait ...."); // body.setAttribute("onLoad", "document.forms[1].submit()"); script = body.addChild("script"); script.setAttribute("type", "text/javascript"); script.setText("onload_functions.push('document.getElementById(\\'loginButtonToClick\\').click();');"); } ``` |