Mercurial > pumpbridge
view views/index.jade @ 3:98a070c98982
add Twitter support
author | Mathias Gebbe <mgebbe@intevation.de> |
---|---|
date | Thu, 05 Jun 2014 18:02:25 +0200 |
parents | b73191efc65b |
children | a94ac7c3b182 |
line wrap: on
line source
doctype html html(lang="en") head title= pageTitle link(rel='stylesheet', href='/stylesheets/style.css') link(rel='icon', href='/images/favicon.ico',type='image/x-icon') link(rel='stylesheet', href='/stylesheets/bootstrap.min.css') // load jquery script(src='https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js') // load googleplus api script(type='text/javascript'). (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/client:plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })(); // load googleplus api sign in script(type='text/javascript'). (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/client:plusone.js?onload=render'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })(); /* Executed when the APIs finish loading */ function render() { gapi.signin.render('gp-root', { 'callback': 'signinCallback', 'clientid': '460404084439-rgb5r2vh7hh8hvf2na65c7n1ofhmomek.apps.googleusercontent.com', 'redirecturi': 'postmessage', 'response_type' : 'code', 'accesstype': 'offline', 'approvalprompt': 'force', 'cookiepolicy': "https://do.blessuren.de:3000", 'requestvisibleactions': 'http://schemas.google.com/AddActivity', 'scope': 'https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/userinfo.email' }); } // handle googleplus callback script(type='text/javascript'). function signinCallback(authResult) { if (authResult['status']['signed_in']) { // Update the app to reflect a signed in user // Hide the sign-in button now that the user is authorized, for example: //document.getElementById('signinButton').setAttribute('style', 'display: none'); //alert('googleplus is ready for bridging'); gapi.client.load('plus', 'v1', function() { var request = gapi.client.plus.people.get({ 'userId': 'me' }); request.execute(function(resp) { //alert(JSON.stringify(resp)); $('#gpstatus').html('<a href=' + resp.url + '> ' + resp.displayName + '</a>'); var token = gapi.auth.getToken(); //alert(JSON.stringify(resp.id)); $('#gpid').val(resp.id+'@google'); $('#gptoken').val(token.access_token + ';' + token.code); }); }); } else { // Update the app to reflect a signed out user // Possible error values: // "user_signed_out" - User is signed-out // "access_denied" - User denied access to your app // "immediate_failed" - Could not automatically log in the user //alert('you cancelled login or did not fully authorize: ' + authResult['error']); } } script. // twitter stuff function getCookie(cname) { var name = cname + "="; var ca = document.cookie.split(';'); for(var i=0; i<ca.length; i++) { var c = ca[i].trim(); if (c.indexOf(name) == 0) return c.substring(name.length,c.length); } return ""; } // load facebook api script. $(document).ready(function () { $('#twstatus').html('<a href=https://twitter.com/account/redirect_by_id/' + getCookie('twitterid') + '> ' + getCookie('twitteruser') + '</a>'); $.ajaxSetup({ cache: true }); $.getScript('//connect.facebook.net/en_UK/all.js', function () { FB.init({ appId: '771281529571170', status : true }); FB.getLoginStatus(function(response) { if (response.status === 'connected') { // the user is logged in and has authenticated your // app, and response.authResponse supplies // the user's ID, a valid access token, a signed // request, and the time the access token // and signed request each expire var uid = response.authResponse.userID; var accessToken = response.authResponse.accessToken; $('#fbtoken').val(accessToken); FB.api('/me', function(response) { $('#fbstatus').html('<a href=//facebook.com/' + response.id + '> ' + response.name + '</a>'); $('#fbid').val(response.id+'@facebook'); }); } else if (response.status === 'not_authorized') { // the user is logged in to Facebook, // but has not authenticated your app $('#fbstatus').html('not authorized'); } else { // the user isn't logged in to Facebook. $('#fbstatus').html('not logged in'); } }); }); $('.fbloginbutton').on('click', function(e){ FB.login(function(response) { if (response.authResponse) { FB.api('/me', function(response) { //document.getElementById("logoutbutton").disabled = false; }); } else { //Not logged in //alert('you cancelled login or did not fully authorize.'); } }, {scope: 'publish_actions,publish_stream,read_stream,read_friendlists,user_likes,read_insights,user_activities'}); }) //$('.logoutbutton').on('click', function(e){ // FB.logout(); // }) $('#pumpobj').val(JSON.stringify(!{JSON.stringify(user)})); }); body block content .main h1(class='headline') pumpbridge.<br>connecting social networks #fb-root.fb-root input(id='fbloginbutton',type='image',class='fbloginbutton',value='fbLogin',src='images/fb.svg',width='100px',height='100px') #gp-root.gp-root input(id='gploginbutton',type='image',class='gploginbutton',value='gpLogin',src='images/gp.svg',width='100px',height='100px') //span.g-signin(data-scope='https://www.googleapis.com/auth/plus.login', data-clientid='460404084439-rgb5r2vh7hh8hvf2na65c7n1ofhmomek.apps.googleusercontent.com', data-redirecturi='postmessage', data-accesstype='offline', data-cookiepolicy='single_host_origin', data-callback='signInCallback', approval_prompt='force') #tw-root.tw-root a(href='/add-account'): input(id='twloginbutton',type='image',class='twloginbutton',value='twLogin',src='images/twitter.svg',width='100px',height='100px') #pump-root.pump-root a(href='/login') input(id='pumploginbutton',type='image',class='pumploginbutton',value='pumpLogin',src='images/pumpiologo.svg',width='100px',height='100px') br form(class='',action='/bridge',method='post') #connect.connect ul li Facebook: i(id='fbstatus') not logged in br input(id='fbid',name='fbid',hidden='true') input(id='fbtoken',name='fbtoken',hidden='true') li GooglePlus: i(id='gpstatus') not logged in br input(id='gpid',name='gpid',hidden='true') input(id='gptoken',name='gptoken',hidden='true',size=100) li Twitter: i(id='twstatus') not logged in br input(id='twid',name='twid',hidden='true') input(id='twtoken',name='twtoken',hidden='true',size=100) li pump.io: a(id='pumpstatus',class='pumpstatus',href=user.homepage)= user.id br input(id='pumpid',name='pumpid',hidden='true',value=user.id) input(id='pumptoken',name='pumptoken',hidden='true', value=user.token) input(id='pumpsecret',name='pumpsecret',hidden='true', value=user.secret) input(id='pumpobj',name='pumpobj', hidden='true' value='') br input(type='submit',class='btn btn-default',value='save tokens') .footer #logout.logout //input(id='logoutbutton',type='button',class='logoutbutton',value='Logout',disabled) form(class='',action='/logout',method='post') input(type='submit',class='btn btn-default',value='logout') br p. here our bridge will be.