2namespace dbx\dbxContent;
11if (!class_exists(dbxContentMediaUsageScope::class,
false)) {
12final class dbxContentMediaUsageScope {
14 public static function language(
string $lng =
''): string {
16 if (
$lng ===
'' ||
$lng ===
'undef') {
17 $lng = class_exists(dbxContentLng::class) ? dbxContentLng::current() :
'de';
19 $lng = preg_replace(
'/[^a-z0-9_-]+/',
'',
$lng) ?:
'de';
20 return substr(
$lng, 0, 12);
23 public static function sql(
string $lng =
''): string {
24 return
"content_lng = '" . str_replace(
"'",
"''", self::language(
$lng)) .
"'";
27 public static function withLanguage(
string $where =
'',
string $lng =
''): string {
29 $where = trim($where);
30 return $where ===
'' ?
$scope :
'(' . $where .
') AND ' .
$scope;
33 public static function content(
int $contentId,
string $lng =
''): string {
34 return self::withLanguage(
'content_id = ' . max(0, $contentId),
$lng);
37 public static function folder(
int $folderId,
string $lng =
''): string {
38 return self::withLanguage(
'folder_id = ' . max(0, $folderId),
$lng);
41 public static function targetKey(
int $contentId,
int $folderId,
string $lng =
''): string {
42 $prefix = self::language(
$lng) .
':';
44 ? $prefix .
'content:' . $contentId
45 : $prefix .
'folder:' . max(0, $folderId);