summaryrefslogtreecommitdiffstats
path: root/library/Director/Data/Db/DbDataFormatter.php
blob: d6e4eeb50694202823fbc2d20ad4116514c7e991 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php

namespace Icinga\Module\Director\Data\Db;

use InvalidArgumentException;

class DbDataFormatter
{
    public static function normalizeBoolean($value)
    {
        if ($value === 'y' || $value === '1' || $value === true || $value === 1) {
            return 'y';
        }
        if ($value === 'n' || $value === '0' || $value === false || $value === 0) {
            return 'n';
        }
        if ($value === '' || $value === null) {
            return null;
        }

        throw new InvalidArgumentException(sprintf(
            'Got invalid boolean: %s',
            var_export($value, 1)
        ));
    }
}