<!DOCTYPE html>

<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <title>Log in — Upstream</title>
    <meta name="description" content="Secure login to Upstream. If you believe you reached this page in error, contact support.">

            <script type="application/ld+json">
	{
	  "@context": "https://schema.org",
	  "@type": "SoftwareApplication",
	  "name": "Upstream",
	  "applicationCategory": "BusinessApplication",
	  "operatingSystem": "Web",
	  "url": "https://https://blog.worldfishcenter.org/"
	}
	</script>
    
    <!-- Icons -->
    <link rel="icon" type="image/png" href="/favicon-96x96.png?v=2" sizes="96x96" />
	<link rel="icon" type="image/svg+xml" href="/favicon.svg?v=2" />
	<link rel="shortcut icon" href="/favicon.ico?v=2" />
	<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png?v=2" />
	<meta name="apple-mobile-web-app-title" content="Upstream+" />
	<link rel="manifest" href="/site.webmanifest" />
    <meta name="msapplication-TileColor" content="#ed1d26">
    <meta name="theme-color" content="#ed1d26">
    
    <meta name="google-site-verification" content="Gp8FSXIOqlDipxcEBdY13SAC-_zdJ5T5Mj9OWeVp9W8" />

        <!-- Core CSS -->
    <link rel="stylesheet" id="ps-main" href="https://blog.worldfishcenter.org/css/dashmix.css">
    <link rel="stylesheet" id="css-brand" href="https://blog.worldfishcenter.org/assets/upstream/style-upstream.min.css?v=7.9.9">
    <link rel="stylesheet" id="css-print"
        href="https://blog.worldfishcenter.org/css/style-print.css?v=1771595972"
        media="print">
    <style>
        @keyframes fadeBorder {
            0% {
                box-shadow: inset 0 0 1px rgba(225, 27, 80, 0.01);
            }

            50% {
                box-shadow: inset 0 0 6px rgba(225, 27, 80, 0.35);
            }

            100% {
                box-shadow: inset 0 0 1px rgba(225, 27, 80, 0.01);
            }
        }
    </style>

</head>


<body class="login page-">
    


<!-- Page Container -->
<div id="page-container" class="login">

	<!-- Main Container -->
    <main id="main-container">

        <!-- Page Content -->
        <div class="bg-image bg-1">
			<div class="row no-gutters">
                <!-- Main Section -->
                <div class="hero-static col-sm-10 col-lg-6 col-xl-5 d-flex align-items-center bg-white">
                    <div class="p-3 w-100">
                        <!-- Header -->
						<div class="row mb-5 no-gutters justify-content-center">
							<div class="col-8 col-lg-5">
								<img src="/assets/upstream/img/logo.png" alt="Upstream Logo" style="width:100%; height: auto;">
							</div>
						</div>						
						
						<div class="tab-content">
							
							<div class="tab-pane fade show active" id="tab-login" role="tabpanel">
								<div class="mb-2 text-center">
									<h1 class="text-uppercase font-w700 font-size-sm text-muted mb-0">Sign In</h1>
									<p class="text-muted mb-0">Secure login to Upstream+</p>
								</div>

								<div class="row no-gutters justify-content-center py-4">
									<div class="col-sm-10 col-xl-8">
										<form class="js-validation-signin" action="https://blog.worldfishcenter.org/login" method="POST">
											<input type="hidden" name="_token" value="ALtUqAXypxSOBiB5B8QRgrEbqPurHm0B7efUcEKc" autocomplete="off">

											<a href="https://blog.worldfishcenter.org/login/google" id="google-btn" data-toggle="click-ripple" class="btn btn-hero-secondary btn-block mb-3"><span class="fab fa-fw fa-google mr-2"></span> Login with Google</a>
											<a href="https://blog.worldfishcenter.org/signinmicrosoft" data-toggle="click-ripple" class="btn btn-hero-secondary btn-block mb-3"><span class="fab fa-fw fa-microsoft mr-2" style="font-weight: lighter"></span> Login with Microsoft</a>
											<div class="py-3">
																																																<div class="form-group">
																																							<input type="email" class="form-control form-control-lg form-control-alt" id="email" name="email" value="" placeholder="Email Address" autocomplete="username"  required>
																									</div>
												<div class="form-group" style="position: relative">
													 
													<input type="password" class="form-control form-control-lg form-control-alt" id="password" name="password" placeholder="Password" autocomplete="current-password"  required>
																										<button type="button" id="view-hide-password" class="btn" title="Show/Hide Password" aria-hidden="true" aria-label="Show password as plain text.  Warning: this will display your password on the screen."><span class="far fa-eye-slash"></span></button>
												</div>
												<div class="form-group">
													<button id="submit-login"  type="submit" class="btn btn-block btn-hero-lg btn-hero-success" data-toggle="click-ripple">
														<i class="fa fa-fw fa-sign-in-alt mr-1"></i> Login
													</button>

													<p class="mt-3 mb-0 d-xl-flex justify-content-xl-between">
														<a class="btn btn-sm btn-light d-block d-lg-inline-block mb-1" href="https://blog.worldfishcenter.org/password/reset">
															<i class="fa fa-exclamation-triangle text-muted mr-2"></i>Forgot password
														</a>
														<a class="btn btn-sm btn-light d-block d-lg-inline-block mb-1" data-href="https://blog.worldfishcenter.org/payment/setup" href="#"><!-- Disabled, for now, on purpose -->
															<i class="fa fa-external-link-alt text-muted mr-2"></i>Sign-up
														</a>
													</p>
												</div>
																																			</div>
										</form>
										<ul class="list-inline" style="font-size: 0.8rem;">
											<li class="list-inline-item"><a href="https://upstreamreporting.app/support/?p=16988" rel="noopener noreferrer" target="_blank">Privacy</a></li>
											<li class="list-inline-item"><a href="https://upstreamreporting.app/support/?p=16992" rel="noopener noreferrer" target="_blank">Terms</a></li>
											<li class="list-inline-item"><a href="https://upstreamoga.com/contact-us/" rel="noopener noreferrer" target="_blank">Contact</a></li>
										</ul>
									</div>
								</div>
								<!-- END Sign In Form -->
							</div><!-- END tab-pane -->
							
							<div class="tab-pane fade" id="tab-social-login" role="tabpanel">
								<div class="mb-2 text-center">
									<h1 class="text-uppercase font-w700 font-size-sm text-muted mb-0">Sign In with social profile</h1>
								</div>

								<!-- Social Signin -->
								<div class="row no-gutters justify-content-center">
									<div class="col-sm-8">
										
										<div class="form-group">
											<p class="mt-3 mb-0 d-xl-flex justify-content-xl-between">
												<a class="btn btn-sm btn-light d-block d-lg-inline-block mb-1" href="https://blog.worldfishcenter.org/password/reset">
													<i class="fa fa-exclamation-triangle text-muted mr-1"></i> Forgot password
												</a>
												<a href="#tab-login" data-toggle="tab" class="btn btn-sm btn-light d-block d-lg-inline-block mb-1  tab-linker" aria-controls="tab-login">
													<i class="fa fa-envelope text-muted mr-1"></i> Login with Email
												</a>
											</p>
										</div>
										
									</div>
								</div>
								<!-- END Social Signin -->
							</div><!-- END tab-pane -->
							
						</div><!-- END Tab-Content -->

						
                    </div>
					
					<style>
						#alert-gdpr{position: absolute; bottom: 0; left: 0; margin-bottom: 0; padding-right: 1.25rem; padding-top: 1.25rem; padding-bottom: 1.25rem; z-index:1;}
						#alert-gdpr p{margin-bottom: 0.75rem;}
						.alert-default{background-color:rgba(244, 246, 250,0.8); border-color:#f4f6fa;}
						.alert-default.fade.show{opacity: 1;}
					</style>
					<div id="alert-gdpr" class="alert alert-default d-xs-none alert-dismissible fade" role="alert">
						<p><b>Best Possible Experience</b><br />We use Cookies to offer you a better user experience, analyze performance, and personalize the way you like to view things with just three tiny cookies—but only if you click the consent button below.</p>
						<button id="cookies-accept" type="button" class="btn btn-xs btn-success float-right" aria-label="Accept"><span class="fa fa-check mr-2"></span>Accept Cookies</button>
					</div>
					
                </div>
                <!-- END Main Section -->

                <!-- Meta Info Section -->
                <div class="hero-static col-md-6 col-xl-7 d-none d-md-flex align-items-md-end justify-content-md-end text-md-center">
					<div class="p-3">
						<h2 class="display-5 text-danger text-shadow mb-0" style="text-shadow: 1px 1px 1px rgb(0 0 0 / 20%); display: none;">Helping business leaders and teams harness proven strategies and tactis to successfully execute their mission, have fun, and to greatly enhance what's most important in their life.</h2>
						<p class="text-white-75 text-shadow mb-0">Copyright &copy; <span data-toggle="year-copy"></span></p>
					</div>
				</div>
                <!-- END Meta Info Section -->
            </div>
        </div>
        <!-- END Page Content -->

    </main>
	<!-- END Main Container -->
	
	<!-- Web App Install Nag; Visible only on xs devices -->
	<div id="webapp-install-prompt" class="d-block d-sm-none" style="bottom:-200px;">
		<div class="alert alert-secondary alert-dismissible fade" role="alert">
			<p class="mb-2 display-6"><strong>Install as Web App?</strong></p>
			<p class="mb-2">Tap the <img src="media/images/share-icon.png" alt="share" class="mx-1" /> icon and tap <b>Add To Home Screen</b> to install.</p>
			<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true" class="si si-close"></span></button>
		</div>
	</div>

</div>
<!-- END Page Container -->



    <!-- Chat Assistant Component -->
    
    <script type="text/javascript"
        src="https://blog.worldfishcenter.org/js/custom/pace.min.js?v=1771595972"></script>
    <script type="text/javascript"
        src="https://blog.worldfishcenter.org/js/dashmix.app.js?v=1771595972"></script>
    <script type="text/javascript"
        src="https://blog.worldfishcenter.org/js/pages/be_ui_icons.min.js?v=1771595972">
    </script>
    <script src="/js/MicrosoftTeams.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            function initSearch(search = '') {
                let index = 0;
                $('#company-list').find('.list-group-item').each(function() {
                    if ($(this).text().toLowerCase().includes(search.toLowerCase()) && index < 10) {
                        $(this).css('display', '')
                        index++;
                    } else {
                        $(this).css('display', 'none')
                    }
                })
            }

            initSearch()

            $('#search-company').keyup(function(e) {
                initSearch(e.target.value)
            })
        })


        microsoftTeams.initialize();
        microsoftTeams.getContext(function(context) {

            getToken()
            // Store context or call backend with context info
        });

        // Example of getting an AAD token via Teams SSO
        function getToken() {
            microsoftTeams.authentication.getAuthToken({
                successCallback: function(token) {
                    // send to backend for validation/exchange
                    fetch('/teams/validateToken', {
                        method: 'POST',
                        headers: {
                            'Content-Type': 'application/json'
                        },
                        body: JSON.stringify({
                            access_token: token
                        })
                    }).then(res => res.json()).then(res => {
                        if (res.ok) {
                            window.location.href = '/'
                        }
                    });
                },
                failureCallback: function(err) {
                    console.error('getAuthToken error', err);
                }
            });
        }
    </script>

    <script src="https://blog.worldfishcenter.org/js/plugins/CDN/npm/js-cookie/3.0.1/dist/js.cookie.min.js?v=1771595972"></script>
<script>
	$( document ).ready(function() {

		function isRunningStandalone() {
			return window.matchMedia("(display-mode: standalone)").matches;
		}
		
		$('#cookies-accept').click(function() {
			Cookies.set('upstream-cookies-accept', 'yes', { expires: 90 });
			$('#alert-gdpr').fadeOut('fast');
		});
		if(Cookies.get('upstream-cookies-accept') != 'yes'){
			if($('#alert-gdpr').length) {
				setTimeout(function() {
					$('#alert-gdpr').addClass('show');
				}, 800);
			}
		} else {
			// See: https://github.com/jdmdigital/ps-titus/issues/650
			$('#alert-gdpr').remove();
			
			// Drop Brand Cookie for KB
			Cookies.set('securedby', 'upstream', { expires: 90 });
			
			// If Cookie accepted and NOT already in web app mode, show the nag.
			if (!isRunningStandalone()) {
				$('#webapp-install-prompt .alert').addClass('show');
				$('#webapp-install-prompt').animate({
					bottom: 0,
				},500);
			}
		}
		
		// https://github.com/jdmdigital/ps-titus/issues/2437
		$("#view-hide-password").click(function() {
			if($("#view-hide-password").hasClass('btn-shown')) {
				$("#view-hide-password").removeClass('btn-shown');
				$("input#password").attr("type","password");
			} else {
				$("#view-hide-password").addClass('btn-shown');
				$("input#password").attr("type","text");
			}
		});

		var sessionCookie = "upstreamreporting_app_session";
		if(!Cookies.get(sessionCookie)) {
				$('#session-cookie-warning').show();
		}

		$('#token-login-link').click(function(){
			if(document.requestStorageAccess) {
				document.requestStorageAccess()
							.then(() => window.location.href = '/')
							.catch(() => {
								alert("Please enable third-party cookies or open /sandbox in a new tab.");
							});
			}
			
		});

		
	});
</script>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-6LTTQNT5XC"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'G-6LTTQNT5XC');
</script>

    <!-- Google tag (gtag.js) -->
	<script async src="https://www.googletagmanager.com/gtag/js?id=G-6LTTQNT5XC"></script>
	<script>
	  window.dataLayer = window.dataLayer || [];
	  function gtag(){dataLayer.push(arguments);}
	  gtag('js', new Date());

	  gtag('config', 'G-6LTTQNT5XC');
	</script>
    <script>
        function checkSession() {
            fetch('/check-session')
                .then(response => response.json())
                .then(data => {
                    if (!data.authenticated) {
                        window.location.href = '/login'; // Redirect to login page
                    }
                })
                .catch(error => console.error('Error:', error));
        }

        let timeout = window.location.href.includes('FormQRCode') ? 3600 * 3 * 1000 : 60 * 5 * 1000

        // Check session every 5 minutes
        setInterval(checkSession, timeout); // 5 minutes
    </script>
    <!-- Scripts -->
    </div>
</body>

</html>
