Plugin: BuyCourses: Fix notices

pull/4546/head
Yannick Warnier 3 years ago
parent 9a70ef66e5
commit 02821cfdb9
  1. 2
      plugin/buycourses/src/buy_course_plugin.class.php
  2. 59
      plugin/buycourses/src/configure_course.php
  3. 2
      plugin/buycourses/src/configure_subscription.php

@ -3084,7 +3084,7 @@ class BuyCoursesPlugin extends Plugin
} }
/** /**
* @param array $coupon Array with at least 'discount_type' and 'discount_amount' elements * @param array|null $coupon Array with at least 'discount_type' and 'discount_amount' elements
*/ */
public function setPriceSettings(array &$product, int $productType, array $coupon = null): bool public function setPriceSettings(array &$product, int $productType, array $coupon = null): bool
{ {

@ -40,6 +40,7 @@ if (empty($currency)) {
Display::addFlash( Display::addFlash(
Display::return_message($plugin->get_lang('CurrencyIsNotConfigured'), 'error') Display::return_message($plugin->get_lang('CurrencyIsNotConfigured'), 'error')
); );
$currency = null;
} }
$currencyIso = null; $currencyIso = null;
@ -69,30 +70,44 @@ if ($editingCourse) {
$defaultBeneficiaries[] = $teacher->getId(); $defaultBeneficiaries[] = $teacher->getId();
} }
$currentBeneficiaries = $plugin->getItemBeneficiaries($courseItem['item_id']); if (!empty($courseItem['item_id'])) {
if (!empty($currentBeneficiaries)) { $currentBeneficiaries = $plugin->getItemBeneficiaries($courseItem['course_id']);
$defaultBeneficiaries = array_column($currentBeneficiaries, 'user_id'); if (!empty($currentBeneficiaries)) {
if ($commissionsEnable === 'true') { $defaultBeneficiaries = array_column($currentBeneficiaries, 'user_id');
$defaultCommissions = array_column($currentBeneficiaries, 'commissions'); if ($commissionsEnable === 'true') {
foreach ($defaultCommissions as $defaultCommission) { $defaultCommissions = array_column($currentBeneficiaries, 'commissions');
$commissions .= $defaultCommission.','; foreach ($defaultCommissions as $defaultCommission) {
$commissions .= $defaultCommission.',';
}
$commissions = substr($commissions, 0, -1);
} }
$commissions = substr($commissions, 0, -1);
} }
}
$currencyIso = $courseItem['currency']; $currencyIso = $courseItem['currency'];
$formDefaults = [ $formDefaults = [
'product_type' => get_lang('Course'), 'product_type' => get_lang('Course'),
'id' => $courseItem['course_id'], 'id' => $courseItem['course_id'],
'type' => BuyCoursesPlugin::PRODUCT_TYPE_COURSE, 'type' => BuyCoursesPlugin::PRODUCT_TYPE_COURSE,
'name' => $courseItem['course_title'], 'name' => $courseItem['course_title'],
'visible' => $courseItem['visible'], 'visible' => $courseItem['visible'],
'price' => $courseItem['price'], 'price' => $courseItem['price'],
'tax_perc' => $courseItem['tax_perc'], 'tax_perc' => $courseItem['tax_perc'],
'beneficiaries' => $defaultBeneficiaries, 'beneficiaries' => $defaultBeneficiaries,
$commissionsEnable == 'true' ? 'commissions' : '' => $commissionsEnable == 'true' ? $commissions : '', $commissionsEnable == 'true' ? 'commissions' : '' => $commissionsEnable == 'true' ? $commissions : '',
]; ];
} else {
$formDefaults = [
'product_type' => get_lang('Course'),
'id' => $courseItem['course_id'],
'type' => BuyCoursesPlugin::PRODUCT_TYPE_COURSE,
'name' => $courseItem['course_title'],
'visible' => false,
'price' => 0,
'tax_perc' => 0,
'beneficiaries' => [],
$commissionsEnable == 'true' ? 'commissions' : '' => $commissionsEnable == 'true' ? '' : '',
];
}
} elseif ($editingSession) { } elseif ($editingSession) {
if (!$includeSession) { if (!$includeSession) {
api_not_allowed(true); api_not_allowed(true);
@ -175,7 +190,7 @@ if ($commissionsEnable === 'true') {
} else { } else {
showSliders(100, 'default', '".$commissions."'); showSliders(100, 'default', '".$commissions."');
} }
var maxPercentage = 100; var maxPercentage = 100;
$('#selectBox').on('change', function() { $('#selectBox').on('change', function() {
$('#panelSliders').html(''); $('#panelSliders').html('');

@ -190,7 +190,7 @@ $frequencyForm->addHidden('tax_perc', $taxtPerc);
$frequencyForm->addHidden('currency_id', $currency['id']); $frequencyForm->addHidden('currency_id', $currency['id']);
$frequencyForm->addButtonCreate('Add'); $frequencyForm->addButtonCreate('Add');
for ($i = 0; $i <= count($subscriptions); $i++) { for ($i = 0; $i < count($subscriptions); $i++) {
if ($subscriptions[$i]['duration'] > 0) { if ($subscriptions[$i]['duration'] > 0) {
$subscriptions[$i]['durationName'] = $frequenciesOptions[$subscriptions[$i]['duration']]; $subscriptions[$i]['durationName'] = $frequenciesOptions[$subscriptions[$i]['duration']];
} }

Loading…
Cancel
Save