Added BuyCoursePlugin validation in session About

pull/2487/head
José Loguercio 9 years ago
parent 4305c9e3aa
commit cc23996cb4
  1. 13
      main/auth/inscription.php
  2. 11
      main/session/about.php

@ -61,6 +61,10 @@ $user_already_registered_show_terms = false;
if (api_get_setting('allow_terms_conditions') == 'true') {
$user_already_registered_show_terms = isset($_SESSION['term_and_condition']['user_id']);
}
$sessionPremiumChecker = Session::read('SessionIsPremium');
$sessionId = Session::read('sessionId');
// Direct Link Session Subscription feature #12220
$sessionRedirect = isset($_REQUEST['s']) && !empty($_REQUEST['s']) ? $_REQUEST['s'] : null;
$onlyOneCourseSessionRedirect = isset($_REQUEST['cr']) && !empty($_REQUEST['cr']) ? $_REQUEST['cr'] : null;
@ -629,7 +633,7 @@ if ($form->validate()) {
}
// Saving user to Session if it was set
if (!empty($sessionToRedirect)) {
if (!empty($sessionToRedirect) && !$sessionPremiumChecker) {
$sessionInfo = api_get_session_info($sessionToRedirect);
if (!empty($sessionInfo)) {
SessionManager::subscribe_users_to_session(
@ -852,6 +856,13 @@ if ($form->validate()) {
}
}
if ($sessionPremiumChecker && $sessionId) {
header('Location:' . api_get_path(WEB_PLUGIN_PATH) . 'buycourses/src/process.php?i=' . $sessionId . '&t=2');
Session::erase('SessionIsPremium');
Session::erase('sessionId');
exit;
}
SessionManager::redirectToSession();
$form_data = CourseManager::redirectToCourse($form_data);

@ -6,6 +6,7 @@ use Chamilo\CourseBundle\Entity\CCourseDescription;
use Chamilo\CoreBundle\Entity\SequenceResource;
use Chamilo\UserBundle\Entity\Repository\UserRepository;
use Chamilo\UserBundle\Entity\User;
use ChamiloSession as Session;
/**
* Session about page
@ -193,12 +194,20 @@ $template->assign(
);
$plugin = BuyCoursesPlugin::create();
$checker = $plugin->get('paypal_enable') || $plugin->get('transfer_enable') || $plugin->get('culqi_enable');
if ($checker) {
Session::write('SessionIsPremium', true);
Session::write('sessionId', $sessionId);
}
$redirectToSession = api_get_configuration_value('allow_redirect_to_session_after_inscription_about');
$redirectToSession = $redirectToSession ? '?s=' . $sessionId : false;
$coursesInThisSession = SessionManager::get_course_list_by_session_id($sessionId);
$coursesCount = count($coursesInThisSession);
$redirectToSession = $coursesCount == 1 ? $redirectToSession . '&cr=' . array_values($coursesInThisSession)[0]['directory'] : $redirectToSession;
$redirectToSession = $coursesCount == 1 && $redirectToSession ? $redirectToSession . '&cr=' . array_values($coursesInThisSession)[0]['directory'] : $redirectToSession;
$template->assign('redirect_to_session', $redirectToSession);
$template->assign('courses', $courses);

Loading…
Cancel
Save