diff --git a/main.py b/main.py index fff220a7f4ef941005782e950a6c3e919cb17de0..884c442e7c344003252e7eec282180edaff9f202 100644 --- a/main.py +++ b/main.py @@ -8,7 +8,6 @@ import base64 #Used to encode the generated QR as base64, to directly insert it from requests import post, get #Used to validate recaptcha / oauth from io import BytesIO #Needed for base64 encoding of the image from PIL import Image #Needed for QR generation -from flask_github import GitHub #github oauth library import json #used for github oauth from html import escape #This is used to escape characters, if they are send in the url app = Flask(__name__) @@ -18,7 +17,7 @@ domain_to_index = {} try: domain = os.environ["domains"].split(";") #Get the domains from the enviorement variable. If no enviorement variable is set set it to 127.0.0.1:5000 (for testing) except: - domain = ["127.0.0.1:5000"] + domain = ["localhost:5000"] try: if(os.environ["show_build_date"] == "1"): #If you want to see the builddate you can enable this enviorement variable @@ -68,12 +67,13 @@ except: host="127.0.0.1" try: - app.config['GITHUB_CLIENT_ID'] = os.environ['GITHUB_CLIENT_ID'] - app.config['GITHUB_CLIENT_SECRET'] = os.environ['GITHUB_CLIENT_SECRET'] + GITHUB_CLIENT_ID = os.environ['GITHUB_CLIENT_ID'] + GITHUB_CLIENT_SECRET = os.environ['GITHUB_CLIENT_SECRET'] + GOOGLE_CLIENT_ID = os.environ['GOOGLE_CLIENT_ID'] + GOOGLE_CLIENT_SECRET = os.environ['GOOGLE_CLIENT_SECRET'] except: - print("github client id or client secret is not set, please set these and run again.") + print("please set the oauth keys and run again.") exit() -github = GitHub(app) try: if(os.environ["cookieNotice"] == 1): @@ -146,7 +146,7 @@ def home_get(): try: loginbar = "Hello " + request.cookies.get('username') + ' (<a href="/user/links" style="color:white">your links</a>, <a href="/user/logout" style="color:white">logout</a>)' except: - loginbar = '<a href="/user/login" style="color:white">login</a>' + loginbar = '<a href="#" onClick="showLogin()" style="color:white">login</a>' return render_template('home.html', builddate=builddate, version=version, domain=domain_prepared, recaptchaPublicKey=recaptchaPublicKey, showDomainSelect=showDomainSelect, loginbar=loginbar, cookieNotice=cookieNotice) #return the default site to create a new shorten link @@ -219,23 +219,51 @@ def redirect_short_url(short_url): @app.route('/user/login') def login(): - return github.authorize(scope="user") #redirect the user to the github login page and ask for access to user data (name, email, ...) + service = request.args.get("service") + if(service == "github"): return redirect("https://github.com/login/oauth/authorize/?client_id=" + GITHUB_CLIENT_ID + "&scope=user") #redirect the user to the github login page and ask for access to user data (name, email, ...) + if(service == "google"): return redirect("https://accounts.google.com/o/oauth2/v2/auth?client_id=" + GOOGLE_CLIENT_ID + "&scope=profile%20email%20openid&response_type=code&access_type=offline&include_granted_scopes=true&redirect_uri=" + url_scheme + "://" + domain[0] + "/user/google-callback") + abort(404) + +@app.route("/user/google-callback") +def authorizeGoogle(): + try: + code = request.args.get("code") + code = request.args.get("code") + url = "https://www.googleapis.com/oauth2/v4/token" #The baseurl + headers = {'Content-Type': 'application/x-www-form-urlencoded',} + params = {'client_id': GOOGLE_CLIENT_ID, 'client_secret': GOOGLE_CLIENT_SECRET, 'code': code, "grant_type": "authorization_code", "redirect_uri": url_scheme + "://" + domain[0] + "/user/google-callback"} #As paramtere we send the client id and the client secret which we get from github when registering an application and the user code from before + access_token = post(url,params, headers=headers).text.split('access_token": "')[1].split('"')[0] + authorization_header = {"Authorization": "OAuth %s" % access_token} + r = get("https://www.googleapis.com/oauth2/v2/userinfo", headers=authorization_header) + userID = r.text.split('"id": "')[1].split('"')[0] + name = r.text.split('"name": "')[1].split('"')[0] + resp = make_response(redirect('/')) #redirect the user at the end back to the main page + resp.set_cookie('userID', "google_" + userID) #set the cookies with username and userid + resp.set_cookie('username', name) + return resp + except: + return "Authentication failed" + @app.route('/user/github-callback') #Github redirects to this link after the user authenticated. Then we use the Token we get from github and request via the github api the username and the userid -@github.authorized_handler -def authorized(oauth_token): - if oauth_token is None: - return "oauth failed, please try again" #If you call this page manual you get this error - - headers = {'Authorization': 'token ' + oauth_token,} #Useragent doesn't matters, but is set here - githubResponse = get("https://api.github.com/user", headers=headers).text - userID = str(json.loads(githubResponse)['id']) - username = str(json.loads(githubResponse)['login']) - - resp = make_response(redirect('/')) #redirect the user at the end back to the main page - resp.set_cookie('userID', userID) #set the cookies with username and userid - resp.set_cookie('username', username) - return resp +def authorizeGithub(): + try: + code = request.args.get("code") + url = "https://github.com/login/oauth/access_token" #The baseurl + params = {'client_id': GITHUB_CLIENT_ID, 'client_secret': GITHUB_CLIENT_SECRET, 'code': code} #As paramtere we send the client id and the client secret which we get from github when registering an application and the user code from before + oauth_token = post(url,params).text.split("access_token=")[1].split("&")[0] #Send a post request with the parameters from + + headers = {'Authorization': 'token ' + oauth_token,} #Useragent doesn't matters, but is set here + githubResponse = get("https://api.github.com/user", headers=headers).text + userID = str(json.loads(githubResponse)['id']) + username = str(json.loads(githubResponse)['login']) + + resp = make_response(redirect('/')) #redirect the user at the end back to the main page + resp.set_cookie('userID', "github_" + userID) #set the cookies with username and userid + resp.set_cookie('username', username) + return resp + except: + return "Authentication failed" @app.route('/user/logout') def logout(): diff --git a/static/socialSignin/css/buttons-si.css b/static/socialSignin/css/buttons-si.css new file mode 100644 index 0000000000000000000000000000000000000000..0be528a2307551d36a8d091ab0d316496a5a9be3 --- /dev/null +++ b/static/socialSignin/css/buttons-si.css @@ -0,0 +1,120 @@ +/* Social Buttons Style */ +.btn-si { + background-position: 1em; + background-repeat: no-repeat; + background-size: 2em; + border-radius: 0.5em; + border: none; + color: white; + cursor: pointer; + font-size: 1em; + height: 4em; + line-height: 1em; + padding: 0 2em 0 4em; + text-decoration: none; + transition: all 0.5s; } + +.btn-google { + background-color: #dd4b39; + background-image: url("../img/google.svg"); } + .btn-google:hover { + background-color: #e47365; } + .btn-google:active { + background-color: #c23321; } + +.btn-facebook { + background-color: #3b5998; + background-image: url("../img/facebook.svg"); } + .btn-facebook:hover { + background-color: #4c70ba; } + .btn-facebook:active { + background-color: #2d4373; } + +.btn-twitter { + background-color: #00aced; + background-image: url("../img/twitter.svg"); } + .btn-twitter:hover { + background-color: #21c2ff; } + .btn-twitter:active { + background-color: #0087ba; } + +.btn-microsoft { + background-color: #e3b30d; + background-image: url("../img/microsoft.svg"); } + .btn-microsoft:hover { + background-color: #f3c730; } + .btn-microsoft:active { + background-color: #b38d0a; } + +.btn-github { + background-color: #2a2a2a; + background-image: url("../img/github.svg"); } + .btn-github:hover { + background-color: #444444; } + .btn-github:active { + background-color: #101010; } + +.btn-foursquare { + background-color: #95c330; + background-image: url("../img/foursquare.svg"); } + .btn-foursquare:hover { + background-color: #abd452; } + .btn-foursquare:active { + background-color: #769a26; } + +.btn-instagram { + background-color: #906248; + background-image: url("../img/instagram.svg"); } + .btn-instagram:hover { + background-color: #ae7a5d; } + .btn-instagram:active { + background-color: #6e4b37; } + +.btn-linkedin { + background-color: #0b5ea3; + background-image: url("../img/linkedin.svg"); } + .btn-linkedin:hover { + background-color: #0e7ad3; } + .btn-linkedin:active { + background-color: #084273; } + +.btn-evernote { + background-color: #5ca629; + background-image: url("../img/evernote.svg"); } + .btn-evernote:hover { + background-color: #73cd35; } + .btn-evernote:active { + background-color: #457d1f; } + +.btn-dropbox { + background-color: #1b73d1; + background-image: url("../img/dropbox.svg"); } + .btn-dropbox:hover { + background-color: #3a8de5; } + .btn-dropbox:active { + background-color: #155aa4; } + +.btn-bitbucket { + background-color: #205081; + background-image: url("../img/bitbucket.svg"); } + .btn-bitbucket:hover { + background-color: #3572B0; } + .btn-bitbucket:active { + background-color: #4E8AC7; } + +.btn-si-a { + padding: 25px 15px 25px 65px !important; + font-family: arial; + color : white;} + +.smaller .btn-si-a { + padding-left: 40px !important; + font-size: 12px; } + +.box{ clear: both; } +.box-a li{ + float: left; + margin: 30px 0px; +} + +#noDot { list-style-type: none;} \ No newline at end of file diff --git a/static/socialSignin/img/bitbucket.svg b/static/socialSignin/img/bitbucket.svg new file mode 100644 index 0000000000000000000000000000000000000000..adeb54f6e4f994ad069247a800a614d52b6d2a42 --- /dev/null +++ b/static/socialSignin/img/bitbucket.svg @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Capa_1" x="0px" y="0px" width="512px" height="512px" viewBox="0 0 465.27 465.269" style="enable-background:new 0 0 465.27 465.269;" xml:space="preserve"> +<g> + <g> + <path d="M377.309,326.631c-42.633,28.165-90.938,42.254-144.896,42.254c-53.959,0-102.164-14.089-144.608-42.254l-5.14,2.566 l-1.714,4.569c6.091,37.305,11.515,65.093,16.274,83.367c3.809,6.659,8.757,12.518,14.849,17.562 c6.09,5.037,13.035,9.182,20.839,12.419c7.804,3.233,15.086,5.801,21.842,7.703c6.757,1.906,14.512,3.614,23.269,5.144 c19.604,3.237,38.778,4.996,57.526,5.28c18.754,0.287,37.973-1.811,57.674-6.279c19.701-4.47,37.736-11.276,54.101-20.41 c6.852-3.812,12.371-9.192,16.563-16.132c4.182-6.947,6.896-13.613,8.131-19.985c1.239-6.376,2.574-14.373,4.001-23.986 c1.434-9.609,2.905-16.888,4.432-21.837c0-1.714,0.767-5.239,2.282-10.564c1.517-5.328,1.995-9.612,1.428-12.847 C383.592,329.958,381.306,327.771,377.309,326.631z" fill="#FFFFFF"/> + <path d="M428.99,52.258c-11.424-14.462-31.888-26.072-61.387-34.829C311.069,0.868,246.732-3.891,174.599,3.154 c-35.779,3.424-65.565,9.513-89.359,18.271c-5.712,2.093-10.278,3.852-13.706,5.28c-3.427,1.427-7.802,3.568-13.134,6.424 c-5.33,2.855-9.615,5.71-12.851,8.565c-3.234,2.853-6.23,6.422-8.992,10.705s-4.425,8.897-4.996,13.846 c1.709,13.706,3.802,28.741,6.28,45.111c2.478,16.368,4.712,30.406,6.71,42.111c1.997,11.704,4.661,27.073,7.993,46.108 c3.333,19.036,5.852,33.313,7.566,42.827c0.381,1.715,0.903,5.041,1.569,9.993c0.667,4.951,1.237,8.712,1.714,11.279 c0.476,2.573,1.332,5.811,2.568,9.712c1.237,3.908,2.856,7.234,4.854,9.996c2,2.758,4.425,5.287,7.281,7.562 c27.79,21.32,65.286,34.547,112.488,39.688c68.138,7.228,126.199-1.14,174.161-25.126c6.279-3.23,11.461-6.181,15.554-8.846 c4.093-2.67,8.24-6.476,12.422-11.424c4.186-4.948,6.756-10.276,7.707-15.984c16.18-92.89,26.741-155.225,31.689-187.011 c1.143-4.377,1.663-9.517,1.581-15.418C433.61,60.921,432.029,56.063,428.99,52.258z M281.656,263.814 c-11.615,14.466-26.081,22.457-43.402,23.986c-17.507,1.522-33.254-3.806-47.244-15.988c-13.99-12.18-21.366-26.933-22.126-44.255 c-0.572-13.134,2.712-25.458,9.851-36.973s16.702-19.936,28.693-25.266c18.653-8.376,37.396-7.139,56.239,3.711 c18.842,10.849,29.602,26.457,32.264,46.824C298.027,233.364,293.274,249.349,281.656,263.814z M342.755,74.387 c-8.757,3.33-15.656,5.376-20.693,6.136c-5.045,0.761-13.559,1.903-25.55,3.432c-41.881,5.325-84.516,5.231-127.909-0.287 c-11.42-1.333-19.748-2.43-24.982-3.289c-5.232-0.854-12.227-2.947-20.984-6.28c-8.757-3.332-15.99-7.659-21.698-12.991 c3.427-4.947,8.186-9.04,14.277-12.275c6.089-3.234,11.325-5.327,15.702-6.28s10.66-2.094,18.843-3.427 c52.344-9.327,106.208-9.517,161.596-0.57c9.329,1.523,16.085,2.712,20.273,3.569c4.188,0.855,9.705,2.952,16.556,6.28 c6.852,3.33,12.187,7.566,15.988,12.703C358.654,66.629,351.513,71.06,342.755,74.387z" fill="#FFFFFF"/> + <path d="M256.39,202.575c-5.232-5.617-11.327-8.995-18.272-10.138c-6.945-1.141-13.841,0-20.695,3.427 c-7.233,3.236-12.181,8.754-14.849,16.558c-2.663,7.804-2.618,15.609,0.144,23.417c2.762,7.803,7.851,13.322,15.275,16.557 c10.087,6.095,20.692,5.52,31.834-1.712c11.133-7.228,15.94-16.844,14.414-28.835C264.24,214.616,261.619,208.192,256.39,202.575z " fill="#FFFFFF"/> + </g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +<g> +</g> +</svg> diff --git a/static/socialSignin/img/dropbox.svg b/static/socialSignin/img/dropbox.svg new file mode 100644 index 0000000000000000000000000000000000000000..0eaa50426a142f90252c66d507f97accd4af7ac6 --- /dev/null +++ b/static/socialSignin/img/dropbox.svg @@ -0,0 +1,371 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="999.99994" + height="930.18054" + id="svg5376" + version="1.1" + inkscape:version="0.48.2 r9819" + sodipodi:docname="A1.svg"> + <defs + id="defs5378"> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5120"> + <path + inkscape:connector-curvature="0" + d="m 42.52,755.433 186.079,0 0,43.937 -186.079,0 0,-43.937 z" + id="path5122" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5128"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5130" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5148"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5150" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5202"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5204" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5214"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5216" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5234"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5236" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5290"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5292" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath5330"> + <path + inkscape:connector-curvature="0" + d="m 42.52,799.37 0,-43.937 186.079,0 0,43.937" + id="path5332" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath9912"> + <path + inkscape:connector-curvature="0" + d="m 339.445,232.6586 46.025,0 0,51.899 -46.025,0 0,-51.899 z" + id="path9914" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath9920"> + <path + inkscape:connector-curvature="0" + d="m 344.657,232.6836 34.7253,0 0,51.8676 -34.7253,0 0,-51.8676 z" + id="path9922" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath12233"> + <path + inkscape:connector-curvature="0" + d="m 257.953,19.842 141.732,0 0,53.504 -141.732,0 0,-53.504 z" + id="path12235" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath16018"> + <path + inkscape:connector-curvature="0" + d="m 44.622,38.953 92.124,0 0,37.175 -92.124,0 0,-37.175 z" + id="path16020" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath16002"> + <path + inkscape:connector-curvature="0" + d="m 44.63,38.953 92.116,0 0,37.175 -92.116,0 0,-37.175 z" + id="path16004" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath15894"> + <path + inkscape:connector-curvature="0" + d="m 44.622,38.953 92.124,0 0,37.175 -92.124,0 0,-37.175 z" + id="path15896" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath15882"> + <path + inkscape:connector-curvature="0" + d="m 44.63,38.953 92.116,0 0,37.175 -92.116,0 0,-37.175 z" + id="path15884" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath16679"> + <path + inkscape:connector-curvature="0" + d="m -8.504,-8.503 437.953,0 0,106.997 -437.953,0 0,-106.997 z" + id="path16681" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath19116"> + <path + inkscape:connector-curvature="0" + d="m 524.8765,58.1629 51.9736,0 c 2.3483,0 4.252,-1.9037 4.252,-4.252 l 0,-35.486 c 0,-2.3483 -1.9037,-4.252 -4.252,-4.252 l -103.9471,0 c -2.3483,0 -4.252,1.9037 -4.252,4.252 l 0,35.486 c 0,2.3483 1.9037,4.252 4.252,4.252" + clip-rule="evenodd" + id="path19118" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath19124"> + <path + inkscape:connector-curvature="0" + d="m 470.549,17.1589 108.7399,0 0,37.6171 -108.7399,0 0,-37.6171 z" + id="path19126" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath19501"> + <path + inkscape:connector-curvature="0" + d="m 0.323,2.044 594.629,0 0,82.145 -594.629,0 0,-82.145 z" + id="path19503" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath19485"> + <path + inkscape:connector-curvature="0" + d="m 245.246,17.778 109.243,0 0,48.927 -109.243,0 0,-48.927 z" + id="path19487" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath20517"> + <path + inkscape:connector-curvature="0" + d="m 507.4,28.3467 59.5289,0 0,84.807 -59.5289,0 0,-84.807 z" + id="path20519" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath20525"> + <path + inkscape:connector-curvature="0" + d="m 509.837,27.1888 62.3996,0 0,83.0584 -62.3996,0 0,-83.0584 z" + id="path20527" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath32351"> + <path + inkscape:connector-curvature="0" + d="m 789.437,22.03 20.563,0 0,41.765 -20.563,0 0,-41.765 z" + id="path32353" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath34294"> + <path + inkscape:connector-curvature="0" + d="m 487.355,14.173 98.707,0 0,52.477 -98.707,0 0,-52.477 z" + id="path34296" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath38161"> + <path + inkscape:connector-curvature="0" + d="m 322.047,17.3088 258.213,0 0,93.242 -258.213,0 0,-93.242 z" + id="path38163" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath38169"> + <path + inkscape:connector-curvature="0" + d="m 344.927,26.6568 227.546,0 0,79.3105 -227.546,0 0,-79.3105 z" + id="path38171" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath38544"> + <path + inkscape:connector-curvature="0" + d="m 157.446,17.008 104.635,0 0,25.449 -104.635,0 0,-25.449 z" + id="path38546" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath38544-4"> + <path + inkscape:connector-curvature="0" + d="m 157.446,17.008 104.635,0 0,25.449 -104.635,0 0,-25.449 z" + id="path38546-0" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath48037"> + <path + inkscape:connector-curvature="0" + d="m 14.008,14.008 442.063,0 0,103.606 -442.063,0 0,-103.606 z" + id="path48039" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath48089"> + <path + inkscape:connector-curvature="0" + d="m 354.836,51.742 46.193,0 0,51.453 -46.193,0 0,-51.453 z" + id="path48091" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath48105"> + <path + inkscape:connector-curvature="0" + d="m 14.008,14.008 442.063,0 0,103.606 -442.063,0 0,-103.606 z" + id="path48107" /> + </clipPath> + <clipPath + clipPathUnits="userSpaceOnUse" + id="clipPath54189"> + <path + inkscape:connector-curvature="0" + d="m 177.584,193.234 0,-39.251 32.873,0 0,39.251" + id="path54191" /> + </clipPath> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.35" + inkscape:cx="446.06248" + inkscape:cy="-80.057661" + inkscape:document-units="px" + inkscape:current-layer="g37407" + showgrid="false" + fit-margin-left="0.5" + fit-margin-bottom="0.5" + fit-margin-top="0.5" + fit-margin-right="0.5" + inkscape:window-width="1278" + inkscape:window-height="1035" + inkscape:window-x="644" + inkscape:window-y="-21" + inkscape:window-maximized="0" /> + <metadata + id="metadata5381"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title></dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(-7056.5735,7485.7909)"> + <g + transform="matrix(8.5998536,0,0,-8.5998536,2765.5598,-5681.637)" + id="g37407"> + <g + id="g54448" + transform="matrix(1.1133825,0,0,1.1133825,462.46659,61.070265)"> + <g + transform="translate(63.5239,133.5215)" + id="g54428"> + <path + id="path54430" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" + d="M 0,0 -30.691,-20.039 -9.47,-37.033 21.476,-17.925 0,0 z" + inkscape:connector-curvature="0" /> + </g> + <g + transform="translate(32.8325,79.4932)" + id="g54432"> + <path + id="path54434" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" + d="M 0,0 30.691,-20.039 52.167,-2.113 21.222,16.995 0,0 z" + inkscape:connector-curvature="0" /> + </g> + <g + transform="translate(84.9995,77.3799)" + id="g54436"> + <path + id="path54438" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" + d="M 0,0 21.477,-17.926 52.168,2.113 30.946,19.108 0,0 z" + inkscape:connector-curvature="0" /> + </g> + <g + transform="translate(137.1675,113.4824)" + id="g54440"> + <path + id="path54442" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" + d="M 0,0 -30.691,20.039 -52.168,2.114 -21.222,-16.994 0,0 z" + inkscape:connector-curvature="0" /> + </g> + <g + transform="translate(85.063,73.5234)" + id="g54444"> + <path + id="path54446" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" + d="m 0,0 -21.539,-17.873 -9.217,6.018 0,-6.747 L 0,-37.045 l 30.756,18.443 0,6.747 -9.217,-6.018 L 0,0 z" + inkscape:connector-curvature="0" /> + </g> + </g> + </g> + </g> +</svg> diff --git a/static/socialSignin/img/evernote.svg b/static/socialSignin/img/evernote.svg new file mode 100644 index 0000000000000000000000000000000000000000..1661ba9b2439c740816c04b46199e5960e0aa5b4 --- /dev/null +++ b/static/socialSignin/img/evernote.svg @@ -0,0 +1,7 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="279" height="283"> + <!-- Created with SVG-edit - http://svg-edit.googlecode.com/ --> + <g> + <title>Layer 1</title> + <path id="svg_1" d="m27.910801,58.666496c0,0 0,0 0.0177,0l26.7402,0c1.532295,0 2.764496,-1.213898 2.767395,-2.692894c0,-0.009605 -0.324593,-22.302505 -0.324593,-28.501999l0,-0.073502c0,-5.091602 1.098595,-9.530602 3.012093,-13.250702l0.914406,-1.670601c-0.102104,0.0168 -0.204803,0.065502 -0.306404,0.164803l-51.956898,50.117401c-0.101601,0.080994 -0.165001,0.186996 -0.194401,0.294998c1.074501,-0.516998 2.544001,-1.223999 2.751701,-1.313004c4.5247,-1.986198 10.011101,-3.074501 16.5788,-3.074501zm208.073193,-5.456993c-2.125,-11.060303 -8.884995,-16.511101 -14.996994,-18.654205c-6.593994,-2.318398 -19.964996,-4.719894 -36.766006,-6.646095c-13.515991,-1.548302 -29.401993,-1.425003 -38.997986,-1.136505c-1.152008,-7.673199 -6.685013,-14.683296 -12.876007,-17.110096c-16.494995,-6.458401 -41.981003,-4.898102 -48.525002,-3.1143c-5.199402,1.413597 -10.954796,4.310497 -14.157898,8.774799c-2.148201,2.981998 -3.538101,6.802299 -3.548904,12.1395c0,3.020599 0.086502,10.136299 0.165604,16.458496c0.078499,6.341805 0.164001,12.013802 0.164001,12.052505c-0.002998,5.6464 -4.707405,10.241394 -10.537498,10.248398l-26.744602,0c-5.704899,0 -10.063602,0.932999 -13.393402,2.403999c-3.334698,1.473 -5.696499,3.458 -7.491098,5.806999c-3.571899,4.665001 -4.1922,10.420998 -4.1775,16.294998c0,0 0.052599,4.800003 1.2416,14.091003c0.9886,7.188995 9.0033,57.408005 16.615601,72.681c2.951698,5.942993 4.917599,8.417999 10.716297,11.037003c12.920002,5.380997 42.431004,11.367004 56.262798,13.080994c13.806,1.718002 22.472,5.330002 27.636002,-5.201996c0.016998,-0.026993 1.033997,-2.621002 2.432999,-6.425995c4.484009,-13.215012 5.10701,-24.94101 5.10701,-33.42601c0,-0.862991 1.301987,-0.903 1.301987,0c0,5.990005 -1.175995,27.189011 15.286011,32.876999c6.5,2.241013 19.981995,4.240005 33.681,5.802002c12.386002,1.384003 21.375,6.126007 21.375,37.037003c0,18.807007 -4.061005,21.385986 -25.290009,21.385986c-17.209,0 -23.76799,0.433014 -23.76799,-12.865997c0,-10.747986 10.929001,-9.621979 19.028,-9.621979c3.617996,0 0.991989,-2.617004 0.991989,-9.248016c0,-6.597 4.242004,-10.409988 0.230011,-10.506989c-28.008011,-0.749008 -44.487,-0.031006 -44.487,34.040985c0,30.931 12.168991,36.675018 51.918991,36.675018c31.167007,0 42.153,-0.993011 55.022003,-39.833008c2.548004,-7.667999 8.705994,-31.067001 12.432999,-70.354996c2.356995,-24.841003 -2.221008,-99.818001 -5.852005,-118.741501zm-54.329987,82.873489c-3.850006,-0.130997 -7.554001,0.105011 -11.007004,0.645004c0.972,-7.634995 4.21199,-17.00499 15.688995,-16.612c12.705002,0.425003 14.486008,12.106003 14.531006,20.018005c-5.35701,-2.324005 -11.988998,-3.804001 -19.212997,-4.05101z" fill="#ffffff"/> + </g> +</svg> \ No newline at end of file diff --git a/static/socialSignin/img/facebook.svg b/static/socialSignin/img/facebook.svg new file mode 100644 index 0000000000000000000000000000000000000000..0cd9ea9fe749a82aa63d1269f14503dbe1d89e08 --- /dev/null +++ b/static/socialSignin/img/facebook.svg @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + width="35px" height="35px" viewBox="0 0 300 300" enable-background="new 0 0 266.893 266.895" + xml:space="preserve"> +<path id="f" fill="#FFFFFF" d="M182.409,262.307v-99.803h33.499l5.016-38.895h-38.515V98.777c0-11.261,3.127-18.935,19.275-18.935 + l20.596-0.009V45.045c-3.562-0.474-15.788-1.533-30.012-1.533c-29.695,0-50.025,18.126-50.025,51.413v28.684h-33.585v38.895h33.585 + v99.803H182.409z"/> +</svg> diff --git a/static/socialSignin/img/foursquare.svg b/static/socialSignin/img/foursquare.svg new file mode 100644 index 0000000000000000000000000000000000000000..dac5c125301b43a322a24131c21444bdced9f43e --- /dev/null +++ b/static/socialSignin/img/foursquare.svg @@ -0,0 +1,38 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + version="1.1" + width="106.6" + height="106.3" + id="svg2" + xml:space="preserve"><metadata + id="metadata8"><rdf:RDF><cc:Work + rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs + id="defs6"><clipPath + id="clipPath18"><path + d="m 0,0 852.844,0 0,850 L 0,850 0,0 z" + inkscape:connector-curvature="0" + id="path20" /></clipPath></defs><g + transform="matrix(1.25,0,0,-1.25,0,106.3)" + id="g10"><g + transform="scale(0.1,0.1)" + id="g12"><g + id="g14"><g + clip-path="url(#clipPath18)" + id="g16"><path + d="m 844.648,634.414 -66.457,66.555 c -5.339,5.308 -12.3,8.242 -19.8,8.211 -7.493,0.031 -14.512,-2.91 -19.836,-8.184 L 420.508,382.82 281.301,522.285 c -5.207,5.235 -12.375,8.242 -19.785,8.223 -7.356,-0.02 -14.575,-2.969 -19.805,-8.172 L 175.145,455.84 c -10.957,-10.93 -10.997,-28.633 -0.028,-39.57 L 400.43,190.488 c 4.511,-4.519 10.363,-7.324 16.601,-8.008 1.055,-0.144 2.129,-0.207 3.203,-0.195 0.071,0 0.137,0 0.204,0.012 l 0.031,-0.024 c 7.519,-0.015 14.66,2.954 19.992,8.235 l 404.168,404.336 c 10.937,10.918 10.945,28.613 0.019,39.57" + inkscape:connector-curvature="0" + id="path22" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /><path + d="M 819.656,497.449 477.324,154.973 c -14.785,-14.641 -34.344,-22.7 -55.168,-22.7 l -15.191,0.024 -3.195,2.137 c -13.946,3.32 -26.844,10.507 -37.04,20.742 L 141.492,380.879 c -14.762,14.726 -22.898,34.316 -22.887,55.156 0,20.86 8.141,40.469 22.899,55.176 l 66.641,66.582 c 14.472,14.395 34.5,22.676 55.125,22.715 20.558,0 40.668,-8.379 55.109,-22.903 L 422.227,453.574 642.844,674.277 495.906,821.211 c -38.894,38.887 -102.527,38.887 -141.426,0 L 29.168,495.898 c -38.89456,-38.886 -38.89456,-102.539 0,-141.425 L 354.492,29.1602 c 38.899,-38.88676 102.528,-38.88676 141.426,0 L 821.223,354.473 c 38.894,38.886 38.894,102.531 0,141.425 l -1.567,1.551" + inkscape:connector-curvature="0" + id="path24" + style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none" /></g></g></g></g></svg> \ No newline at end of file diff --git a/static/socialSignin/img/github.svg b/static/socialSignin/img/github.svg new file mode 100644 index 0000000000000000000000000000000000000000..b332fc72dd637ebe96476afde4392b8ba7aa2484 --- /dev/null +++ b/static/socialSignin/img/github.svg @@ -0,0 +1,38 @@ +<svg width="155" height="155" xmlns="http://www.w3.org/2000/svg"> + <metadata id="metadata8">image/svg+xml</metadata> + <defs> + <clipPath id="clipPath16"> + <path d="m-288.200012,331.985962l530.973022,0l0,-275.985962l-530.973022,0l0,275.985962z" id="path18"/> + </clipPath> + </defs> + <g transform="matrix(1.25 0 0 -1.25 0 344.983)" id="g10"> + <g id="g12"> + <g clip-path="url(#clipPath16)" id="g14"> + <g id="g24"> + <path d="m62.40889,273.554718c-33.347019,0 -60.388,-27.035019 -60.388,-60.388016c0,-26.679993 17.303001,-49.315994 41.296989,-57.30101c3.018013,-0.55899 4.126011,1.310013 4.126011,2.905014c0,1.438995 -0.056,6.197006 -0.082001,11.242996c-16.79999,-3.653 -20.344999,7.125 -20.344999,7.125c-2.747009,6.979004 -6.70499,8.835999 -6.70499,8.835999c-5.478999,3.748001 0.412991,3.671005 0.412991,3.671005c6.064001,-0.42601 9.25699,-6.224014 9.25699,-6.224014c5.386021,-9.230988 14.127018,-6.561981 17.572998,-5.018997c0.541992,3.902008 2.107002,6.567001 3.834023,8.075012c-13.413033,1.525986 -27.513,6.705002 -27.513,29.843994c0,6.591995 2.358971,11.979996 6.221979,16.209c-0.62698,1.521011 -2.694,7.662994 0.584991,15.981003c0,0 5.07202,1.621994 16.611021,-6.190994c4.81699,1.337997 9.983009,2.008987 15.114986,2.03299c5.132,-0.024002 10.302013,-0.694992 15.128002,-2.03299c11.526001,7.812988 16.589996,6.190994 16.589996,6.190994c3.28701,-8.318008 1.220001,-14.459991 0.59301,-15.981003c3.871986,-4.229004 6.213997,-9.617004 6.213997,-16.209c0,-23.195007 -14.126984,-28.300995 -27.574005,-29.796005c2.166008,-1.873993 4.096008,-5.548996 4.096008,-11.182999c0,-8.079987 -0.069,-14.582993 -0.069,-16.571991c0,-1.608002 1.085991,-3.490005 4.147003,-2.89801c23.980988,7.994003 41.263,30.622009 41.263,57.294006c0,33.352997 -27.036987,60.388016 -60.388012,60.388016" id="path26" fill-rule="evenodd" fill="#ffffff"/> + </g> + <g id="g28"> + <path d="m24.89329,186.851593c-0.13299,-0.300995 -0.605009,-0.391006 -1.035,-0.184998c-0.438999,0.197998 -0.68399,0.606995 -0.54199,0.908005c0.130001,0.307999 0.60199,0.393997 1.040001,0.187988c0.43799,-0.196991 0.68799,-0.610001 0.536989,-0.910995" id="path30" fill-rule="nonzero" fill="#ffffff"/> + </g> + <g id="g32"> + <path d="m27.339609,184.123001c-0.287989,-0.266998 -0.85199,-0.143005 -1.233,0.279007c-0.396,0.42099 -0.468988,0.985001 -0.177,1.25499c0.296991,0.266998 0.843021,0.141998 1.238001,-0.278992c0.396,-0.42601 0.473,-0.984009 0.171999,-1.255005" id="path34" fill-rule="nonzero" fill="#ffffff"/> + </g> + <g id="g36"> + <path d="m29.720409,180.645493c-0.369999,-0.257996 -0.976009,-0.016998 -1.35001,0.521011c-0.369989,0.537003 -0.369989,1.181 0.00901,1.438995c0.373991,0.258011 0.971001,0.025009 1.35,-0.506989c0.36899,-0.546005 0.36899,-1.190018 -0.009001,-1.453018" id="path38" fill-rule="nonzero" fill="#ffffff"/> + </g> + <g id="g40"> + <path d="m32.982101,177.285202c-0.331001,-0.365005 -1.036011,-0.266998 -1.552002,0.231003c-0.52799,0.487 -0.67499,1.177994 -0.344,1.542999c0.336,0.365997 1.044981,0.263 1.565001,-0.231003c0.523991,-0.486008 0.68399,-1.182007 0.331001,-1.542999" id="path42" fill-rule="nonzero" fill="#ffffff"/> + </g> + <g id="g44"> + <path d="m37.482101,175.334c-0.146,-0.472992 -0.825012,-0.686996 -1.50901,-0.485992c-0.68298,0.207001 -1.130001,0.759995 -0.992001,1.237991c0.141998,0.477005 0.824009,0.699997 1.513,0.485001c0.682011,-0.206009 1.130009,-0.755997 0.98801,-1.237" id="path46" fill-rule="nonzero" fill="#ffffff"/> + </g> + <g id="g48"> + <path d="m42.424511,174.972702c0.016998,-0.498001 -0.562992,-0.911011 -1.28101,-0.919998c-0.721981,-0.016998 -1.307003,0.387009 -1.315002,0.876999c0,0.502991 0.568001,0.911011 1.289001,0.923996c0.718021,0.014008 1.307011,-0.386993 1.307011,-0.880997" id="path50" fill-rule="nonzero" fill="#ffffff"/> + </g> + <g id="g52"> + <path d="m47.023109,175.754898c0.086002,-0.485001 -0.412991,-0.984009 -1.125999,-1.117004c-0.700989,-0.128998 -1.35001,0.171997 -1.438999,0.653015c-0.087002,0.497986 0.42001,0.996994 1.120998,1.125992c0.713989,0.124008 1.353001,-0.167999 1.444,-0.662003" id="path54" fill-rule="nonzero" fill="#ffffff"/> + </g> + </g> + </g> + </g> +</svg> \ No newline at end of file diff --git a/static/socialSignin/img/google.svg b/static/socialSignin/img/google.svg new file mode 100644 index 0000000000000000000000000000000000000000..61b41af664242762d84171bac2bbb61340128cdb --- /dev/null +++ b/static/socialSignin/img/google.svg @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + width="35px" height="35px" viewBox="10 10 110.658 110.646" enable-background="new 0 0 134.658 131.646" + xml:space="preserve"> +<g> + <g> + <path fill="#FFFFFF" d="M70.479,71.845l-3.983-3.093c-1.213-1.006-2.872-2.334-2.872-4.765c0-2.441,1.659-3.993,3.099-5.43 + c4.64-3.652,9.276-7.539,9.276-15.73c0-8.423-5.3-12.854-7.84-14.956h6.849l7.189-4.517H60.418 + c-5.976,0-14.588,1.414-20.893,6.619c-4.752,4.1-7.07,9.753-7.07,14.842c0,8.639,6.633,17.396,18.346,17.396 + c1.106,0,2.316-0.109,3.534-0.222c-0.547,1.331-1.1,2.439-1.1,4.32c0,3.431,1.763,5.535,3.317,7.528 + c-4.977,0.342-14.268,0.893-21.117,5.103c-6.523,3.879-8.508,9.525-8.508,13.51c0,8.202,7.731,15.842,23.762,15.842 + c19.01,0,29.074-10.519,29.074-20.932C79.764,79.709,75.344,75.943,70.479,71.845z M56,59.107 + c-9.51,0-13.818-12.294-13.818-19.712c0-2.888,0.547-5.87,2.428-8.199c1.773-2.218,4.861-3.657,7.744-3.657 + c9.168,0,13.923,12.404,13.923,20.382c0,1.996-0.22,5.533-2.762,8.09C61.737,57.785,58.762,59.107,56,59.107z M56.109,103.65 + c-11.826,0-19.452-5.657-19.452-13.523c0-7.864,7.071-10.524,9.504-11.405c4.64-1.561,10.611-1.779,11.607-1.779 + c1.105,0,1.658,0,2.538,0.111c8.407,5.983,12.056,8.965,12.056,14.629C72.362,98.542,66.723,103.65,56.109,103.65z"/> + <polygon fill="#FFFFFF" points="98.393,58.938 98.393,47.863 92.923,47.863 92.923,58.938 81.866,58.938 81.866,64.469 + 92.923,64.469 92.923,75.612 98.393,75.612 98.393,64.469 109.506,64.469 109.506,58.938 "/> + </g> +</g> +</svg> diff --git a/static/socialSignin/img/instagram.svg b/static/socialSignin/img/instagram.svg new file mode 100644 index 0000000000000000000000000000000000000000..df31ce25bb32421cf79dcbddf51182fffd543fea --- /dev/null +++ b/static/socialSignin/img/instagram.svg @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> +<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" + width="26px" height="26px" viewBox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve"> + +<path fill="#ffffff" d="M480,0H32C14.312,0,0,14.312,0,32v448c0,17.688,14.312,32,32,32h448 + c17.688,0,32-14.312,32-32V32C512,14.312,497.688,0,480,0z M192,256c0,0,5.062-64,64-64s64,64,64,64s1.844,64-64,64S192,256,192,256 + z M448,448H64V224h64h4.531c-2.656,10.281-4.531,20.875-4.531,32c0,70.688,57.312,128,128,128s128-57.312,128-128 + c0-11.125-1.875-21.719-4.531-32H384h64V448z M448,160h-96V64h96V160z"/> +</svg> diff --git a/static/socialSignin/img/linkedin.svg b/static/socialSignin/img/linkedin.svg new file mode 100644 index 0000000000000000000000000000000000000000..ebc7868c4701ee6609aa6aafcc3f0fcc570628a4 --- /dev/null +++ b/static/socialSignin/img/linkedin.svg @@ -0,0 +1,10 @@ +<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="90" height="79.459999" id="svg3070" version="1.1" inkscape:version="0.48.0 r9654" sodipodi:docname="New document 4"> + <defs id="defs3072"/> + <g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" transform="translate(-200.55198,-393.96227)"> + <g transform="matrix(1.018827,0,0,-1.018827,-40,498.03288)" id="g3019"> + <path d="m 239.3298,95.036 c 0,2.96 2.4604,5.361 5.4956,5.361 l 63.376,0 c 3.0351,0 5.4956,-2.401 5.4956,-5.361 l 0,-64.117 c 0,-2.961 -2.4605,-5.361 -5.4956,-5.361 l -63.376,0 c -3.0352,0 -5.4956,2.4 -5.4956,5.361 l 0,64.117 z" style="fill:#003d5c;fill-opacity:1;fill-rule:nonzero;stroke:none" id="path14" inkscape:connector-curvature="0"/> + <path d="m 261.8728,37.749 0,33.794 -11.2325,0 0,-33.794 11.2325,0 z m -5.6163,38.408 c 3.917,0 6.355,2.595 6.355,5.838 -0.073,3.316 -2.438,5.839 -6.2807,5.839 -3.8423,0 -6.3545,-2.523 -6.3545,-5.839 0,-3.243 2.4375,-5.838 6.207,-5.838 l 0.073,0 z" style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none" id="path28" inkscape:connector-curvature="0"/> + <path d="m 268.0881,37.749 11.2324,0 0,18.872 c 0,1.01 0.073,2.019 0.3696,2.741 0.812,2.018 2.6602,4.108 5.7632,4.108 4.0645,0 5.6904,-3.099 5.6904,-7.642 l 0,-18.079 11.2315,0 0,19.377 c 0,10.38 -5.5415,15.21 -12.9316,15.21 -6.0596,0 -8.7198,-3.387 -10.1978,-5.694 l 0.075,0 0,4.901 -11.2324,0 c 0.1474,-3.171 0,-33.794 0,-33.794 z" style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none" id="path30" inkscape:connector-curvature="0"/> + </g> + </g> +</svg> \ No newline at end of file diff --git a/static/socialSignin/img/microsoft.svg b/static/socialSignin/img/microsoft.svg new file mode 100644 index 0000000000000000000000000000000000000000..dea209efddaed56d5d53be55937c8f4d7e17b9ed --- /dev/null +++ b/static/socialSignin/img/microsoft.svg @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg xmlns="http://www.w3.org/2000/svg" width="439" height="439"> +<rect fill="#f3f3f3" width="439" height="439"/> +<rect fill="#f8682c" x="17" y="17" width="194" height="194"/> +<rect fill="#91c300" x="228" y="17" width="194" height="194"/> +<rect fill="#00b4f1" x="17" y="228" width="194" height="194"/> +<rect fill="#ffc300" x="228" y="228" width="194" height="194"/></svg> \ No newline at end of file diff --git a/static/socialSignin/img/twitter.svg b/static/socialSignin/img/twitter.svg new file mode 100644 index 0000000000000000000000000000000000000000..e77def255770f2d6f1ec205d16d4c0010783f217 --- /dev/null +++ b/static/socialSignin/img/twitter.svg @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + viewbox="0 0 2000 1625.36" + width="2000" + height="1625.36" + version="1.1" + xmlns="http://www.w3.org/2000/svg"> + <path + d="m 1999.9999,192.4 c -73.58,32.64 -152.67,54.69 -235.66,64.61 84.7,-50.78 149.77,-131.19 180.41,-227.01 -79.29,47.03 -167.1,81.17 -260.57,99.57 C 1609.3399,49.82 1502.6999,0 1384.6799,0 c -226.6,0 -410.328,183.71 -410.328,410.31 0,32.16 3.628,63.48 10.625,93.51 -341.016,-17.11 -643.368,-180.47 -845.739,-428.72 -35.324,60.6 -55.5583,131.09 -55.5583,206.29 0,142.36 72.4373,267.95 182.5433,341.53 -67.262,-2.13 -130.535,-20.59 -185.8519,-51.32 -0.039,1.71 -0.039,3.42 -0.039,5.16 0,198.803 141.441,364.635 329.145,402.342 -34.426,9.375 -70.676,14.395 -108.098,14.395 -26.441,0 -52.145,-2.578 -77.203,-7.364 52.215,163.008 203.75,281.649 383.304,284.946 -140.429,110.062 -317.351,175.66 -509.5972,175.66 -33.1211,0 -65.7851,-1.949 -97.8828,-5.738 181.586,116.4176 397.27,184.359 628.988,184.359 754.732,0 1167.462,-625.238 1167.462,-1167.47 0,-17.79 -0.41,-35.48 -1.2,-53.08 80.1799,-57.86 149.7399,-130.12 204.7499,-212.41" + style="fill:#ffffff"/> +</svg> \ No newline at end of file diff --git a/templates/home.html b/templates/home.html index c216fd4b54011ec8372e64251b0d4573fd91d63e..6c07834a1fbc43e04b6961017338163b9d1ffd4e 100644 --- a/templates/home.html +++ b/templates/home.html @@ -1,7 +1,9 @@ <!DOCTYPE html> <html lang="en"> <head> + <link href="/static/jquery-ui.css" rel="stylesheet"> <link href="/static/style.css" rel="stylesheet"> + <link href="/static/socialSignin/css/buttons-si.css" rel="stylesheet"> <title>URL shorter</title> {% if cookieNotice %} <script type="text/javascript" id="cookieinfo" src="/static/cookieinfo.js" ></script> @@ -56,6 +58,15 @@ </div> </div> <div id="snackbar">{{snackbar}}</div> + <!-- ui-dialog --> + <div id="dialog" title="login"> + <div class="box box-a"> + <ul id="noDot"> + <li><a class="btn-si btn-si-a btn-github" style="color: white;" href="/user/login?service=github">Sign in with GitHub </a></li> + <li><a class="btn-si btn-si-a btn-google" style="color: white;"href="/user/login?service=google">Sign in with Google</a></li> + </ul> + </div> + </div> {% if snackbar %} <script> @@ -70,5 +81,18 @@ x.selectedIndex = {{domain_prefilled}}; </script> {% endif %} + + <script src="/static/external/jquery/jquery.js"></script> + <script src="/static/jquery-ui.js"></script> + <script> + $( "#dialog" ).dialog({ + autoOpen: false, + width: 400 + }); + + function showLogin(){ + $( "#dialog" ).dialog( "open" ); + } + </script> </body> </html> \ No newline at end of file