/** * @return string */ protected function startCourseOverWsdl() { $courseId = ( isset( $_POST['courseid'] ) && filter_var($_POST['courseid'], FILTER_VALIDATE_REGEXP, SecurityTool::$ELEARNING_COURSEID_REGEXP) ) ? $_POST['courseid'] : null; $soapUrl = SolrSafeOperatorHelper::feature('OnlineVortrageSettings', 'WsdlUrl'); $credentialLogin = SolrSafeOperatorHelper::feature('OnlineVortrageSettings', 'WsdlLogin'); $credentialPassword = SolrSafeOperatorHelper::feature('OnlineVortrageSettings', 'WsdlPassword'); $useLocale = SolrSafeOperatorHelper::feature('OnlineVortrageSettings', 'UseLocale'); $locale = SolrSafeOperatorHelper::feature('OnlineVortrageSettings', 'Locale'); $credentials = array( 'login' => $credentialLogin, 'password' => $credentialPassword, ); $params = array( array( 'username' => MMUsers::getCurrentUserId(), 'courseID' => $courseId, ) ); if ( $useLocale ) { $params[0]['locale'] = $locale; } try { $soap = new SoapClientAuth( $soapUrl, $credentials ); $result = $soap->__soapCall( 'UnivadisEncrypt', $params ); if ( isset($result) && isset($result->return) ) { $url = $result->return; if ( strpos($url, 'http') !== 0 || strpos($url, 'https') !== 0) { $url = 'http://' . $url; } if ( !ContextTool::instance()->isMobile() ) { $url = urlencode( urlencode( $url ) ); $url = '/external/deeplink?deeplink=' . $url . '&exit_strategy=0'; } return $url; } } catch ( SoapFault $f ) { } return false; }