require enabling Google Sign-In from conf.json

auto-build-api-doc-with-code
Moe 2021-04-03 10:01:10 -07:00
parent 74f9f28070
commit faf3e3b221
2 changed files with 30 additions and 15 deletions

View File

@ -26,7 +26,9 @@ module.exports = function(s,config,lang,app,io){
twoFactorVerification,
ldapLogin,
} = require('./auth/utils.js')(s,config,lang)
const googleAuth = require('./auth/google.js')(s,config,lang)
if(config.allowGoogleSignOn){
require('./auth/google.js')(s,config,lang)
}
if(config.productType === 'Pro'){
var LdapAuth = require('ldapauth-fork');
}

View File

@ -131,9 +131,11 @@
<div class="form-group">
<button type="submit" name="login-submit" id="login-submit" tabindex="4" class="btn btn-success btn-block wide-text" style="color:#FFF"><i class="fa fa-key"></i> <%- lang.Login %></button>
</div>
<div class="form-group">
<div class="g-signin2" data-onsuccess="onGoogleSignIn"></div>
</div>
<% if(config.allowGoogleSignOn){ %>
<div class="form-group text-center">
<div class="g-signin2" data-onsuccess="onGoogleSignIn" style="display: inline-block;"></div>
</div>
<% } %>
<div class="form-group text-center" style="margin:0">
<span style="<%- config.poweredByShinobiClass %>;margin-right: 10px" class="epic-text text-green"><i class="fa fa-sign-in"></i> <%- lang['Remember Me'] %></span>
<div class="text-right" title="<%- lang['Remember Me'] %>" style="display:inline-block">
@ -160,6 +162,7 @@
</div>
<script src="<%-window.libURL%>libs/js/material.min.js"></script>
<script>
var googleSignIn = false;
<% var failedLogin;if(failedLogin===true){ %>
localStorage.removeItem('ShinobiLogin_'+location.host)
<% } %>
@ -183,6 +186,7 @@
if(e.s.remember){
localStorage.setItem('ShinobiLogin_'+location.host,JSON.stringify({mail:e.s.mail,pass:e.s.pass,function:e.s.function}))
}else{localStorage.removeItem('ShinobiLogin_'+location.host)}
if(googleSignIn)googleSignOut()
})
if($.ccio.ls){
$.ccio.ls=JSON.parse($.ccio.ls);
@ -223,14 +227,23 @@ $('[selector]').change(function(e){
$('.'+e.a+'_text').text($(this).find('option:selected').text())
}).change();
</script>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<script>
function onGoogleSignIn(googleUser) {
var id_token = googleUser.getAuthResponse().id_token;
$.ccio.f.find('[name="mail"],[name="pass"],.g-signin2').hide()
$.ccio.f.find('[name="alternateLogin"]').val('google')
$.ccio.f.find('[name="alternateLoginToken"]').val(id_token)
$.ccio.f.find('[name="login-submit"]').html(`<i class="fa fa-google"></i> <%- lang.Login %>`)
// $.ccio.f.submit()
}
</script>
<% if(config.allowGoogleSignOn){ %>
<script src="https://apis.google.com/js/platform.js" async defer></script>
<script>
function onGoogleSignIn(googleUser) {
var id_token = googleUser.getAuthResponse().id_token;
$.ccio.f.find('[name="mail"],[name="pass"],.g-signin2').hide()
$.ccio.f.find('[name="alternateLogin"]').val('google')
$.ccio.f.find('[name="alternateLoginToken"]').val(id_token)
$.ccio.f.find('[name="login-submit"]').html(`<i class="fa fa-google"></i> <%- lang.Login %>`)
googleSignIn = true
$.ccio.f.submit()
}
function googleSignOut() {
var auth2 = gapi.auth2.getAuthInstance();
auth2.signOut().then(function () {
console.log('Google Signed out.');
});
}
</script>
<% } %>