protected function getBannerCategoriesByUsergroups()
    {
        $arrBannerCats = array();

        $objBannerCat = \Database::getInstance()
                            ->prepare("SELECT
                                            `id`
                                          , `title`
                                          , `banner_stat_protected`
                                          , `banner_stat_groups`
                                       FROM
                                            tl_banner_category
                                        WHERE 1
                                        ORDER BY 
                                            title
                                        ")
                            ->execute();
        while ($objBannerCat->next())
        {
            if ( true === $this->isUserInBannerStatGroups($objBannerCat->banner_stat_groups, 
                                                   (bool) $objBannerCat->banner_stat_protected)) 
            {
                $arrBannerCats[] = array
                (
                    'id'    => $objBannerCat->id,
                    'title' => $objBannerCat->title
                );
            }
        }
        
        if (0 == count($arrBannerCats)) 
        {
        	$arrBannerCats[] = array('id' => '0', 'title' => '---------');
        }
        
        return $arrBannerCats;
    }