Esempio n. 1
0
 public Course( SessionParameters parameters )
 {
     m_parameters = parameters;
 }
Esempio n. 2
0
 public Course(SessionParameters parameters)
 {
     m_parameters = parameters;
 }
        public ActionResult Index( FormCollection collection )
        {
            if( !IsOAuthSignatureValid() ) {

                ViewBag.ErrorMessage = "Invalid OAuth signature.";
                return View( "BookError" );
            }

            var parameters = new SessionParameters { ClassOrgId = collection["context_id"]   };

            if( parameters.ClassOrgId == null )  {

                ViewBag.ErrorMessage = "Invalid class org ID.";
                return View( "BookError" );
            }

            parameters.CanEdit = CanEdit( collection["roles"] );

            Uri redirectUri;

            try {

                Uri requestUrl = new Uri( collection["lis_outcome_service_url"] );
                parameters.LtiUri = new UriBuilder(
                    requestUrl.Scheme,
                    requestUrl.Host,
                    requestUrl.Port
                ).Uri;

                Session[ SESSION_KEY ] = parameters;

                redirectUri = GenerateAuthRedirect( parameters.LtiUri, Request.Url );

            } catch( ArgumentNullException e ) {

                ViewBag.ErrorMessage = "Invalid request URL. " + e.Message;
                return View( "BookError" );
            }

            return Redirect( redirectUri.ToString( ));
        }