Ejemplo n.º 1
0
 function CCrmProductResult($res, $arFields = array(), $arAdditionalFilter = array(), $arAdditionalSelect = array(), $arOptions = array())
 {
     parent::CDBResult($res);
     $fields = $arFields;
     foreach ($fields as $k => $v) {
         $str = strval($v);
         if (trim($str) === '') {
             unset($fields[$k]);
         }
     }
     $this->arFieldAssoc = array_flip($fields);
     $this->arAdditionalFilter = $arAdditionalFilter;
     $this->arAdditionalSelect = $arAdditionalSelect;
     $this->bRealPrice = false;
     if (is_array($arOptions) && count($arOptions) > 0) {
         if (isset($arOptions['REAL_PRICE']) && $arOptions['REAL_PRICE'] === true) {
             $this->bRealPrice = true;
         }
     }
     self::$bVatMode = CCrmTax::isVatMode();
     if (self::$bVatMode) {
         self::$arVatRates = CCrmVat::GetAll();
     }
 }
Ejemplo n.º 2
0
 public static function RecalculatePriceVat($price, $bVatIncluded, $vatId)
 {
     $result = $price;
     if (self::$bVatMode === null) {
         self::$bVatMode = CCrmTax::isVatMode();
         if (self::$bVatMode) {
             self::$arVatRates = CCrmVat::GetAll();
         }
     }
     if (self::$bVatMode) {
         if ($bVatIncluded !== 'Y') {
             if (isset(self::$arVatRates[$vatId])) {
                 $vatRate = self::$arVatRates[$vatId]['RATE'];
                 $result = (doubleval($vatRate) / 100 + 1) * doubleval($price);
             }
         }
     }
     return $result;
 }
Ejemplo n.º 3
0
                ShowError($error);
            }
        }
        unset($_GET['ID'], $_REQUEST['ID']);
        // otherwise the filter will work
    }
    if (!isset($_GET['AJAX_CALL'])) {
        LocalRedirect($bInternal ? '?' . $arParams['FORM_ID'] . '_active_tab=tab_product' : '');
    }
}
$gridOptions = new CCrmGridOptions($arResult['GRID_ID']);
$gridSorting = $gridOptions->GetSorting(array('sort' => array('c_sort' => 'desc'), 'vars' => array('by' => 'by', 'order' => 'order')));
$sort = $arResult['SORT'] = $gridSorting['sort'];
$arResult['SORT_VARS'] = $gridSorting['vars'];
$vats = array();
$allVats = CCrmVat::GetAll();
foreach ($allVats as $k => $v) {
    $arVat = array();
    $arVat['ID'] = $arVat['~ID'] = intval($k);
    // Key is Currency ID
    $arVat['NAME'] = $v['NAME'];
    $arVat['C_SORT'] = $arVat['~C_SORT'] = intval($v['C_SORT']);
    $arVat['ACTIVE'] = $arVat['~ACTIVE'] = $v['ACTIVE'] == 'Y' ? 'Y' : 'N';
    $arVat['RATE'] = $arVat['~RATE'] = $v['RATE'];
    $arVat['PATH_TO_VAT_SHOW'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_VAT_SHOW'], array('vat_id' => $k));
    $arVat['PATH_TO_VAT_EDIT'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_VAT_EDIT'], array('vat_id' => $k));
    $arVat['PATH_TO_VAT_DELETE'] = CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_VAT_LIST'], array('vat_id' => $k)), array('action_' . $arResult['GRID_ID'] => 'delete', 'ID' => $k, 'sessid' => bitrix_sessid()));
    $arVat['~NAME'] = htmlspecialcharsBack($arVat['NAME']);
    $vats[] = $arVat;
}
if (is_array($sort) && count($sort) > 0) {