Esempio n. 1
0
/**
 * Add commission to customer from order
 *
 * @param integer - order id
 */
function affp_addCommissionFromOrder($_orderID)
{
    $Commission = affp_getCommissionByOrder($_orderID);
    if ($Commission['cID']) {
        return 0;
    }
    $Order = ordGetOrder($_orderID);
    if ($Order['customerID']) {
        $RefererID = affp_getReferer($Order['customerID']);
    } else {
        $RefererID = $Order['affiliateID'];
    }
    if (!$RefererID) {
        return 0;
    }
    $CustomerLogin = regGetLoginById($Order['customerID']);
    if (!$CustomerLogin) {
        $CustomerLogin = $Order['customer_email'];
    }
    $Commission = array('Amount' => sprintf("%.2f", $Order['currency_value'] * $Order['order_amount'] * CONF_AFFILIATE_AMOUNT_PERCENT / 100), 'CurrencyISO3' => $Order['currency_code'], 'xDateTime' => date("Y-m-d H:i:s"), 'OrderID' => $_orderID, 'CustomerID' => $RefererID, 'Description' => xEscSQL(str_replace(array('{ORDERID}', '{USERLOGIN}'), array($_orderID, $CustomerLogin), AFFP_COMMISSION_DESCRIPTION)));
    do {
        if (CONF_AFFILIATE_EMAIL_NEW_COMMISSION) {
            $Settings = affp_getSettings($RefererID);
            if (!$Settings['EmailOrders']) {
                break;
            }
            $t = '';
            $Email = '';
            $FirstName = '';
            regGetContactInfo(regGetLoginById($RefererID), $t, $Email, $FirstName, $t, $t, $t);
            xMailTxt($Email, AFFP_NEW_COMMISSION, 'customer.affiliate.commission_notifi.tpl', array('customer_firstname' => $FirstName, '_AFFP_MAIL_NEW_COMMISSION' => str_replace('{MONEY}', $Commission['Amount'] . ' ' . $Commission['CurrencyISO3'], AFFP_MAIL_NEW_COMMISSION)));
        }
    } while (0);
    affp_addCommission($Commission);
}
Esempio n. 2
0
         break;
     } else {
         $_POST['NEW_COMMISSION']['customerID'] = regGetIdByLogin($_POST['NEW_COMMISSION']['customerLogin']);
         $tLogin = $_POST['NEW_COMMISSION']['customerLogin'];
         unset($_POST['NEW_COMMISSION']['customerLogin']);
     }
     $_POST['NEW_COMMISSION']['Amount'] = isset($_POST['NEW_COMMISSION']['Amount']) ? sprintf("%.2f", $_POST['NEW_COMMISSION']['Amount']) : 0;
     $_POST['NEW_COMMISSION']['xDateTime'] = $xDateTime;
     unset($_POST['NEW_COMMISSION']['xDate']);
     #email to customer
     $t = '';
     $Email = '';
     $FirstName = '';
     regGetContactInfo($tLogin, $t, $Email, $FirstName, $t, $t, $t);
     xMailTxt($Email, AFFP_NEW_COMMISSION, 'customer.affiliate.commission_notifi.tpl', array('customer_firstname' => $FirstName, '_AFFP_MAIL_NEW_COMMISSION' => str_replace('{MONEY}', $_POST['NEW_COMMISSION']['Amount'] . ' ' . $_POST['NEW_COMMISSION']['CurrencyISO3'], AFFP_MAIL_NEW_COMMISSION)));
     affp_addCommission($_POST['NEW_COMMISSION']);
     Redirect(set_query('new_commission=ok', $_POST['fREDIRECT']));
     break;
 case 'DELETE_COMMISSION':
     if (!isset($_POST['COMMISSION']['cID'])) {
         break;
     }
     affp_deleteCommission($_POST['COMMISSION']['cID']);
     Redirect(set_query('delete_commission=ok', $_POST['fREDIRECT']));
     break;
 case 'SAVE_COMMISSION':
     #check date
     if (!isTemplateDate($_POST['COMMISSION']['xDateTime'], CONF_DATE_FORMAT)) {
         $error_message = AFFP_MSG_ERROR_DATE_FORMAT;
         break;
     } else {