/** * @return array Array of strings */ public static function getJavaScriptDescriptions($checkPermissions = false) { $result = array(); $descriptions = self::getAllDescriptions(); if (!$checkPermissions) { $isInvoicePermitted = true; $isQuotePermitted = true; } else { $flags = array(); \CCrmDeal::PrepareConversionPermissionFlags(0, $flags); $isInvoicePermitted = $flags['CAN_CONVERT_TO_INVOICE']; $isQuotePermitted = $flags['CAN_CONVERT_TO_QUOTE']; } if ($isInvoicePermitted && $isQuotePermitted) { foreach ($descriptions as $schemeID => $description) { $result[self::resolveName($schemeID)] = $description; } } else { $schemes = array(); if ($isInvoicePermitted) { $schemes[] = self::INVOICE; } if ($isQuotePermitted) { $schemes[] = self::QUOTE; } foreach ($schemes as $schemeID) { $result[self::resolveName($schemeID)] = $descriptions[$schemeID]; } } return $result; }