meiji-univ.ap.panopto.com
Open in
urlscan Pro
18.140.156.106
Public Scan
Submitted URL: http://meiji-univ.ap.panopto.com/
Effective URL: https://meiji-univ.ap.panopto.com/Panopto/Pages/Auth/Login.aspx?panoptoState=830280bc-8bd2-49b7-87a6-8ea79dfe36c5
Submission: On April 08 via api from US — Scanned from SG
Effective URL: https://meiji-univ.ap.panopto.com/Panopto/Pages/Auth/Login.aspx?panoptoState=830280bc-8bd2-49b7-87a6-8ea79dfe36c5
Submission: On April 08 via api from US — Scanned from SG
Form analysis
1 forms found in the DOMPOST ./Login.aspx?panoptoState=830280bc-8bd2-49b7-87a6-8ea79dfe36c5
<form method="post" action="./Login.aspx?panoptoState=830280bc-8bd2-49b7-87a6-8ea79dfe36c5" id="rootForm">
<div class="aspNetHidden">
<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="">
<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="">
<input type="hidden" name="__LASTFOCUS" id="__LASTFOCUS" value="">
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE"
value="/wEPDwUKLTQwMDIzNTY5NQ8WAh4TVmFsaWRhdGVSZXF1ZXN0TW9kZQIBFgJmD2QWAgIBD2QWBAIKDw8WAh4HVmlzaWJsZWdkFgJmDxYCHwFoFhBmDxYCHglpbm5lcmh0bWwFO0lmIHlvdSBoYXZlIFBhbm9wdG8gaW5zdGFsbGVkLCB5b3UgY2FuIGxhdW5jaCBpdCBmcm9tIGhlcmUuZAIBDxYCHgRocmVmBUxodHRwczovL21laWppLXVuaXYuYXAucGFub3B0by5jb20vUGFub3B0by9QYWdlcy9SZWNvcmRlci9MYXVuY2hSZWNvcmRlci5hc3B4ZAICDxYCHwIFaUlmIFBhbm9wdG8gZGlkbuKAmXQgbGF1bmNoLCBlbnN1cmUgeW914oCZdmUgZG93bmxvYWRlZCBhbmQgaW5zdGFsbGVkIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiBQYW5vcHRvIGJlbG93LmQCAw8WAh8DBXxodHRwczovL21laWppLXVuaXYuYXAucGFub3B0by5jb20vUGFub3B0by9DYWNoZS8xNC4xNi4wLjAwMDE1L1NvZnR3YXJlL1Bhbm9wdG9SZWNvcmRlci5leGU/YXJjaD1YODYmYW1wO3VzZUN1c3RvbUJpbmFyeT1UcnVlZAIEDxYCHwMFfmh0dHBzOi8vbWVpamktdW5pdi5hcC5wYW5vcHRvLmNvbS9QYW5vcHRvL0NhY2hlLzE0LjE2LjAuMDAwMTUvU29mdHdhcmUvUGFub3B0b1JlY29yZGVyLmV4ZT9hcmNoPUFtZDY0JmFtcDt1c2VDdXN0b21CaW5hcnk9VHJ1ZWQCBQ8WAh8DBYABaHR0cHM6Ly9tZWlqaS11bml2LmFwLnBhbm9wdG8uY29tL1Bhbm9wdG8vQ2FjaGUvMTQuMTYuMC4wMDAxNS9Tb2Z0d2FyZS9QYW5vcHRvJTIwUmVjb3JkZXIucGtnP2FyY2g9Tm9uZSZhbXA7dXNlQ3VzdG9tQmluYXJ5PVRydWVkAgYPZBYGZg8WAh8DBYIBaHR0cHM6Ly9tZWlqaS11bml2LmFwLnBhbm9wdG8uY29tL1Bhbm9wdG8vQ2FjaGUvMTQuMTYuMC4wMDAxNS9Tb2Z0d2FyZS9QYW5vcHRvUmVtb3RlUmVjb3JkZXIuZXhlP2FyY2g9WDg2JmFtcDt1c2VDdXN0b21CaW5hcnk9VHJ1ZWQCAQ8WAh8DBYQBaHR0cHM6Ly9tZWlqaS11bml2LmFwLnBhbm9wdG8uY29tL1Bhbm9wdG8vQ2FjaGUvMTQuMTYuMC4wMDAxNS9Tb2Z0d2FyZS9QYW5vcHRvUmVtb3RlUmVjb3JkZXIuZXhlP2FyY2g9QW1kNjQmYW1wO3VzZUN1c3RvbUJpbmFyeT1UcnVlZAICDxYCHwIFbTxhIGhyZWY9J21haWx0bzonPkNvbnRhY3QgeW91ciBhZG1pbmlzdHJhdG9yPC9hPiB0byBsZWFybiBtb3JlIGFib3V0IGhvdyB0byBtYWtlIHVzZSBvZiB0aGlzIFBhbm9wdG8gZmVhdHVyZS5kAgcPFgIfAwWKAWh0dHBzOi8vbWVpamktdW5pdi5hcC5wYW5vcHRvLmNvbS9QYW5vcHRvL0NhY2hlLzE0LjE2LjAuMDAwMTUvU29mdHdhcmUvUGFub3B0b1JlY29yZGVyTm9JbnN0YWxsYXRpb24uemlwP2FyY2g9WDg2JmFtcDt1c2VDdXN0b21CaW5hcnk9VHJ1ZWQCCw9kFgJmD2QWAmYPZBYCAgEPZBYCZg9kFgJmD2QWBgIFD2QWBAIBD2QWAgIBD2QWBAIBD2QWAgIBDxAPFgIeC18hRGF0YUJvdW5kZxYCHgphcmlhLWxhYmVsBQ1TaWduIGluIHVzaW5nEBUCB1Bhbm9wdG8fTWVpamkgVW5pdmVyc2l0eSBTaW5nbGUgU2lnbi1PbhUCD3Bhbm9wdG9pbnRlcm5hbAVtZWlqaRQrAwJnZ2RkAgMPZBYCZg9kFgYCAQ8PFgIfAWhkFgZmDw9kFgQeC3BsYWNlaG9sZGVyBQhVc2VybmFtZR8FBQhVc2VybmFtZWQCAQ8PZBYEHwYFCFBhc3N3b3JkHwUFCFBhc3N3b3JkZAICDxAPFgIeB0NoZWNrZWRoZBYCHgVjbGFzcwUObWF0ZXJpYWwtaWNvbnNkZAIDDw8WAh8BaGQWAgIBDw9kFgQfBgUFRW1haWwfBQUIVXNlcm5hbWVkAgUPDxYCHwFnZBYCAgEPD2QWAh4Hb25jbGljawWWAXdpbmRvdy5sb2NhdGlvbi5zZWFyY2ggKz0gKCh3aW5kb3cubG9jYXRpb24uc2VhcmNoLmluZGV4T2YoJz8nKSA9PSAtMSkgPyAnPycgOiAnJicpICsgJ2luc3RhbmNlPW1laWppJzsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO2QCAw9kFgICAQ9kFgICAQ9kFgICAQ8PZBYEHwYFCFVzZXJuYW1lHwUFCFVzZXJuYW1lZAIHDxYCHwFoFgQCAQ9kFghmDw8WAh4EVGV4dGRkZAICD2QWAmYPDxYCHwoFB1Bhbm9wdG9kZAIDDxYCHgVzdHlsZQUNZGlzcGxheTpub25lOxYCZg8PFgIfCmRkZAIED2QWAmYPDxYCHwoFBlZpZXdlcmRkAgUPZBYCAgIPZBYIAgEPD2QWBB8GBRBDdXJyZW50IHBhc3N3b3JkHwUFEEN1cnJlbnQgcGFzc3dvcmRkAgMPD2QWBB8GBQxOZXcgcGFzc3dvcmQfBQUMTmV3IHBhc3N3b3JkZAIFDw9kFgQfBgUQQ29uZmlybSBwYXNzd29yZB8FBRBDb25maXJtIHBhc3N3b3JkZAIHD2QWBAIBDw9kFgQfBgURU2VjdXJpdHkgcXVlc3Rpb24fBQURU2VjdXJpdHkgcXVlc3Rpb25kAgMPD2QWBB8GBQ9TZWN1cml0eSBhbnN3ZXIfBQUPU2VjdXJpdHkgYW5zd2VyZAIJD2QWAgIBDxYCHwFoZGSSlk+AmQOMopL6D+JpzUI1RUttnqtTERnbiTr2beQLbw==">
</div>
<script type="text/javascript">
//<![CDATA[
var theForm = document.forms['rootForm'];
if (!theForm) {
theForm = document.rootForm;
}
function __doPostBack(eventTarget, eventArgument) {
if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
theForm.__EVENTTARGET.value = eventTarget;
theForm.__EVENTARGUMENT.value = eventArgument;
theForm.submit();
}
}
//]]>
</script>
<script src="/Panopto/WebResource.axd?d=nF4vyWFqHBntNr9T_UBEcreHuDD0CLOC1IkXdYuDQHgLL-8yi6S2x19GNdDZlfx3vIE2kXm3FWa7Y1J48khWL_igPiH7CIB8sW_JxBPzVKw1&t=638286065964787378" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/MicrosoftAjax/MicrosoftAjax.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/MicrosoftAjax/MicrosoftAjaxWebForms.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/MicrosoftAjax/start.js" type="text/javascript"></script>
<script src="/Panopto/ScriptResource.axd?d=1gvto_FukFfGx6mRxzEfpZm_uP4FA9Z-xE9DK299V77m534oaqIs7H_QN_kIhvwSy8WcdgFoL5RvXzOtnDQSmBhaJS4VndjKMBA0cNMKb9q9ysSeNLI0vif5MdssFlfTUSMozgeJTzuXqET1x14Pjg2&t=1300d8b1" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Data.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Events.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Util.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/RenderBranding.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Application.js" type="text/javascript"></script>
<script src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/MicrosoftAjax/extended/ExtendedControls.js" type="text/javascript"></script>
<div class="aspNetHidden">
<input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="D77E32DE">
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION"
value="/wEdAAcA5YkJxMYoTcmCNgFBHbR46NcOqBVf9h86JOOauF9Ei6/n6RfadRjx4dgq5eWj6G7yevHnYGGAZlfT9/MxgJNUvp580jUkRTbt+a7NMDIpBmGSC16UcYQafVpheuJpFlubXQplZtPuCZt2iRBVNjrgazAWpIUplb1cRna1hJrIccQvP8p9HZzGE4mLOMcMxJo=">
</div>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/jQuery/jquery-ui.min.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/jQuery/datepicker-localization.min.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/jquery_tag_it/jquery.tag-it.min.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/waveform/waveform.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/tether/tether.min.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/tether-shepherd/shepherd.min.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Bundles/Core.js"></script>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Bundles/commons.js"></script>
<script type="text/javascript">
//<![CDATA[
Sys.WebForms.PageRequestManager._initialize('ctl00$ScriptManagerControl', 'rootForm', ['tctl00$PageContentPlaceholder$updatePanel', 'PageContentPlaceholder_updatePanel', 'fctl00$PageContentPlaceholder$loginControl$loginUpdatePanel',
'PageContentPlaceholder_loginControl_loginUpdatePanel', 'fctl00$PageContentPlaceholder$loginControl$dropDownPanel', 'PageContentPlaceholder_loginControl_dropDownPanel'
], ['ctl00$ScriptManagerControl', 'ScriptManagerControl', 'ctl00$PageContentPlaceholder$loginControl$providerDropdown', 'providerDropdown'], [], 90, 'ctl00');
//]]>
</script>
<input type="hidden" name="ctl00$ScriptManagerControl" id="ScriptManagerControl">
<script type="text/javascript">
//<![CDATA[
Sys.Application.setServerId("ScriptManagerControl", "ctl00$ScriptManagerControl");
Sys.Application._enableHistoryInScriptManager();
//]]>
</script>
<iframe id="__historyFrame" src="/Panopto/ScriptResource.axd?d=ICPDhtdJh5PHTmT60AyK2rZ2JeeClILnB5UsSKfWuomvZ09HIpTURik0b1xgE93gOO6rV1B1qieuK_6O0vLxxx6XgBdZ_dxpZ5HkEOchQRA1" style="display:none;">
</iframe>
<script type="text/javascript">
// Render branding synchronously with script load to avoid rendering unbranded assets
Panopto.Branding.renderBrandingColors(Panopto.branding.accentColor, Panopto.branding.isAccentColorDefault);
// Enable client-side browser history.
Sys.Application.set_enableHistory(true);
// Load all required scripts.
Sys.require([Sys.components.watermark,
Sys.components.modalPopup,
Sys.components.dataView,
Sys.components.dataContext,
Sys.scripts.WebServices,
Sys.scripts.Templates
]);
Sys.onReady(function() {
// This provides legacy behavior to integrations hosting Panopto within an iframe.
// These integrations rely on this hack to enable them to use the same URL for hosting content
// within the external site and loading the content in a new top-level browsing context.
// We need condition for teamsApp because teams application on mobile devices doesn't use iFrame
// as it is case with desktop devices, so we need to prevent cleaning embedded flags.
if (!PanoptoCore.Browser.inIframe() && !Panopto.teamsApp?.isFromTeams) {
// Remove the embedded mode classes from the page wrapper element (if any)
$("#wrapper").removeClass("embedded embedded-nav mini-embedded");
// Reset our global embed mode flags
Panopto.isEmbedded = false;
Panopto.embeddedModeView = Panopto.Data.EmbeddedView.None;
}
Panopto.Application.defaultInstance.init();
Panopto.Branding.createLogo($("#logoContainer.large-logo"), Panopto.branding.largeLogo,
/*linksEnabled=*/
true);
const cookieConsentBanner = Panopto.CookieConsentBanner(document.getElementById("cookieConsentBannerWrapper"), {
cookieConsentEnabled: Panopto.features.cookieConsentEnabled,
isAuthenticated: Panopto.user.isAuthenticated,
cookieConsentExpirationMinutes: 525600,
cookieConsentDate: Panopto.user.cookieConsentDate,
darkMode: window.location.pathname.indexOf("Capture.aspx") !== -1,
isEmbedded: PanoptoCore.Browser.inIframe() || window.location.pathname.indexOf("/Pages/Mobile/") !== -1,
isLandscape: PanoptoCore.Browser.isLandscape(),
scaleForViewport: false,
resources: Panopto.GlobalResources,
userService: PanoptoTS.API.Rest.ServiceFactory.getUserService(),
onCookieConsentChange: function(granted) {
// Initialize GoogleAnalytics when consent is granted
if (granted) {
Panopto.GoogleAnalytics.initialize();
}
cookieConsentBanner.setProps({
cookieConsentDate: new Date()
});
}
});
PanoptoCore.Browser.attachOrientationChangeListener((isLandscape) => {
cookieConsentBanner.setProps({
isLandscape: isLandscape
});
});
});
// Configure the Public API module using the app root
Panopto.Core.ServiceInterface.baseUrl = '/Panopto';
Panopto.Core.ServiceInterface.uriScheme = Panopto.uriScheme;
</script>
<div id="wrapper" class="no-min-width">
<div class="shepherd-overlay"></div>
<div class="shepherd-overlay-transparent"></div>
<div id="notificationBanner" role="alert" aria-label="Panopto notification" aria-describedby="notificationMessageText" tabindex="-1" style="display: none">
<div id="notificationBannerContent">
<div id="notificationMessage">
<div id="notificationContainer">
<div id="notificationIcon"></div>
<div id="notificationMessageText"></div>
</div>
</div>
<div id="dismissButtonCell">
<div id="dismissButton" class="material-icons" role="button" aria-label="Close alert" tabindex="0"> close </div>
</div>
</div>
</div>
<!-- end header -->
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Login.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// Add the "no-min-width" class to avoid the login page being off center in embedded views.
$("#wrapper").addClass("no-min-width");
var bounceUrl = '';
var embedLoginUrl = '';
var queryObject = Panopto.Core.StringHelpers.parseQueryString(location.search.slice(1));
var isFromTeams = 'False' === 'True';
var isEmailLoginFailed = 'False' === 'True';
const redirectToEmbedLoginDueToChips = false;
if (isEmailLoginFailed) {
// Remove the token from the query parameters. This is needed so we don't bounce
// into a loop when the user tries to sign in again.
Panopto.Core.UrlHelpers.removeParams();
}
if (bounceUrl) {
var returnUrlEscaped = '';
if (PanoptoCore.Browser.inIframe()) {
// No bounce back is possible from iFrames. Go to the iFrame login URL instead.
bounceUrl = embedLoginUrl;
}
if (isFromTeams) {
// In Teams, bounceUrl is opened in a popover
var bounceUrlInPopover = Panopto.Core.StringHelpers.setQueryParameters(embedLoginUrl, {
isFromLoginPopover: true,
isFromTeams: true
}, false);
// If from Teams, utilize its SDK to launch a popover window to allow auth requests
Panopto.MicrosoftTeams.initialize(function() {
Panopto.MicrosoftTeams.authentication.authenticate({
url: bounceUrlInPopover,
height: 1000,
width: 800,
successCallback: function(result) {
window.location.href = decodeURIComponent(queryObject.ReturnUrl);
},
failureCallback: function(reason) {
window.location.href = Panopto.Core.StringHelpers.setQueryParameters(decodeURIComponent(queryObject.ReturnUrl), {
preventAutoBounceLogin: true
}, false);
}
});
});
} else {
window.location.href = bounceUrl;
}
} else if (isFromTeams) {
// To disable the loading animation
Panopto.MicrosoftTeams.initialize();
Panopto.MicrosoftTeams.appInitialization.notifySuccess();
}
var handleResize = function() {
// Determine the margin to add to the login controls so that they appear centered vertically with
// respect to the page but also prevent overflowing into the logo with shorter window heights
var margin = Math.max(0,
// 433px is the maximum height of the login control, we need to use that height in all
// cases so the controls don't shift around during the workflow
($(window).height() - 433) / 2 - $("#logoContainer").outerHeight(true));
$(".login-content").css("margin-top", margin + "px");
};
// Center login-control in case if EULA is not displayed
var isEulaFormDisplayed = $(".eula-content").length > 0;
if (!isEulaFormDisplayed) {
$(window).resize(handleResize);
handleResize();
}
if (Panopto.features.enableEmbedApi && PanoptoCore.Browser.inIframe()) {
Panopto.UI.Login.fireIframeLoginShown();
}
// If we use CHIPS (partitioned cookies) and page is directly embedded to site,
// redirect to EmbedLogin page for user authentification.
if (PanoptoCore.Browser.inIframe() && redirectToEmbedLoginDueToChips) {
const redirectUrl = Panopto.Core.StringHelpers.addQueryParameter(`${window.location.origin}/Panopto/Pages/Auth/EmbedLogin.aspx`, {
BounceUrl: `${window.location.origin}/Panopto/Pages/Auth/Login.aspx`,
// Use `panoptoState` instead of `ReturnUrl` if enabled.
...(Panopto.features.usePanoptoState ? {
panoptoState: queryObject.panoptoState
} : {
ReturnUrl: decodeURIComponent(queryObject.ReturnUrl)
})
});
window.location.replace(redirectUrl);
}
});
</script>
<div class="login-wrapper ">
<div id="logoContainer" class="large-logo">
<div class="customer-logo">
<div class="main-logo">
<a id="siteLogo_customerLogoLink" title="Everything" href="/Panopto/Pages/Sessions/List.aspx" target="_top" aria-label="Everything" tabindex="0">
<img src="/Panopto/ContentCache/638175552583047507/_branding/5fb09d17-7c91-4c9b-9164-afd70028d8b7/638175546201810903_largelogo.png" alt="" aria-hidden="true">
</a>
</div>
<div class="cobrand">
<a id="panoptoLogoLink" class="cobrand-link" href="https://www.panopto.com" target="_blank">
<span>Powered by Panopto</span>
</a>
</div>
</div>
</div>
<div id="PageContentPlaceholder_updatePanel" class="login-content" style="margin-top: 239px;">
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Login.js"></script>
<script type="text/javascript">
var Panopto = Panopto || {};
Panopto.Login = Panopto.Login || {};
Panopto.Login.setUpClientHandlers = function() {
// Activate LinkButtons with space bar
$(".login-form .standard-button").not("[href='#']").off("keydown").keydown(function(e) {
if (e.keyCode === Panopto.Core.Key.Space) {
// LinkButtons have javascript to execute post-backs in href, so evaluate it to activate
eval($(this).attr("href"));
}
});
// Focus first input
$(".login-form").find("input,textarea,.standard-button").filter(":visible:first").focus();
};
Panopto.Login.checkStorageAccess = function() {
// Check for and (if necessary) request access to the cookie storage.
Panopto.UI.Login.checkStorageAccessAPI();
};
Panopto.Login.onAnalyticsEvent = function(action, source) {}
Panopto.Login.loadEula = function() {
// Render EULA to approprite div
PanoptoReactComponents.bootstrapReactComponent(PanoptoReactComponents.Control.Markdown.Markdown)(document.getElementById("eulaText"), {
contentToParse: ""
});
// Set needed EULA class to root of login form
$(".login-content").addClass("eula-content");
// Bind change event for "RequireEulaReadConfirmation" checkbox that will enable/disable Accept EULA button
// and set/remote Accept button title based if checkbox is checked or not
$('#requireEulaReadConfirmationCheckbox').change(function() {
var acceptButton = $('#AcceptEulaButton');
var eulaReadConfirmationCheckboxIsChecked = $(this).is(":checked");
// If EulaReadConfirmationCheckbox is checked enable Accept button, otherwise disable.
acceptButton.prop("disabled", !eulaReadConfirmationCheckboxIsChecked);
// If EulaReadConfirmationCheckbox is checked remove title, otherwise set title
acceptButton.attr("title", eulaReadConfirmationCheckboxIsChecked ? "" : "Please explicitly confirm that you have read the EULA by checking a checkbox.");
});
// On window resize login form has logic to move form to page center.
// We don't need this for EULA, so we will remove added margin-top (style) and window resize event
$(".login-content").removeAttr("style");
$(window).off("resize");
};
$(document).ready(function() {
// Set the return url for crosspage postbacks.
var returnUrl = $get('PageContentPlaceholder_loginControl_returnUrl');
// Wire up user settings link.
Panopto.Core.UI.Handlers.button($("#accountLink"), function() {
Panopto.Application.defaultInstance.updateState({
modalPage: "UserInfo",
modalHeader: Panopto.GlobalResources.Account,
modalParams: Panopto.Core.StringHelpers.serializeObjectToQueryString({
publicId: '',
isInternal: 'true'
})
});
$("#userMenu").hide();
});
if (!returnUrl.value) {
returnUrl.value = window.location.href;
}
$("#PageContentPlaceholder_loginControl_loginErrorMessage a").click(function(e) {
Panopto.Login.onAnalyticsEvent("login-page-sso-error-click", "signup");
})
Panopto.Login.setUpClientHandlers();
});
Panopto.Login.routeStandardLoginFromGoogleSSO = function() {
// Helper function for reseting the redirect URL when a user clicks the standard login button in a google SSO environment
// This function is only invoked in the UI where Google SSO is shown as a default option
const internalLoginParam = 'standard'
const urlParams = Panopto.Core.StringHelpers.parseQueryString(location.search, true, // urlDecode
true); // useLowerCaseKeys
if (urlParams.instance === "GoogleSSO") {
// Google's return url has the return url and panopto protection token inside the 'state' url param
// We need to extract the return url, but disregard the protection token since we are doing an internal login
const urlState = urlParams.state;
const stateQueryParams = urlState.split("&");
var returnUrl = "";
for (var i = 0; i < stateQueryParams.length; i++) {
if (stateQueryParams[i].startsWith("ReturnUrl")) {
returnUrl = decodeURIComponent(stateQueryParams[i].split("=")[1]);
}
}
// The URL may be double encoded if it was a token request originally. Check this first
// then double decode it if necessary.
if (returnUrl.indexOf("PanoptoToken") >= 0) {
returnUrl = decodeURIComponent(decodeURIComponent(returnUrl));
}
// Split the urlState at "=" since the state query param has "ReturlUrl=..." value
if (Panopto.features.panoptoState == Panopto.Core.Constants.PanoptoStateRedirectParamKey) {
Panopto.Application.setPanoptoState(returnUrl).then((result) => {
window.location.href = "?instance=" + internalLoginParam + "&panoptoState=" + result?.panoptoStateId;
});
} else {
window.location.href = "?instance=" + internalLoginParam + "&ReturnUrl=" + encodeURIComponent(returnUrl);
}
} else {
window.location.href += ((window.location.href.indexOf("?") == -1) ? "?" : "&") + "instance=" + internalLoginParam;
}
}
</script>
<div class="login-form">
<div id="PageContentPlaceholder_loginControl_loginUpdatePanel">
<input type="hidden" name="ctl00$PageContentPlaceholder$loginControl$forceStateChanged" id="PageContentPlaceholder_loginControl_forceStateChanged">
<input type="hidden" name="ctl00$PageContentPlaceholder$loginControl$returnUrl" id="PageContentPlaceholder_loginControl_returnUrl"
value="https://meiji-univ.ap.panopto.com/Panopto/Pages/Auth/Login.aspx?panoptoState=830280bc-8bd2-49b7-87a6-8ea79dfe36c5">
<div id="PageContentPlaceholder_loginControl_notLoggedInControls">
<div id="PageContentPlaceholder_loginControl_loginControls">
<h1 class="page-only">Sign in to Panopto</h1>
<h1 class="dropdown-only with-subtitle">Sign In</h1>
<h2 class="dropdown-only">to see more videos</h2>
<span id="PageContentPlaceholder_loginControl_loginErrorMessage" class="error"></span>
<div id="PageContentPlaceholder_loginControl_standardLogin">
<div id="PageContentPlaceholder_loginControl_accountControl" class="input-wrapper">
<select name="ctl00$PageContentPlaceholder$loginControl$providerDropdown" onchange="javascript:setTimeout('__doPostBack(\'ctl00$PageContentPlaceholder$loginControl$providerDropdown\',\'\')', 0)" id="providerDropdown"
aria-label="Sign in using">
<option value="panoptointernal">Panopto</option>
<option selected="selected" value="meiji">Meiji University Single Sign-On</option>
</select>
</div>
<div id="PageContentPlaceholder_loginControl_dropDownPanel">
<div id="PageContentPlaceholder_loginControl_externalLoginControls" onkeypress="javascript:return WebForm_FireDefaultButton(event, 'PageContentPlaceholder_loginControl_externalLoginButton')">
<div class="input-wrapper">
<a onclick="Panopto.Login.checkStorageAccess();window.location.search += ((window.location.search.indexOf('?') == -1) ? '?' : '&') + 'instance=meiji';
return false;" id="PageContentPlaceholder_loginControl_externalLoginButton" class="standard-button branded-button external-login" href="javascript:__doPostBack('ctl00$PageContentPlaceholder$loginControl$externalLoginButton','')">Sign in</a>
</div>
</div>
</div>
</div>
<div class="cookie-warning"> We use cookies to remember your preferences and measure how our site is used. By continuing to browse this site, you are agreeing to our use of cookies.
<br><a href="https://support.panopto.com/14/login/cookies" target="_blank">Learn more</a>
</div>
</div>
</div>
<div id="PageContentPlaceholder_loginControl_emailLoginMessage">
</div>
</div>
</div>
<div id="iframeBounceMessage" class="centered-login-message" style="display:none;"></div>
</div>
</div>
<div id="loadingMessage" style="display: none">
<div class="loading-block">
<div class="branding-color-holders spinner-background"></div>
<div class="loading-indicator branded-animation"></div>
</div>
</div>
<div id="logoutWarningMessage" class="safety-background" style="display: none;">
<span id="logoutWarningText"></span>
<span id="logoutWarningInfo" style="display: none;"></span>
<a id="logoutWarningLink"></a>
</div>
</div>
<script type="text/javascript" src="//static-assets-cdn.i.ap.panopto.com/Panopto/Cache/14.16.0.00015/Scripts/Panopto/Controls/ModalPopup.js"></script>
<div class="modal-background" style="display:none;">
<div tabindex="1"></div>
<div id="modalWindow" role="dialog" aria-modal="true" style="display:none;">
<div class="modal-border-left"></div>
<div class="modal-wrapper">
<div class="modal-header">
<div id="modalIcon"></div>
<div id="modalHeader"></div>
<a target="_blank" id="modalHelp" style="display: none">Learn more</a>
<div id="modalSpinner">
<div class="loading-block">
<div class="branding-color-holders spinner-background"></div>
<div class="loading-indicator branded-animation"></div>
</div>
</div>
<div id="closeDiv">
<a id="closeLink" class="material-icons" href="#" title="Close" aria-label="Close">close</a>
</div>
</div>
<div class="modal-view">
<ul id="modalNavigation" class="sys-template tabs" style="visibility:hidden;" role="navigation">
<li class="accented-tab"><a href="#">{binding Name, convert=displayModalPageName}</a></li>
</ul>
<div class="modal-content">
<iframe id="modalIframe" name="modalIframe" frameborder="0"></iframe>
<div id="modalContentPlaceholder"></div>
</div>
</div>
</div>
<div class="modal-border-right"></div>
</div>
<div tabindex="0"></div>
</div>
<script type="text/javascript">
//<![CDATA[
Panopto.Login && Panopto.Login.setUpClientHandlers(); //]]>
</script>
</form>
Text Content
close Powered by Panopto SIGN IN TO PANOPTO SIGN IN TO SEE MORE VIDEOS Panopto Meiji University Single Sign-On Sign in We use cookies to remember your preferences and measure how our site is used. By continuing to browse this site, you are agreeing to our use of cookies. Learn more Learn more close * {binding Name, convert=displayModalPageName}