Adapted to PantherCMS