fixing signout
This commit is contained in:
		
							parent
							
								
									e29085b8c2
								
							
						
					
					
						commit
						47243870e2
					
				@ -1,5 +1,5 @@
 | 
			
		||||
<!DOCTYPE html>
 | 
			
		||||
<html ng-app="launchpad" ng-strict>
 | 
			
		||||
<html ng-app="launchpad" ng-strict ng-controller="loginCtrl as vm">
 | 
			
		||||
  <head>
 | 
			
		||||
    <meta charset="utf-8">
 | 
			
		||||
    <title>Launch-pad</title>
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
    <link rel="stylesheet" href="/css/styles.css">
 | 
			
		||||
  </head>
 | 
			
		||||
 | 
			
		||||
  <body>
 | 
			
		||||
  <body class="{{ vm.currentPath }}">
 | 
			
		||||
    <div ui-view class="splash-page"></div>
 | 
			
		||||
    <div class="search-bar" ui-view="header"></div>
 | 
			
		||||
    <div class="container main-content">
 | 
			
		||||
 | 
			
		||||
@ -4,6 +4,7 @@ app.controller('loginCtrl', [
 | 
			
		||||
 | 
			
		||||
  var vm = this;
 | 
			
		||||
 | 
			
		||||
  vm.currentPath = $location.url().substr(1);
 | 
			
		||||
  vm.independentIssuer = false;
 | 
			
		||||
  vm.oauth3 = Oauth3.oauth3 = Oauth3.oauth3 || Oauth3.create(location);
 | 
			
		||||
  vm.timers = {};
 | 
			
		||||
@ -122,6 +123,10 @@ app.controller('loginCtrl', [
 | 
			
		||||
  vm.newIssuer = vm.defaultIssuer;
 | 
			
		||||
  vm.setIssuer(vm.defaultIssuer);
 | 
			
		||||
 | 
			
		||||
  vm.initGetSession = function() {
 | 
			
		||||
    return Auth.select(Auth.session);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  vm.initListLoggedInProfiles = function () {
 | 
			
		||||
    vm.activeProfiles = Auth.getActiveSessions();
 | 
			
		||||
  };
 | 
			
		||||
@ -136,6 +141,7 @@ app.controller('loginCtrl', [
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  vm.signOut = function () {
 | 
			
		||||
 | 
			
		||||
    // TODO the sign-out url for each account should be fixed.
 | 
			
		||||
    return Auth.signOut().then(function () {
 | 
			
		||||
      if (Auth.sessions.length === 0) {
 | 
			
		||||
 | 
			
		||||
@ -32,7 +32,7 @@ app.controller('websiteCtrl', [
 | 
			
		||||
    return $q.all(Auth.sessions.map(function (session) {
 | 
			
		||||
 | 
			
		||||
      return Auth.select(session).then(function (oauth3) {
 | 
			
		||||
 | 
			
		||||
        console.log('asdf');
 | 
			
		||||
        return oauth3.api(apiname, {}).then(function (collection) {
 | 
			
		||||
 | 
			
		||||
          if (collection.error) {
 | 
			
		||||
 | 
			
		||||
@ -64,12 +64,11 @@ app.factory('Auth', [
 | 
			
		||||
 | 
			
		||||
        Auth.sessions.push(session);
 | 
			
		||||
      });
 | 
			
		||||
 | 
			
		||||
      return Auth.session;
 | 
			
		||||
    }
 | 
			
		||||
  , select: function (session) {
 | 
			
		||||
      if (!session.issuer) {
 | 
			
		||||
        throw new Error("session doesn't have an issuer");;
 | 
			
		||||
        throw new Error("session doesn't have an issuer");
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
      var name = session.token.sub + '@' + session.token.iss;
 | 
			
		||||
@ -105,7 +104,6 @@ app.factory('Auth', [
 | 
			
		||||
  , signOut: function () {
 | 
			
		||||
      var session = Auth.session;
 | 
			
		||||
      var dapName = 'dap-' + session.subject + '|' + session.issuer;
 | 
			
		||||
 | 
			
		||||
      // TODO logout url should be created upon login and remain fixed throughout the duration of the session (or on session restoration)
 | 
			
		||||
      return Auth.oauth3.logout().then(function () {
 | 
			
		||||
        var obj = JSON.parse(localStorage.getItem(dapSessions) || '{}');
 | 
			
		||||
 | 
			
		||||
@ -7,7 +7,7 @@ OAUTH3._pkgs['www@daplie.com'] = {
 | 
			
		||||
  add: function (opts) {
 | 
			
		||||
    var providerUri = opts.audience;
 | 
			
		||||
    var session = opts.session;
 | 
			
		||||
 | 
			
		||||
    debugger;
 | 
			
		||||
    return OAUTH3.request({
 | 
			
		||||
      method: 'POST'
 | 
			
		||||
    , url: OAUTH3.url.normalize(providerUri)
 | 
			
		||||
 | 
			
		||||
@ -60,7 +60,7 @@
 | 
			
		||||
            <a class="btn btn-default btn-sm" ng-click="vm.selectSession(session);">Use Account</a>
 | 
			
		||||
          </div>
 | 
			
		||||
          <div class="col-md-6">
 | 
			
		||||
            <a class="btn btn-default btn-sm pull-right" ng-click="vm.signOut()">Sign Out</a>
 | 
			
		||||
            <a class="btn btn-default btn-sm pull-right" ng-if="vm.session.subject == session.subject" ng-click="vm.signOut()">Sign Out</a>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
@ -1,12 +1,243 @@
 | 
			
		||||
<h2>Contacts</h2>
 | 
			
		||||
<div class="home-container">
 | 
			
		||||
 | 
			
		||||
<ul>
 | 
			
		||||
	<li ng-repeat="contact in contacts">
 | 
			
		||||
  <div ng-hide="vm.single_contact">
 | 
			
		||||
    <div class="panel panel-default">
 | 
			
		||||
      <div class="panel-heading">
 | 
			
		||||
        <ul class="nav nav-tabs" role="tablist">
 | 
			
		||||
          <li role="presentation" class="active"><a href="!#contacts" class="quick-create-tab" aria-controls="contacts" role="tab" data-toggle="tab"><i class="fa fa-user-plus" aria-hidden="true"></i> Create contact</a></li>
 | 
			
		||||
          <li role="presentation"><a href="!#groups" class="quick-create-tab" aria-controls="conversate" role="tab" data-toggle="tab"><i class="fa fa-users" aria-hidden="true"></i> Create a group</a></li>
 | 
			
		||||
          <li role="presentation"><a href="!#import_contacts" class="quick-create-tab" aria-controls="conversate" role="tab" data-toggle="tab"><i class="fa fa-users" aria-hidden="true"></i> Import Contacts</a></li>
 | 
			
		||||
        </ul>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="panel-body">
 | 
			
		||||
        <div class="tab-content">
 | 
			
		||||
          <div role="tabpanel" class="tab-pane active" id="contacts">
 | 
			
		||||
            <div ng-hide="vm.contact_active" ng-click="vm.contact_active = true">
 | 
			
		||||
              <input type="text" class="form-control" placeholder="First Name">
 | 
			
		||||
            </div>
 | 
			
		||||
            <div ng-show="vm.contact_active" class="media">
 | 
			
		||||
              <div class="media-left">
 | 
			
		||||
                <div class="image-thing"><i class="fa fa-user fa-3x" aria-hidden="true"></i></div>
 | 
			
		||||
              </div>
 | 
			
		||||
              <div class="media-body">
 | 
			
		||||
                <div class="form-group">
 | 
			
		||||
                  <input type="text" class="form-control" placeholder="First Name">
 | 
			
		||||
                </div>
 | 
			
		||||
                <div class="form-group">
 | 
			
		||||
                  <input type="text" class="form-control" placeholder="Last Name">
 | 
			
		||||
                </div>
 | 
			
		||||
                <div class="form-group">
 | 
			
		||||
                  <input type="text" class="form-control" placeholder="Mobile Number">
 | 
			
		||||
                </div>
 | 
			
		||||
                <div class="form-group">
 | 
			
		||||
                  <input type="text" class="form-control" placeholder="Email or Daplie Address">
 | 
			
		||||
                </div>
 | 
			
		||||
                <div class="form-group">
 | 
			
		||||
                  <textarea name="name" class="form-control" rows="8" cols="80" placeholder="Notes"></textarea>
 | 
			
		||||
                  <br>
 | 
			
		||||
                  <div class="pull-right">
 | 
			
		||||
                    <button ng-click="vm.contact_active = false" type="button" name="button" class="btn btn-default">Save</button>
 | 
			
		||||
                  </div>
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
            </div>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
		<a ui-sref=".detail({ id: contact.id })" > {{ contact.name }}</a>
 | 
			
		||||
		{{ contact.email }}
 | 
			
		||||
    <div ng-hide="vm.contacts_imported" class="contact-zero">
 | 
			
		||||
      <div class="contact-zero-main">
 | 
			
		||||
 | 
			
		||||
	</li>
 | 
			
		||||
</ul>
 | 
			
		||||
        <i class="fa fa-users fa-4x"></i>
 | 
			
		||||
 | 
			
		||||
<div ui-view="detail"></div>
 | 
			
		||||
        <h3>You haven't added any contacts yet!</h3>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="contact-zero-buttons button-container">
 | 
			
		||||
        <button ng-click="vm.import_contacts()" class="btn btn-default" type="button">Import from Gmail</button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <div ng-show="vm.contacts_imported">
 | 
			
		||||
      <h4 class="text-center">Importing Contacts...</h4>
 | 
			
		||||
 | 
			
		||||
      <div class="progress">
 | 
			
		||||
        <div class="progress-bar" role="progressbar" aria-valuenow="30"
 | 
			
		||||
        aria-valuemin="0" aria-valuemax="100" style="width:30%">
 | 
			
		||||
          <span class="sr-only">30% Complete</span>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
      <h3 class="text-center">Recent Contacts</h3>
 | 
			
		||||
 | 
			
		||||
      <table class="table">
 | 
			
		||||
        <tr>
 | 
			
		||||
          <td><button ng-click="vm.single_contact = true" class="btn btn-default">View</button></td>
 | 
			
		||||
          <td>Best Friend</td>
 | 
			
		||||
          <td>best@frind.com</td>
 | 
			
		||||
          <td>555-555-5309</td>
 | 
			
		||||
        </tr>
 | 
			
		||||
        <tr>
 | 
			
		||||
          <td><button ng-click="vm.single_contact = true" class="btn btn-default">View</button></td>
 | 
			
		||||
          <td>Notbest Friend</td>
 | 
			
		||||
          <td>not@best.com</td>
 | 
			
		||||
          <td>555-867-5555</td>
 | 
			
		||||
        </tr>
 | 
			
		||||
        <tr>
 | 
			
		||||
          <td><button ng-click="vm.single_contact = true" class="btn btn-default">View</button></td>
 | 
			
		||||
          <td>Uncle Ben</td>
 | 
			
		||||
          <td>uncle@ben.com</td>
 | 
			
		||||
          <td>555-867-1234</td>
 | 
			
		||||
        </tr>
 | 
			
		||||
      </table>
 | 
			
		||||
 | 
			
		||||
      <h3 class="text-center">Core to reconnect with these old friends?</h3>
 | 
			
		||||
 | 
			
		||||
      <div class="contact-suggest">
 | 
			
		||||
        <table class="table">
 | 
			
		||||
          <tr>
 | 
			
		||||
            <td>John Doe</td>
 | 
			
		||||
            <td>john@doe.com</td>
 | 
			
		||||
            <td>555-867-5309</td>
 | 
			
		||||
            <td>
 | 
			
		||||
              <button class="btn btn-sm">Send a message</button>
 | 
			
		||||
              <button ng-click="vm.unlock('godfather')" class="btn btn-sm btn-danger">Nah</button>
 | 
			
		||||
            </td>
 | 
			
		||||
          </tr>
 | 
			
		||||
          <tr>
 | 
			
		||||
            <td>Bob Smith</td>
 | 
			
		||||
            <td>bob@smith.com</td>
 | 
			
		||||
            <td>555-867-5308</td>
 | 
			
		||||
            <td>
 | 
			
		||||
              <button class="btn btn-sm">Send a message</button>
 | 
			
		||||
              <button ng-click="vm.unlock('godfather')" class="btn btn-sm btn-danger">Nah</button>
 | 
			
		||||
            </td>
 | 
			
		||||
          </tr>
 | 
			
		||||
          <tr>
 | 
			
		||||
            <td>Jane Austin</td>
 | 
			
		||||
            <td>jane@austin.com</td>
 | 
			
		||||
            <td>555-867-5307</td>
 | 
			
		||||
            <td>
 | 
			
		||||
              <button class="btn btn-sm">Send a message</button>
 | 
			
		||||
              <button ng-click="vm.unlock('godfather')" class="btn btn-sm btn-danger">Nah</button>
 | 
			
		||||
            </td>
 | 
			
		||||
          </tr>
 | 
			
		||||
        </table>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
    </div>
 | 
			
		||||
  </div>
 | 
			
		||||
 | 
			
		||||
  <div ng-show="vm.single_contact">
 | 
			
		||||
    <div class="contact-single-header">
 | 
			
		||||
      <i class="fa fa-user fa-4x"></i>
 | 
			
		||||
      <span class="contact-single-name">John Doe</span>
 | 
			
		||||
      <div class="contact-single-info">
 | 
			
		||||
        <p>john@doe.com</p>
 | 
			
		||||
        <p>555-867-5309</p>
 | 
			
		||||
        <button class="btn btn-primary">Send a Message</button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <br/>
 | 
			
		||||
    <br/>
 | 
			
		||||
 | 
			
		||||
    <div class="panel panel-default">
 | 
			
		||||
      <div class="panel-heading">
 | 
			
		||||
        <div ng-init="vm.contact_view = 'messages'" class="flex-row space-around">
 | 
			
		||||
          <div ng-click="vm.contact_view = 'messages'">
 | 
			
		||||
            <p class="panel-title"><i class="fa fa-users" aria-hidden="true"></i> Conversations</p>
 | 
			
		||||
          </div>
 | 
			
		||||
 | 
			
		||||
          <span class="seperator">|</span>
 | 
			
		||||
 | 
			
		||||
          <div ng-click="vm.contact_view = 'photos'">
 | 
			
		||||
            <p class="panel-title"><i class="fa fa-photo" aria-hidden="true"></i> Photos</p>
 | 
			
		||||
          </div>
 | 
			
		||||
 | 
			
		||||
          <span class="seperator">|</span>
 | 
			
		||||
 | 
			
		||||
          <div ng-click="vm.contact_view = 'files'">
 | 
			
		||||
            <p class="panel-title"><i class="fa fa-file" aria-hidden="true"></i> Files</p>
 | 
			
		||||
          </div>
 | 
			
		||||
 | 
			
		||||
          <span class="seperator">|</span>
 | 
			
		||||
 | 
			
		||||
          <p class="panel-title"><i class="fa fa-bars" aria-hidden="true"></i> More</p>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
      <div ng-show="'messages' === vm.contact_view" class="panel-body contact-bordered contact-conversation">
 | 
			
		||||
        <p>Me: Hey John, did you know that you are my best friend?</p>
 | 
			
		||||
        <p>John: No way! You're my best friend, too!</p>
 | 
			
		||||
        <p>Me: Wow! We sure are awesome friends together! :)</p>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div ng-show="'photos' === vm.contact_view" class="panel-body contact-bordered contact-photos">
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-picture-o"></i></div>
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-file-image-o"></i></div>
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-file-image-o"></i></div>
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-file-image-o"></i></div>
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-picture-o"></i></div>
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-file-image-o"></i></div>
 | 
			
		||||
        <div class="col-lg-3"><i class="fa fa-4x fa-picture-o"></i></div>
 | 
			
		||||
      </div>
 | 
			
		||||
 | 
			
		||||
      <div ng-show="'files' === vm.contact_view" class="panel-body contact-bordered contact-files">
 | 
			
		||||
        <div class="contact-file-placeholder">
 | 
			
		||||
          <i class="fa fa-file fa-4x"></i>
 | 
			
		||||
          <p>filename.ext</p>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="contact-file-placeholder">
 | 
			
		||||
          <i class="fa fa-file fa-4x"></i>
 | 
			
		||||
          <p>filename.ext</p>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="contact-file-placeholder">
 | 
			
		||||
          <i class="fa fa-file fa-4x"></i>
 | 
			
		||||
          <p>filename.ext</p>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="contact-file-placeholder">
 | 
			
		||||
          <i class="fa fa-file fa-4x"></i>
 | 
			
		||||
          <p>filename.ext</p>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="contact-file-placeholder">
 | 
			
		||||
          <i class="fa fa-file fa-4x"></i>
 | 
			
		||||
          <p>filename.ext</p>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
    <div class="panel panel-success">
 | 
			
		||||
      <div class="panel-heading">
 | 
			
		||||
        <h3 class="panel-title">Remember when...?</h3>
 | 
			
		||||
      </div>
 | 
			
		||||
      <div class="panel-body contact-remember-body">
 | 
			
		||||
        <div class="remember-item">
 | 
			
		||||
          <div class="remember-item-header">Taken Feb 20, 2017</div>
 | 
			
		||||
          <div class="remember-img-placeholder">
 | 
			
		||||
            <i class="fa fa-photo fa-4x"></i>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="remember-item">
 | 
			
		||||
          <div class="remember-item-header">Sent on June 5, 2017</div>
 | 
			
		||||
          <div class="remember-text-placeholder">
 | 
			
		||||
            <p>Hey Jane,</p>
 | 
			
		||||
            <p>Love the new do!</p>
 | 
			
		||||
            <p>You're so lucky to have great<br/> hair I'm super jealous...</p>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="remember-item">
 | 
			
		||||
          <div class="remember-item-header">Shared on Ap...</div>
 | 
			
		||||
          <div class="remember-music-placeholder">
 | 
			
		||||
            <i class="fa fa-music fa-3x"></i>
 | 
			
		||||
            <div class="remember-music-text">
 | 
			
		||||
              <p>Come Fly with Me</p>
 | 
			
		||||
              <p>Frank Sinatra</p>
 | 
			
		||||
            </div>
 | 
			
		||||
          </div>
 | 
			
		||||
        </div>
 | 
			
		||||
      </div>
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
  </div>
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
<nav class="navbar navbar-default navbar-fixed-top">
 | 
			
		||||
<nav class="navbar navbar-default navbar-fixed-top" ng-init="vm.initGetSession()">
 | 
			
		||||
  <div class="container">
 | 
			
		||||
    <div class="navbar-header">
 | 
			
		||||
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user