58 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| $(function () {
 | |
|   'use strict';
 | |
| 
 | |
|   var OAUTH3 = window.OAUTH3;
 | |
| 
 | |
|   //var myPort = window.location.host.replace(/[^:]+(:)?/, '$1');
 | |
|   //var providerUri = 'https://localhost.bar.daplie.me' + myPort;
 | |
|   var providerUri = 'oauth3.org';
 | |
| 
 | |
|   var auth = OAUTH3.create();
 | |
| 
 | |
|   auth.init().then(function () {
 | |
|     $('body').addClass('in');
 | |
|   });
 | |
| 
 | |
|   auth.setProvider(providerUri).then(function () {
 | |
|     $('.js-signin').removeAttr('disabled');
 | |
| 
 | |
|     return auth.authenticate({ windowType: 'background' }).then(function (session) {
 | |
|       console.info("Previously Granted:", session);
 | |
| 
 | |
|       $('.js-signin').removeClass('in').hide();
 | |
|       $('.js-logout').show().addClass('in');
 | |
|     }, function (err) {
 | |
|       console.info("Pre-Auth Fail (okay):", err);
 | |
|     });
 | |
|   });
 | |
| 
 | |
|   $('body').on('click', '.js-signin', function (ev) {
 | |
|     ev.preventDefault();
 | |
|     ev.stopPropagation();
 | |
| 
 | |
|     auth.login().then(function (session) {
 | |
|       console.info('authorization tokens!', session);
 | |
| 
 | |
|       $('.js-signin').removeClass('in').hide();
 | |
|       $('.js-logout').show().addClass('in');
 | |
|     }, function (err) {
 | |
|       window.alert(err.message);
 | |
|     });
 | |
| 
 | |
|   });
 | |
| 
 | |
|   $('body').on('click', '.js-logout', function (ev) {
 | |
|     ev.preventDefault();
 | |
|     ev.stopPropagation();
 | |
| 
 | |
|     return auth.logout().then(function () {
 | |
| 
 | |
|       localStorage.clear();
 | |
|       $('.js-signin').show().addClass('in');
 | |
|       $('.js-logout').removeClass('in').hide();
 | |
|     });
 | |
|   });
 | |
| 
 | |
|   $('.js-logout').hide();
 | |
| });
 |