Fix observations made on PR 948 about commissions with two 'm' + some filtering + some spacing

1.10.x
Yannick Warnier 10 years ago
parent 73539bbbc1
commit 07cc1f44b0
  1. 38
      plugin/buycourses/database.php
  2. 14
      plugin/buycourses/lang/english.php
  3. 14
      plugin/buycourses/lang/french.php
  4. 14
      plugin/buycourses/lang/spanish.php
  5. 12
      plugin/buycourses/resources/js/commissions.js
  6. 50
      plugin/buycourses/src/buy_course_plugin.class.php
  7. 26
      plugin/buycourses/src/buycourses.ajax.php
  8. 62
      plugin/buycourses/src/configure_course.php
  9. 23
      plugin/buycourses/src/panel.ajax.php
  10. 26
      plugin/buycourses/src/paymentsetup.php
  11. 2
      plugin/buycourses/src/payout_panel.php
  12. 6
      plugin/buycourses/src/payout_report.php
  13. 8
      plugin/buycourses/src/paypal_payout.php
  14. 6
      plugin/buycourses/src/paypalfunctions.php
  15. 10
      plugin/buycourses/src/sales_report.php
  16. 8
      plugin/buycourses/view/paymentsetup.tpl
  17. 4
      plugin/buycourses/view/payout_panel.tpl
  18. 4
      plugin/buycourses/view/payout_report.tpl
  19. 8
      plugin/buycourses/view/paypal_payout.tpl

@ -114,7 +114,7 @@ $itemBeneficiary->addColumn(
['unsigned' => true]
);
$itemBeneficiary->addColumn(
'comissions',
'commissions',
\Doctrine\DBAL\Types\Type::INTEGER,
['unsigned' => true]
);
@ -126,48 +126,48 @@ $itemBeneficiary->addForeignKeyConstraint(
['onDelete' => 'CASCADE']
);
$comissions = $pluginSchema->createTable(BuyCoursesPlugin::TABLE_COMISSION);
$comissions->addColumn(
$commissions = $pluginSchema->createTable(BuyCoursesPlugin::TABLE_COMMISSION);
$commissions->addColumn(
'id',
\Doctrine\DBAL\Types\Type::INTEGER,
['autoincrement' => true, 'unsigned' => true]
);
$comissions->addColumn(
'comission',
$commissions->addColumn(
'commission',
\Doctrine\DBAL\Types\Type::INTEGER,
['unsigned' => true]
);
$comissions->setPrimaryKey(['id']);
$commissions->setPrimaryKey(['id']);
$saleComissions = $pluginSchema->createTable(BuyCoursesPlugin::TABLE_PAYPAL_PAYOUTS);
$saleComissions->addColumn(
$saleCommissions = $pluginSchema->createTable(BuyCoursesPlugin::TABLE_PAYPAL_PAYOUTS);
$saleCommissions->addColumn(
'id',
\Doctrine\DBAL\Types\Type::INTEGER,
['autoincrement' => true, 'unsigned' => true]
);
$saleComissions->addColumn('date', \Doctrine\DBAL\Types\Type::DATETIME);
$saleComissions->addColumn('payout_date', \Doctrine\DBAL\Types\Type::DATETIME);
$saleComissions->addColumn(
$saleCommissions->addColumn('date', \Doctrine\DBAL\Types\Type::DATETIME);
$saleCommissions->addColumn('payout_date', \Doctrine\DBAL\Types\Type::DATETIME);
$saleCommissions->addColumn(
'sale_id',
\Doctrine\DBAL\Types\Type::INTEGER,
['unsigned' => true]
);
$saleComissions->addColumn(
$saleCommissions->addColumn(
'user_id',
\Doctrine\DBAL\Types\Type::INTEGER,
['unsigned' => true]
);
$saleComissions->addColumn(
'comission',
$saleCommissions->addColumn(
'commission',
\Doctrine\DBAL\Types\Type::DECIMAL,
['scale' => 2]
);
$saleComissions->addColumn(
$saleCommissions->addColumn(
'status',
\Doctrine\DBAL\Types\Type::INTEGER,
['unsigned' => true]
);
$saleComissions->setPrimaryKey(['id']);
$saleCommissions->setPrimaryKey(['id']);
$saleTable = $pluginSchema->createTable(BuyCoursesPlugin::TABLE_SALE);
$saleTable->addColumn(
@ -220,7 +220,7 @@ $paypalTable = Database::get_main_table(BuyCoursesPlugin::TABLE_PAYPAL);
$currencyTable = Database::get_main_table(BuyCoursesPlugin::TABLE_CURRENCY);
$itemTable = Database::get_main_table(BuyCoursesPlugin::TABLE_ITEM);
$saleTable = Database::get_main_table(BuyCoursesPlugin::TABLE_SALE);
$comissionTable = Database::get_main_table(BuyCoursesPlugin::TABLE_COMISSION);
$commissionTable = Database::get_main_table(BuyCoursesPlugin::TABLE_COMMISSION);
$extraFieldTable = Database::get_main_table(TABLE_EXTRA_FIELD);
$paypalExtraField = Database::select(
@ -261,9 +261,9 @@ Database::insert(
);
Database::insert(
$comissionTable,
$commissionTable,
[
'comission' => 0
'commission' => 0
]
);

@ -5,16 +5,16 @@ $strings['show_main_menu_tab'] = "Show tab in main menu";
$strings['show_main_menu_tab_help'] = "In case of not wanting to show the tab, you can create this link in your Chamilo homepage : %s";
$strings['include_sessions'] = "Include sessions";
$strings['paypal_enable'] = "Enable PayPal";
$strings['comissions_enable'] = "Enable Comissions";
$strings['commissions_enable'] = "Enable Commissions";
$strings['transfer_enable'] = "Enable bank transfer";
$strings['unregistered_users_enable'] = "Allow anonymous users";
$strings['PaypalPayoutComissions'] = "Paypal Payout Comissions";
$strings['Comission'] = "Comission";
$strings['Comissions'] = "Comissions";
$strings['SetComissions'] = "Set comissions";
$strings['ComissionsConfig'] = "Configure Comissions";
$strings['InfoComissions'] = "Enter here the sales commission as a percentage (% ) , the organization that controls the platform. This percentage is deducted from the amount received by teachers for each course or Session sold on the platform.";
$strings['PaypalPayoutCommissions'] = "Paypal Payout Commissions";
$strings['Commission'] = "Commission";
$strings['Commissions'] = "Commissions";
$strings['SetCommissions'] = "Set commissions";
$strings['CommissionsConfig'] = "Configure Commissions";
$strings['InfoCommissions'] = "Enter here the sales commission as a percentage (% ) , the organization that controls the platform. This percentage is deducted from the amount received by teachers for each course or Session sold on the platform.";
$strings['NeedToSelectPaymentType'] = "Need to select payment type";
$strings['IndividualPayout'] = "Individual payout";
$strings['ContinuePayout'] = "Continue Payout";

@ -5,16 +5,16 @@ $strings['show_main_menu_tab'] = "Montrer l'onglet dans le menu principal";
$strings['show_main_menu_tab_help'] = "Dans le cas où vous ne souhaitez pas montrer l'onglet, il est possible de rajouter le lien suivant à votre portail Chamilo: %s";
$strings['include_sessions'] = "Inclure les sessions";
$strings['paypal_enable'] = "Activer PayPal";
$strings['comissions_enable'] = "Activer commissions";
$strings['commissions_enable'] = "Activer commissions";
$strings['transfer_enable'] = "Activer les transferts bancaires";
$strings['unregistered_users_enable'] = "Permettre l'accès aux utilisateurs non enregistrés sur la plateforme";
$strings['PaypalPayoutComissions'] = "Paypal Commissions immédiates";
$strings['Comission'] = "Commission";
$strings['Comissions'] = "Commissions";
$strings['SetComissions'] = "Établir commissions";
$strings['ComissionsConfig'] = "Configurer Commissions";
$strings['InfoComissions'] = "Saisissez ici la commission de vente en pourcentage ( % ) , l'organisation qui contrôle la plate-forme . Ce pourcentage est déduit du montant reçu par les enseignants pour chaque cours ou session vendus sur la plate-forme.";
$strings['PaypalPayoutCommissions'] = "Paypal Commissions immédiates";
$strings['Commission'] = "Commission";
$strings['Commissions'] = "Commissions";
$strings['SetCommissions'] = "Établir commissions";
$strings['CommissionsConfig'] = "Configurer Commissions";
$strings['InfoCommissions'] = "Saisissez ici la commission de vente en pourcentage ( % ) , l'organisation qui contrôle la plate-forme . Ce pourcentage est déduit du montant reçu par les enseignants pour chaque cours ou session vendus sur la plate-forme.";
$strings['NeedToSelectPaymentType'] = "Besoin pour sélectionner le type de paiement";
$strings['IndividualPayout'] = "Paiement individuel";
$strings['ContinuePayout'] = "Continuer Paiement";

@ -5,19 +5,19 @@ $strings['show_main_menu_tab'] = "Mostrar pestaña en el menu principal";
$strings['show_main_menu_tab_help'] = "En caso de no querer mostrar la pestaña, puede agregar el siguiente enlace a su portal Chamilo: %s";
$strings['include_sessions'] = "Incluir sesiones";
$strings['paypal_enable'] = "Habilitar PayPal";
$strings['comissions_enable'] = "Habilitar Comisiones";
$strings['commissions_enable'] = "Habilitar Comisiones";
$strings['transfer_enable'] = "Habilitar transferencia";
$strings['unregistered_users_enable'] = "Permitir usuarios sin registro en la plataforma";
$strings['PaypalPayoutComissions'] = "Pagar comisiones por Paypal";
$strings['PaypalPayoutCommissions'] = "Pagar comisiones por Paypal";
$strings['MyPayouts'] = "Mis Pagos";
$strings['Comission'] = "Comisión";
$strings['Comissions'] = "Comisiones";
$strings['SetComissions'] = "Aplicar comisiones";
$strings['ComissionsConfig'] = "Configurar Comisiones";
$strings['Commission'] = "Comisión";
$strings['Commissions'] = "Comisiones";
$strings['SetCommissions'] = "Aplicar comisiones";
$strings['CommissionsConfig'] = "Configurar Comisiones";
$strings['PayoutReport'] = "Reporte de Pagos";
$strings['Stats'] = "Estadísticas";
$strings['InfoComissions'] = "Ingrese aquí la comisión de ventas, en porcentaje (%), para la organización que controla la plataforma. Este porcentaje se deducirá del monto percibido por los docentes por cada curso o sessión vendido en la plataforma.";
$strings['InfoCommissions'] = "Ingrese aquí la comisión de ventas, en porcentaje (%), para la organización que controla la plataforma. Este porcentaje se deducirá del monto percibido por los docentes por cada curso o sessión vendido en la plataforma.";
$strings['NeedToSelectPaymentType'] = "Necesita seleccionar el tipo de pago";
$strings['IndividualPayout'] = "Pago individual";
$strings['CancelPayout'] = "Cancelar Payout";

@ -89,25 +89,25 @@ function showSliders(maxPercentage, type, defaultValues) {
});
$("[name=\'comissions\']").val(getSlidersValues());
$("[name=\'commissions\']").val(getSlidersValues());
}
});
});
$("[name=\'comissions\']").val(getSlidersValues());
$("[name=\'commissions\']").val(getSlidersValues());
showCorrectSliderHandler();
};
function getSlidersValues() {
var comissions = "";
var commissions = "";
$( "#panelSliders .panelSliders" ).each(function() {
comissions += $(this).prev(".value").text() + ',';
commissions += $(this).prev(".value").text() + ',';
});
comissions = comissions.substring(0, comissions.length-1);
commissions = commissions.substring(0, commissions.length-1);
return comissions;
return commissions;
}
function showCorrectSliderHandler() {

@ -17,7 +17,7 @@ class BuyCoursesPlugin extends Plugin
const TABLE_ITEM_BENEFICIARY = 'plugin_buycourses_item_rel_beneficiary';
const TABLE_SALE = 'plugin_buycourses_sale';
const TABLE_TRANSFER = 'plugin_buycourses_transfer';
const TABLE_COMISSION = 'plugin_buycourses_comission';
const TABLE_COMMISSION = 'plugin_buycourses_commission';
const TABLE_PAYPAL_PAYOUTS = 'plugin_buycourses_paypal_payouts';
const PRODUCT_TYPE_COURSE = 1;
const PRODUCT_TYPE_SESSION = 2;
@ -50,14 +50,14 @@ class BuyCoursesPlugin extends Plugin
Alex Aragón - BeezNest (Design icons and css styles) <br/>
Imanol Losada - BeezNest (introduction of sessions purchase) <br/>
Angel Fernando Quiroz Campos - BeezNest (cleanup and new reports) <br/>
José Loguercio Silva - BeezNest (pay teachers and comissions)
José Loguercio Silva - BeezNest (pay teachers and commissions)
",
array(
'show_main_menu_tab' => 'boolean',
'include_sessions' => 'boolean',
'paypal_enable' => 'boolean',
'transfer_enable' => 'boolean',
'comissions_enable' => 'boolean',
'commissions_enable' => 'boolean',
'unregistered_users_enable' => 'boolean'
)
);
@ -75,7 +75,7 @@ class BuyCoursesPlugin extends Plugin
self::TABLE_ITEM,
self::TABLE_SALE,
self::TABLE_CURRENCY,
self::TABLE_COMISSION,
self::TABLE_COMMISSION,
self::TABLE_PAYPAL_PAYOUTS
);
$em = Database::getManager();
@ -102,7 +102,7 @@ class BuyCoursesPlugin extends Plugin
self::TABLE_ITEM,
self::TABLE_SALE,
self::TABLE_CURRENCY,
self::TABLE_COMISSION,
self::TABLE_COMMISSION,
self::TABLE_PAYPAL_PAYOUTS
);
@ -1181,7 +1181,7 @@ class BuyCoursesPlugin extends Plugin
"$saleTable s $innerJoins",
[
'where' => [
'u.id = ?' => $id
'u.id = ?' => intval($id)
],
'order' => 'id DESC'
]
@ -1377,7 +1377,7 @@ class BuyCoursesPlugin extends Plugin
/**
* Register the beneficiaries users with the sale of item
* @param int $itemId The item ID
* @param array $userIds The beneficiary user ID and Teachers comissions if enabled
* @param array $userIds The beneficiary user ID and Teachers commissions if enabled
*/
public function registerItemBeneficiaries($itemId, array $userIds)
{
@ -1385,13 +1385,13 @@ class BuyCoursesPlugin extends Plugin
$this->deleteItemBeneficiaries($itemId);
foreach ($userIds as $userId => $comissions) {
foreach ($userIds as $userId => $commissions) {
Database::insert(
$beneficiaryTable,
[
'item_id' => intval($itemId),
'user_id' => intval($userId),
'comissions' => intval($comissions)
'commissions' => intval($commissions)
]
);
}
@ -1416,7 +1416,7 @@ class BuyCoursesPlugin extends Plugin
}
/**
* Gets the beneficiaries with comissions and current paypal accounts by sale
* Gets the beneficiaries with commissions and current paypal accounts by sale
* @param int $saleId The sale ID
* @return array
*/
@ -1492,22 +1492,22 @@ class BuyCoursesPlugin extends Plugin
public function storePayouts($saleId)
{
$payoutsTable = Database::get_main_table(BuyCoursesPlugin::TABLE_PAYPAL_PAYOUTS);
$platformComission = $this->getPlatformComission();
$platformCommission = $this->getPlatformCommission();
$sale = $this->getSale($saleId);
$teachersComission = number_format((floatval($sale['price']) * intval($platformComission['comission']))/100, 2);
$teachersCommission = number_format((floatval($sale['price']) * intval($platformCommission['commission']))/100, 2);
$beneficiaries = $this->getBeneficiariesBySale($saleId);
foreach ($beneficiaries as $beneficiarie) {
foreach ($beneficiaries as $beneficiary) {
Database::insert(
$payoutsTable,
[
'date' => $sale['date'],
'payout_date' => getdate(),
'sale_id' => intval($saleId),
'user_id' => $beneficiarie['user_id'],
'comission' => number_format((floatval($teachersComission) * intval($beneficiarie['comissions']))/100, 2),
'user_id' => $beneficiary['user_id'],
'commission' => number_format((floatval($teachersCommission) * intval($beneficiary['commissions']))/100, 2),
'status' => self::PAYOUT_STATUS_PENDING
]
);
@ -1526,38 +1526,38 @@ class BuyCoursesPlugin extends Plugin
Database::update(
$payoutsTable,
['status' => $status],
['status' => intval($status)],
['id = ?' => intval($payoutId)]
);
}
/**
* Gets the stored platform comission params
* Gets the stored platform commission params
* @return array
*/
public function getPlatformComission()
public function getPlatformCommission()
{
return Database::select(
'*',
Database::get_main_table(BuyCoursesPlugin::TABLE_COMISSION),
Database::get_main_table(BuyCoursesPlugin::TABLE_COMMISSION),
['id = ?' => 1],
'first'
);
}
/**
* Update the platform comission
* @param int $params platform comission
* Update the platform commission
* @param int $params platform commission
* @return int The number of affected rows. Otherwise return false
*/
public function updateComission($params)
public function updateCommission($params)
{
$comissionTable = Database::get_main_table(BuyCoursesPlugin::TABLE_COMISSION);
$commissionTable = Database::get_main_table(BuyCoursesPlugin::TABLE_COMMISSION);
return Database::update(
$comissionTable,
['comission' => intval($params['comission'])]
$commissionTable,
['commission' => intval($params['commission'])]
);
}

@ -15,7 +15,7 @@ api_protect_admin_script(true);
$plugin = BuyCoursesPlugin::create();
$paypalEnable = $plugin->get('paypal_enable');
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
$action = isset($_GET['a']) ? $_GET['a'] : null;
@ -25,7 +25,7 @@ switch ($action) {
break;
}
$saleId = isset($_POST['id']) ? $_POST['id'] : '';
$saleId = isset($_POST['id']) ? intval($_POST['id']) : '';
$sale = $plugin->getSale($saleId);
$productType = ($sale['product_type'] == 1) ? get_lang('Course') : get_lang('Session');
$paymentType = ($sale['payment_type'] == 1) ? 'Paypal' : $plugin->get_lang('BankTransfer');
@ -80,19 +80,19 @@ switch ($action) {
foreach ($completedPayouts as $completed) {
$stats['completed_count'] = count($completedPayouts);
$stats['completed_total_amount'] += $completed['comission'];
$stats['completed_total_amount'] += $completed['commission'];
$stats['completed_total_amount'] = number_format($stats['completed_total_amount'], 2);
}
foreach ($pendingPayouts as $pending) {
$stats['pending_count'] = count($pendingPayouts);
$stats['pending_total_amount'] += $pending['comission'];
$stats['pending_total_amount'] += $pending['commission'];
$stats['pending_total_amount'] = number_format($stats['pending_total_amount'], 2);
}
foreach ($canceledPayouts as $canceled) {
$stats['canceled_count'] = count($canceledPayouts);
$stats['canceled_total_amount'] += $canceled['comission'];
$stats['canceled_total_amount'] += $canceled['commission'];
$stats['canceled_total_amount'] = number_format($stats['canceled_total_amount'], 2);
}
@ -129,12 +129,12 @@ switch ($action) {
break;
}
foreach($payouts as $index => $id) {
foreach ($payouts as $index => $id) {
$allPays[] = $plugin->getPayouts(BuyCoursesPlugin::PAYOUT_STATUS_PENDING, $id);
}
foreach($allPays as $payout) {
$totalPayout += number_format($payout['comission'], 2);
foreach ($allPays as $payout) {
$totalPayout += number_format($payout['commission'], 2);
$totalAccounts++;
}
@ -184,7 +184,7 @@ switch ($action) {
break;
}
foreach($payouts as $index => $id) {
foreach ($payouts as $index => $id) {
$allPayouts[] = $plugin->getPayouts(BuyCoursesPlugin::PAYOUT_STATUS_PENDING, $id);
}
@ -195,8 +195,8 @@ switch ($action) {
$result = MassPayment($allPayouts, $isoCode);
if($result['ACK'] === 'Success') {
foreach($allPayouts as $payout) {
if ($result['ACK'] === 'Success') {
foreach ($allPayouts as $payout) {
$plugin->setStatusPayouts($payout['id'], BuyCoursesPlugin::PAYOUT_STATUS_COMPLETED);
}
@ -214,9 +214,9 @@ switch ($action) {
if (api_is_anonymous()) {
break;
}
// $payoutId only gets used in setStatusPayout(), where it is filtered
$payoutId = isset($_POST['id']) ? $_POST['id'] : '';
$plugin->setStatusPayouts($payoutId, BuyCoursesPlugin::PAYOUT_STATUS_CANCELED);
echo '';

@ -19,13 +19,13 @@ if (!isset($_REQUEST['t'], $_REQUEST['i'])) {
$plugin = BuyCoursesPlugin::create();
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
if ($comissionsEnable == "true") {
if ($commissionsEnable == "true") {
$htmlHeadXtra[] = '<script type="text/javascript" src="' . api_get_path(WEB_PLUGIN_PATH) . 'buycourses/resources/js/comissions.js"></script>';
$defaultComissions = [];
$comissions = "";
$htmlHeadXtra[] = '<script type="text/javascript" src="' . api_get_path(WEB_PLUGIN_PATH) . 'buycourses/resources/js/commissions.js"></script>';
$defaultCommissions = [];
$commissions = "";
}
@ -72,14 +72,14 @@ if ($editingCourse) {
if (!empty($currentBeneficiaries)) {
$defaultBeneficiaries = array_column($currentBeneficiaries, 'user_id');
if ($comissionsEnable == "true") {
$defaultComissions = array_column($currentBeneficiaries, 'comissions');
if ($commissionsEnable === 'true') {
$defaultCommissions = array_column($currentBeneficiaries, 'commissions');
foreach ($defaultComissions as $defaultComission) {
$comissions .= $defaultComission.',';
foreach ($defaultCommissions as $defaultCommission) {
$commissions .= $defaultCommission.',';
}
$comissions = substr($comissions, 0, -1);
$commissions = substr($commissions, 0, -1);
}
}
@ -92,7 +92,7 @@ if ($editingCourse) {
'visible' => $courseItem['visible'],
'price' => $courseItem['price'],
'beneficiaries' => $defaultBeneficiaries,
($comissionsEnable == "true") ? 'comissions' : '' => ($comissionsEnable == "true") ? $comissions : ''
($commissionsEnable == "true") ? 'commissions' : '' => ($commissionsEnable == "true") ? $commissions : ''
];
} elseif ($editingSession) {
if (!$includeSession) {
@ -138,14 +138,14 @@ if ($editingCourse) {
if (!empty($currentBeneficiaries)) {
$defaultBeneficiaries = array_column($currentBeneficiaries, 'user_id');
if ($comissionsEnable == "true") {
$defaultComissions = array_column($currentBeneficiaries, 'comissions');
if ($commissionsEnable == "true") {
$defaultCommissions = array_column($currentBeneficiaries, 'commissions');
foreach ($defaultComissions as $defaultComission) {
$comissions .= $defaultComission.',';
foreach ($defaultCommissions as $defaultCommission) {
$commissions .= $defaultCommission.',';
}
$comissions = substr($comissions, 0, -1);
$commissions = substr($commissions, 0, -1);
}
}
@ -158,21 +158,21 @@ if ($editingCourse) {
'visible' => $sessionItem['visible'],
'price' => $sessionItem['price'],
'beneficiaries' => $defaultBeneficiaries,
($comissionsEnable == "true") ? 'comissions' : '' => ($comissionsEnable == "true") ? $comissions : ''
($commissionsEnable == "true") ? 'commissions' : '' => ($commissionsEnable == "true") ? $commissions : ''
];
} else {
api_not_allowed(true);
}
if ($comissionsEnable == "true") {
if ($commissionsEnable === 'true') {
$htmlHeadXtra[] = ''
. '<script>'
. '$(function(){'
. 'if ($("[name=\'comissions\']").val() === "") {'
. '$("#panelSliders").html("<button id=\"setComissionsButton\" class=\"btn btn-warning\">' . get_plugin_lang("SetComissions", "BuyCoursesPlugin") . '</button>");'
. 'if ($("[name=\'commissions\']").val() === "") {'
. '$("#panelSliders").html("<button id=\"setCommissionsButton\" class=\"btn btn-warning\">' . get_plugin_lang("SetCommissions", "BuyCoursesPlugin") . '</button>");'
. '} else {'
. 'showSliders(100, "default", "' . $comissions . '");'
. 'showSliders(100, "default", "' . $commissions . '");'
. '}'
. '});'
@ -183,7 +183,7 @@ if ($comissionsEnable == "true") {
. 'showSliders(maxPercentage, "renew");'
. '});'
. '$("#setComissionsButton").on("click", function() {'
. '$("#setCommissionsButton").on("click", function() {'
. ' $("#panelSliders").html("");'
. 'showSliders(maxPercentage, "renew");'
. '});'
@ -222,12 +222,12 @@ if ($editingCourse) {
$beneficiariesSelect->addOptGroup($courseCoachesOptions, get_lang('SessionCourseCoach'));
}
if ($comissionsEnable == "true") {
if ($commissionsEnable === 'true') {
$form->addHtml( ''
. '<div class="form-group">'
. '<label for="sliders" class="col-sm-2 control-label">'
. get_plugin_lang('Comissions', 'BuyCoursesPlugin')
. get_plugin_lang('Commissions', 'BuyCoursesPlugin')
. '</label>'
. '<div class="col-sm-8">'
. '<div class="" id="panelSliders"></div>'
@ -235,7 +235,7 @@ if ($comissionsEnable == "true") {
. '</div>'
);
$form->addHidden('comissions', '');
$form->addHidden('commissions', '');
}
@ -268,15 +268,15 @@ if ($form->validate()) {
$plugin->deleteItemBeneficiaries($productItem['id']);
if (isset($formValues['beneficiaries'])) {
if ($comissionsEnable == "true") {
if ($commissionsEnable === 'true') {
$usersId = $formValues['beneficiaries'];
$comissions = explode(",", $formValues['comissions']);
$comissions = (count($usersId) != count($comissions)) ? array_fill(0, count($usersId), 0) : $comissions;
$beneficiaries = array_combine($usersId, $comissions);
$commissions = explode(",", $formValues['commissions']);
$commissions = (count($usersId) != count($commissions)) ? array_fill(0, count($usersId), 0) : $commissions;
$beneficiaries = array_combine($usersId, $commissions);
} else {
$usersId = $formValues['beneficiaries'];
$comissions = array_fill(0, count($usersId), 0);
$beneficiaries = array_combine($usersId, $comissions);
$commissions = array_fill(0, count($usersId), 0);
$beneficiaries = array_combine($usersId, $commissions);
}
$plugin->registerItemBeneficiaries($productItem['id'], $beneficiaries);

@ -15,13 +15,14 @@ api_protect_admin_script(true);
$plugin = BuyCoursesPlugin::create();
$paypalEnable = $plugin->get('paypal_enable');
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
$action = isset($_GET['a']) ? $_GET['a'] : null;
switch ($action) {
case 'saleInfo':
//$saleId is only used in getSale() and is always filtered there
$saleId = isset($_POST['id']) ? $_POST['id'] : '';
$sale = $plugin->getSale($saleId);
$productType = ($sale['product_type'] == 1) ? get_lang('Course') : get_lang('Session');
@ -74,19 +75,19 @@ switch ($action) {
foreach ($completedPayouts as $completed) {
$stats['completed_count'] = count($completedPayouts);
$stats['completed_total_amount'] += $completed['comission'];
$stats['completed_total_amount'] += $completed['commission'];
$stats['completed_total_amount'] = number_format($stats['completed_total_amount'], 2);
}
foreach ($pendingPayouts as $pending) {
$stats['pending_count'] = count($pendingPayouts);
$stats['pending_total_amount'] += $pending['comission'];
$stats['pending_total_amount'] += $pending['commission'];
$stats['pending_total_amount'] = number_format($stats['pending_total_amount'], 2);
}
foreach ($canceledPayouts as $canceled) {
$stats['canceled_count'] = count($canceledPayouts);
$stats['canceled_total_amount'] += $canceled['comission'];
$stats['canceled_total_amount'] += $canceled['commission'];
$stats['canceled_total_amount'] = number_format($stats['canceled_total_amount'], 2);
}
@ -123,12 +124,12 @@ switch ($action) {
break;
}
foreach($payouts as $index => $id) {
foreach ($payouts as $index => $id) {
$allPays[] = $plugin->getPayouts(BuyCoursesPlugin::PAYOUT_STATUS_PENDING, $id);
}
foreach($allPays as $payout) {
$totalPayout += number_format($payout['comission'], 2);
foreach ($allPays as $payout) {
$totalPayout += number_format($payout['commission'], 2);
$totalAccounts++;
}
@ -178,7 +179,7 @@ switch ($action) {
break;
}
foreach($payouts as $index => $id) {
foreach ($payouts as $index => $id) {
$allPayouts[] = $plugin->getPayouts(BuyCoursesPlugin::PAYOUT_STATUS_PENDING, $id);
}
@ -189,8 +190,8 @@ switch ($action) {
$result = MassPayment($allPayouts, $isoCode);
if($result['ACK'] === 'Success') {
foreach($allPayouts as $payout) {
if ($result['ACK'] === 'Success') {
foreach ($allPayouts as $payout) {
$plugin->setStatusPayouts($payout['id'], BuyCoursesPlugin::PAYOUT_STATUS_COMPLETED);
}

@ -17,7 +17,7 @@ $plugin = BuyCoursesPlugin::create();
$paypalEnable = $plugin->get('paypal_enable');
$transferEnable = $plugin->get('transfer_enable');
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
if (isset($_GET['action'], $_GET['id'])) {
if ($_GET['action'] == 'delete_taccount') {
@ -114,14 +114,14 @@ $paypalForm->addCheckBox('sandbox', null, $plugin->get_lang('Sandbox'));
$paypalForm->addButtonSave(get_lang('Save'));
$paypalForm->setDefaults($plugin->getPaypalParams());
// Platform Comissions
// Platform Commissions
$comissionForm = new FormValidator('comissions');
$commissionForm = new FormValidator('commissions');
if ($comissionForm->validate()) {
$comissionFormValues = $comissionForm->getSubmitValues();
if ($commissionForm->validate()) {
$commissionFormValues = $commissionForm->getSubmitValues();
$plugin->updateComission($comissionFormValues);
$plugin->updateCommission($commissionFormValues);
Display::addFlash(
Display::return_message(get_lang('Saved'), 'success')
@ -131,16 +131,16 @@ if ($comissionForm->validate()) {
exit;
}
$comissionForm->addElement(
$commissionForm->addElement(
'number',
'comission',
[$plugin->get_lang('Comission'), null, '%'],
'commission',
[$plugin->get_lang('Commission'), null, '%'],
['step' => 1, 'cols-size' => [3, 7, 1], 'min' => 0, 'max' => 100]
);
$comissionForm->addButtonSave(get_lang('Save'));
$comissionForm->setDefaults($plugin->getPlatformComission());
$commissionForm->addButtonSave(get_lang('Save'));
$commissionForm->setDefaults($plugin->getPlatformCommission());
$transferForm = new FormValidator('transfer_account');
@ -194,11 +194,11 @@ $tpl = new Template($templateName);
$tpl->assign('header', $templateName);
$tpl->assign('curency_form', $currencyForm->returnForm());
$tpl->assign('paypal_form', $paypalForm->returnForm());
$tpl->assign('comission_form', $comissionForm->returnForm());
$tpl->assign('commission_form', $commissionForm->returnForm());
$tpl->assign('transfer_form', $transferForm->returnForm());
$tpl->assign('transfer_accounts', $transferAccounts);
$tpl->assign('paypal_enable', $paypalEnable);
$tpl->assign('comissions_enable', $comissionsEnable);
$tpl->assign('commissions_enable', $commissionsEnable);
$tpl->assign('transfer_enable', $transferEnable);
$content = $tpl->fetch('buycourses/view/paymentsetup.tpl');

@ -29,7 +29,7 @@ foreach ($payouts as $payout) {
'payout_date' => ($payout['payout_date'] === '0000-00-00 00:00:00') ? '-' : api_format_date($payout['payout_date'], DATE_TIME_FORMAT_LONG_24H),
'currency' => $payout['iso_code'],
'price' => $payout['item_price'],
'comission' => $payout['comission'],
'commission' => $payout['commission'],
'paypal_account' => $payout['paypal_account'],
'status' => $payout['status']
];

@ -17,11 +17,11 @@ api_protect_admin_script(true);
$plugin = BuyCoursesPlugin::create();
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
$payoutStatuses = $plugin->getPayoutStatuses();
$selectedStatus = isset($_GET['status']) ? $_GET['status'] : BuyCoursesPlugin::SALE_STATUS_COMPLETED;
if ($comissionsEnable !== "true") {
if ($commissionsEnable !== "true") {
api_not_allowed(true);
}
@ -69,7 +69,7 @@ foreach ($payouts as $payout) {
'payout_date' => ($payout['payout_date'] === '0000-00-00 00:00:00') ? '-' : api_format_date($payout['payout_date'], DATE_TIME_FORMAT_LONG_24H),
'currency' => $payout['iso_code'],
'price' => $payout['item_price'],
'comission' => $payout['comission'],
'commission' => $payout['commission'],
'paypal_account' => $payout['paypal_account'],
'status' => $payout['status']
];

@ -20,9 +20,9 @@ api_protect_admin_script(true);
$plugin = BuyCoursesPlugin::create();
$paypalEnable = $plugin->get('paypal_enable');
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
if ($paypalEnable !== "true" && $comissionsEnable !== "true") {
if ($paypalEnable !== "true" && $commissionsEnable !== "true") {
api_not_allowed(true);
}
@ -37,12 +37,12 @@ foreach ($payouts as $payout) {
'date' => api_format_date($payout['date'], DATE_TIME_FORMAT_LONG_24H),
'currency' => $payout['iso_code'],
'price' => $payout['item_price'],
'comission' => $payout['comission'],
'commission' => $payout['commission'],
'paypal_account' => $payout['paypal_account']
];
}
$templateName = $plugin->get_lang('PaypalPayoutComissions');
$templateName = $plugin->get_lang('PaypalPayoutCommissions');
$template = new Template($templateName);

@ -306,9 +306,9 @@ function MassPayment(array $beneficiaries, $currencyCode) {
$index = 0;
foreach($beneficiaries as $beneficiarie) {
$nvpstr .= "&L_EMAIL".$index."=".$beneficiarie['paypal_account'];
$nvpstr .= "&L_AMT".$index."=".$beneficiarie['comission'];
foreach ($beneficiaries as $beneficiary) {
$nvpstr .= "&L_EMAIL".$index."=".$beneficiary['paypal_account'];
$nvpstr .= "&L_AMT".$index."=".$beneficiary['commission'];
$index++;
}

@ -15,7 +15,7 @@ api_protect_admin_script();
$plugin = BuyCoursesPlugin::create();
$paypalEnable = $plugin->get('paypal_enable');
$comissionsEnable = $plugin->get('comissions_enable');
$commissionsEnable = $plugin->get('commissions_enable');
if (isset($_GET['order'])) {
$sale = $plugin->getSale($_GET['order']);
@ -140,21 +140,21 @@ $template = new Template($templateName);
$toolbar = '';
if ($paypalEnable == "true" && $comissionsEnable == "true") {
if ($paypalEnable == "true" && $commissionsEnable == "true") {
$toolbar .= Display::toolbarButton(
$plugin->get_lang('PaypalPayoutComissions'),
$plugin->get_lang('PaypalPayoutCommissions'),
api_get_path(WEB_PLUGIN_PATH) . 'buycourses/src/paypal_payout.php',
'paypal',
'primary',
['title' => $plugin->get_lang('PaypalPayoutComissions')]
['title' => $plugin->get_lang('PaypalPayoutCommissions')]
);
$template->assign('actions', $toolbar);
}
if ($comissionsEnable == "true") {
if ($commissionsEnable == "true") {
$toolbar .= Display::toolbarButton(
$plugin->get_lang('PayoutReport'),

@ -32,18 +32,18 @@
</div>
{% endif %}
{% if comissions_enable == "true" %}
{% if commissions_enable == "true" %}
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">{{ 'ComissionsConfig'|get_plugin_lang('BuyCoursesPlugin') }}</h3>
<h3 class="panel-title">{{ 'CommissionsConfig'|get_plugin_lang('BuyCoursesPlugin') }}</h3>
</div>
<div class="panel-body">
<div class="row">
<div class="col-md-5">
<p>{{ 'InfoComissions'|get_plugin_lang('BuyCoursesPlugin') }}</p>
<p>{{ 'InfoCommissions'|get_plugin_lang('BuyCoursesPlugin') }}</p>
</div>
<div class="col-md-7">
{{ comission_form }}
{{ commission_form }}
</div>
</div>
</div>

@ -21,7 +21,7 @@
<tr>
<th class="text-center">{{ 'OrderReference'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-center">{{ 'PayoutDate'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Comission'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Commission'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'PayPalAccount'| get_plugin_lang('BuyCoursesPlugin') }}</th>
</tr>
</thead>
@ -30,7 +30,7 @@
<tr>
<td class="text-center" style="vertical-align:middle"><a id="{{ payout.sale_id }}" class="saleInfo" data-toggle="modal" data-target="#saleInfo" href="#">{{ payout.reference }}</a></td>
<td class="text-center" style="vertical-align:middle">{{ payout.payout_date }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.currency ~ ' ' ~ payout.comission }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.currency ~ ' ' ~ payout.commission }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.paypal_account }}</td>
</tr>
{% endfor %}

@ -5,7 +5,7 @@
<tr>
<th class="text-center">{{ 'OrderReference'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-center">{{ 'PayoutDate'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Comission'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Commission'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'PayPalAccount'| get_plugin_lang('BuyCoursesPlugin') }}</th>
</tr>
</thead>
@ -14,7 +14,7 @@
<tr>
<td class="text-center" style="vertical-align:middle"><a id="{{ payout.sale_id }}" class="saleInfo" data-toggle="modal" data-target="#saleInfo" href="#">{{ payout.reference }}</a></td>
<td class="text-center" style="vertical-align:middle">{{ payout.payout_date }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.currency ~ ' ' ~ payout.comission }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.currency ~ ' ' ~ payout.commission }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.paypal_account }}</td>
</tr>
{% endfor %}

@ -5,7 +5,7 @@
<th class="text-center"><input type="checkbox" id="checkAll"></th>
<th class="text-center">{{ 'OrderReference'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-center">{{ 'OrderDate'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Comission'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Commission'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'PayPalAccount'| get_plugin_lang('BuyCoursesPlugin') }}</th>
<th class="text-right">{{ 'Options'| get_lang }}</th>
</tr>
@ -13,10 +13,10 @@
<tbody>
{% for payout in payout_list %}
<tr style="{{ payout.paypal_account ? '' : 'color: red;' }}">
<td class="text-center" style="vertical-align:middle">{% if payout.paypal_account %} <input id="{{ payout.id }}" type="checkbox" name="data[]" value="{{ payout.comission }}"> {% endif %}</td>
<td class="text-center" style="vertical-align:middle">{% if payout.paypal_account %} <input id="{{ payout.id }}" type="checkbox" name="data[]" value="{{ payout.commission }}"> {% endif %}</td>
<td class="text-center" style="vertical-align:middle">{{ payout.reference }}</td>
<td class="text-center" style="vertical-align:middle">{{ payout.date }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.currency ~ ' ' ~ payout.comission }}</td>
<td class="text-right" style="vertical-align:middle">{{ payout.currency ~ ' ' ~ payout.commission }}</td>
{% if payout.paypal_account %}
<td class="text-right" style="vertical-align:middle">{{ payout.paypal_account }}</td>
{% else %}
@ -32,7 +32,7 @@
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">{{ 'PaypalPayoutComissions'|get_plugin_lang('BuyCoursesPlugin') }}</h4>
<h4 class="modal-title">{{ 'PaypalPayoutCommissions'|get_plugin_lang('BuyCoursesPlugin') }}</h4>
</div>
<div class="modal-body" id="content">

Loading…
Cancel
Save