Classes

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 50 100 150 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Category\CategoryRepository — Coverage: 85.2% | Lines: 317 | Complexity: 91 phpMyFAQ\Category\Relation — Coverage: 93.9% | Lines: 180 | Complexity: 47 phpMyFAQ\Category\Order — Coverage: 98.3% | Lines: 116 | Complexity: 37 phpMyFAQ\Category\Permission — Coverage: 100.0% | Lines: 90 | Complexity: 31 phpMyFAQ\Category\Navigation\CategoryTreeNavigator — Coverage: 54.2% | Lines: 72 | Complexity: 30 phpMyFAQ\Category\Image — Coverage: 97.8% | Lines: 45 | Complexity: 21 phpMyFAQ\Category\Tree\TreePathResolver — Coverage: 90.0% | Lines: 40 | Complexity: 20 phpMyFAQ\Category\Startpage — Coverage: 100.0% | Lines: 38 | Complexity: 11 phpMyFAQ\Category\Language\CategoryLanguageService — Coverage: 100.0% | Lines: 33 | Complexity: 10 phpMyFAQ\Category\Tree\TreeBuilder — Coverage: 89.7% | Lines: 29 | Complexity: 15 phpMyFAQ\Category\CategoryService — Coverage: 100.0% | Lines: 28 | Complexity: 18 phpMyFAQ\Category\Navigation\BreadcrumbsBuilder — Coverage: 100.0% | Lines: 26 | Complexity: 5 phpMyFAQ\Category\CategoryCache — Coverage: 100.0% | Lines: 25 | Complexity: 21 phpMyFAQ\Category\Presentation\AdminCategoryTreePresenter — Coverage: 30.4% | Lines: 23 | Complexity: 6 phpMyFAQ\Category\Navigation\BreadcrumbsHtmlRenderer — Coverage: 100.0% | Lines: 21 | Complexity: 6 phpMyFAQ\Category\CategoryPermissionContext — Coverage: 100.0% | Lines: 19 | Complexity: 13 phpMyFAQ\Category\Tree\CategoryValidator — Coverage: 85.7% | Lines: 14 | Complexity: 10 phpMyFAQ\Category\Permission\CategoryPermissionService — Coverage: 100.0% | Lines: 10 | Complexity: 4 phpMyFAQ\Category\Tree\TreeVisualizer — Coverage: 90.0% | Lines: 10 | Complexity: 5 phpMyFAQ\Category\CategoryTreeFacade — Coverage: 100.0% | Lines: 7 | Complexity: 7

Methods

Bubble size = executable lines. Hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 5 10 15 Line Coverage (%) Cyclomatic Complexity phpMyFAQ\Category\Relation::getCategoryWithFaqs — Coverage: 100.0% | Lines: 45 | Complexity: 8 phpMyFAQ\Category\CategoryRepository::findCategoriesPaginated — Coverage: 94.6% | Lines: 37 | Complexity: 11 phpMyFAQ\Category\Relation::getNumberOfFaqsPerCategory — Coverage: 100.0% | Lines: 34 | Complexity: 9 phpMyFAQ\Category\Order::getOrderedFlatList — Coverage: 100.0% | Lines: 32 | Complexity: 8 phpMyFAQ\Category\Startpage::getCategories — Coverage: 100.0% | Lines: 31 | Complexity: 7 phpMyFAQ\Category\Permission::getAll — Coverage: 100.0% | Lines: 30 | Complexity: 8 phpMyFAQ\Category\CategoryRepository::findOrderedCategories — Coverage: 96.4% | Lines: 28 | Complexity: 11 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::transformRecursive — Coverage: 7.1% | Lines: 28 | Complexity: 6 phpMyFAQ\Category\Order::setCategoryTree — Coverage: 96.2% | Lines: 26 | Complexity: 9 phpMyFAQ\Category\CategoryRepository::findMissingCategories — Coverage: 100.0% | Lines: 25 | Complexity: 8 phpMyFAQ\Category\CategoryRepository::findCategoriesFromFaq — Coverage: 100.0% | Lines: 24 | Complexity: 6 phpMyFAQ\Category\Permission::add — Coverage: 100.0% | Lines: 24 | Complexity: 6 phpMyFAQ\Category\Relation::add — Coverage: 95.8% | Lines: 24 | Complexity: 3 phpMyFAQ\Category\CategoryRepository::findByIdAndLanguage — Coverage: 100.0% | Lines: 22 | Complexity: 3 phpMyFAQ\Category\CategoryRepository::create — Coverage: 81.8% | Lines: 22 | Complexity: 2 phpMyFAQ\Category\Navigation\BreadcrumbsHtmlRenderer::render — Coverage: 100.0% | Lines: 21 | Complexity: 6 phpMyFAQ\Category\CategoryRepository::getCategoryLanguagesTranslated — Coverage: 0.0% | Lines: 20 | Complexity: 7 phpMyFAQ\Category\Presentation\AdminCategoryTreePresenter::transform — Coverage: 36.8% | Lines: 19 | Complexity: 4 phpMyFAQ\Category\Permission::get — Coverage: 100.0% | Lines: 18 | Complexity: 6 phpMyFAQ\Category\CategoryRepository::findAllCategories — Coverage: 100.0% | Lines: 17 | Complexity: 8 phpMyFAQ\Category\CategoryRepository::countCategories — Coverage: 0.0% | Lines: 17 | Complexity: 5 phpMyFAQ\Category\Order::getAllCategories — Coverage: 100.0% | Lines: 16 | Complexity: 5 phpMyFAQ\Category\Relation::getAggregatedFaqNumbers — Coverage: 81.2% | Lines: 16 | Complexity: 6 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::expandTo — Coverage: 93.3% | Lines: 15 | Complexity: 6 phpMyFAQ\Category\Relation::getCategoryFaqsMatrix — Coverage: 100.0% | Lines: 15 | Complexity: 4 phpMyFAQ\Category\Relation::getCategories — Coverage: 73.3% | Lines: 15 | Complexity: 4 phpMyFAQ\Category\CategoryRepository::update — Coverage: 100.0% | Lines: 14 | Complexity: 1 phpMyFAQ\Category\Image::upload — Coverage: 92.9% | Lines: 14 | Complexity: 9 phpMyFAQ\Category\Navigation\BreadcrumbsBuilder::buildFromIdsWithStartPage — Coverage: 100.0% | Lines: 14 | Complexity: 1 phpMyFAQ\Category\Order::getParentId — Coverage: 92.9% | Lines: 14 | Complexity: 7 phpMyFAQ\Category\CategoryRepository::countByNameLangParent — Coverage: 92.3% | Lines: 13 | Complexity: 6 phpMyFAQ\Category\Order::getCategoryTree — Coverage: 100.0% | Lines: 13 | Complexity: 5 phpMyFAQ\Category\CategoryRepository::mapRow — Coverage: 100.0% | Lines: 12 | Complexity: 1 phpMyFAQ\Category\CategoryRepository::findAllCategoryIds — Coverage: 100.0% | Lines: 12 | Complexity: 8 phpMyFAQ\Category\CategoryRepository::hasLinkToFaq — Coverage: 91.7% | Lines: 12 | Complexity: 6 phpMyFAQ\Category\Tree\TreeBuilder::buildLinearTree — Coverage: 91.7% | Lines: 12 | Complexity: 4 phpMyFAQ\Category\Navigation\BreadcrumbsBuilder::buildCategorySegments — Coverage: 100.0% | Lines: 11 | Complexity: 3 phpMyFAQ\Category\Tree\TreePathResolver::getNodes — Coverage: 90.9% | Lines: 11 | Complexity: 4 phpMyFAQ\Category\Tree\TreePathResolver::computeLevel — Coverage: 90.9% | Lines: 11 | Complexity: 5 phpMyFAQ\Category\Language\CategoryLanguageService::getAllExistingTranslations — Coverage: 100.0% | Lines: 10 | Complexity: 3 phpMyFAQ\Category\CategoryRepository::findCategoryIdByName — Coverage: 88.9% | Lines: 9 | Complexity: 2 phpMyFAQ\Category\Relation::aggregateRecursively — Coverage: 66.7% | Lines: 9 | Complexity: 4 phpMyFAQ\Category\Relation::delete — Coverage: 100.0% | Lines: 9 | Complexity: 3 phpMyFAQ\Category\Tree\TreeVisualizer::buildTree — Coverage: 88.9% | Lines: 9 | Complexity: 4 phpMyFAQ\Category\CategoryRepository::hasLanguage — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Category\Image::getFileName — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Category\Language\CategoryLanguageService::getLanguagesToTranslate — Coverage: 100.0% | Lines: 8 | Complexity: 3 phpMyFAQ\Category\Language\CategoryLanguageService::getExistingTranslations — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Category\Order::add — Coverage: 100.0% | Lines: 8 | Complexity: 1 phpMyFAQ\Category\Permission::isRestricted — Coverage: 100.0% | Lines: 8 | Complexity: 4 phpMyFAQ\Category\Permission\CategoryPermissionService::buildPermissionWhereClause — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Category\Relation::deleteByFAQ — Coverage: 100.0% | Lines: 8 | Complexity: 2 phpMyFAQ\Category\Tree\TreeBuilder::buildAdminCategoryTree — Coverage: 87.5% | Lines: 8 | Complexity: 4 phpMyFAQ\Category\Tree\TreePathResolver::getValidParentId — Coverage: 75.0% | Lines: 8 | Complexity: 5 phpMyFAQ\Category\CategoryRepository::moveOwnership — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Category\CategoryRepository::updateParentCategory — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Category\CategoryRepository::delete — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Category\Image::getFileExtension — Coverage: 100.0% | Lines: 7 | Complexity: 1 phpMyFAQ\Category\Image::delete — Coverage: 100.0% | Lines: 7 | Complexity: 4 phpMyFAQ\Category\Language\CategoryLanguageService::getLanguagesInUse — Coverage: 100.0% | Lines: 7 | Complexity: 2 phpMyFAQ\Category\Permission::delete — Coverage: 100.0% | Lines: 7 | Complexity: 4 phpMyFAQ\Category\Tree\TreePathResolver::getChildNodes — Coverage: 100.0% | Lines: 7 | Complexity: 3 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::getLineCategory — Coverage: 83.3% | Lines: 6 | Complexity: 5 phpMyFAQ\Category\Order::remove — Coverage: 100.0% | Lines: 6 | Complexity: 1 phpMyFAQ\Category\Tree\CategoryValidator::collectDirectChildren — Coverage: 100.0% | Lines: 6 | Complexity: 3 phpMyFAQ\Category\CategoryCache::clear — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Category\CategoryService::checkIfCategoryExists — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::buildTree — Coverage: 100.0% | Lines: 5 | Complexity: 1 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::getSymbol — Coverage: 0.0% | Lines: 5 | Complexity: 3 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::collapseAll — Coverage: 100.0% | Lines: 5 | Complexity: 5 phpMyFAQ\Category\Tree\CategoryValidator::isDirectChild — Coverage: 80.0% | Lines: 5 | Complexity: 4 phpMyFAQ\Category\CategoryPermissionContext::setGroups — Coverage: 100.0% | Lines: 4 | Complexity: 3 phpMyFAQ\Category\CategoryPermissionContext::clear — Coverage: 100.0% | Lines: 4 | Complexity: 1 phpMyFAQ\Category\Image::setUploadedFile — Coverage: 100.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::transform — Coverage: 100.0% | Lines: 4 | Complexity: 1 phpMyFAQ\Category\Presentation\AdminCategoryTreePresenter::getSymbol — Coverage: 0.0% | Lines: 4 | Complexity: 2 phpMyFAQ\Category\CategoryPermissionContext::getOwner — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Category\CategoryRepository::getTenantQuotaEnforcer — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Category\CategoryService::getCategoryIdFromFaq — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Category\CategoryService::updateParentCategory — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::expand — Coverage: 100.0% | Lines: 3 | Complexity: 2 phpMyFAQ\Category\Tree\CategoryValidator::isValidCategory — Coverage: 66.7% | Lines: 3 | Complexity: 3 phpMyFAQ\Category\Tree\TreeBuilder::__construct — Coverage: 100.0% | Lines: 3 | Complexity: 1 phpMyFAQ\Category\CategoryCache::updateTreeTabEntry — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Category\CategoryPermissionContext::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\CategoryService::getCategoryIdsFromFaq — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\CategoryService::getCategoryIdFromName — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\CategoryService::getCategoryData — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Image::setFileName — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Image::isValidMimeType — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Permission::normalizeCategoryIds — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Category\Relation::setGroups — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Relation::normalizeIdList — Coverage: 100.0% | Lines: 2 | Complexity: 2 phpMyFAQ\Category\Startpage::setUser — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Startpage::setGroups — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Startpage::setLanguage — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\Tree\TreePathResolver::getBrothers — Coverage: 100.0% | Lines: 2 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getCategories — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::setCategories — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::addCategory — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getCategoryNames — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::setCategoryNames — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::addCategoryName — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getCategoryName — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getTreeTab — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::setTreeTab — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::addTreeTabEntry — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getTreeTabEntry — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::countTreeTab — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getCatTree — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::setCatTree — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getChildren — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::setChildren — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::addChild — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryCache::getChildrenOfParent — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryPermissionContext::getUser — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryPermissionContext::setUser — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryPermissionContext::getGroups — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryPermissionContext::setOwner — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryPermissionContext::setModerator — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryPermissionContext::getModeratorGroupId — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryRepository::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::getAllCategories — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::getAllCategoryIds — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::getCategoriesFromFaq — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::create — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::update — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::delete — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::moveOwnership — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::hasLanguage — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::getCategoryLanguagesTranslated — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryService::getMissingCategories — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::buildLinearTree — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::buildAdminCategoryTree — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::getChildren — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::getChildNodes — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::getLevelOf — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\CategoryTreeFacade::getNodes — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Image::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Navigation\BreadcrumbsBuilder::buildFromIds — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Navigation\CategoryTreeNavigator::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Order::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Permission::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Permission\CategoryPermissionService::buildWhereClause — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Permission\CategoryPermissionService::buildWhereClauseWithInactive — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Relation::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Startpage::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreeBuilder::getNodes — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreeBuilder::getChildren — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreeBuilder::getChildNodes — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreeBuilder::getBrothers — Coverage: 0.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreeBuilder::buildTree — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreeBuilder::computeLevel — Coverage: 100.0% | Lines: 1 | Complexity: 1 phpMyFAQ\Category\Tree\TreePathResolver::getChildren — Coverage: 100.0% | Lines: 1 | Complexity: 2 phpMyFAQ\Category\Tree\TreeVisualizer::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1

 

Sorted by descending CRAP (Change Risk Anti-Patterns) index.

Method CRAP Coverage
phpMyFAQ\Category\CategoryRepository::getCategoryLanguagesTranslated560.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::transformRecursive34.827.1%
phpMyFAQ\Category\CategoryRepository::countCategories300.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::getSymbol120.0%
phpMyFAQ\Category\CategoryRepository::findCategoriesPaginated11.0294.6%
phpMyFAQ\Category\CategoryRepository::findOrderedCategories1196.4%
phpMyFAQ\Category\Image::upload9.0392.9%
phpMyFAQ\Category\Order::setCategoryTree996.2%
phpMyFAQ\Category\Relation::getNumberOfFaqsPerCategory9100.0%
phpMyFAQ\Category\Presentation\AdminCategoryTreePresenter::transform8.0336.8%
phpMyFAQ\Category\CategoryRepository::findAllCategories8100.0%
phpMyFAQ\Category\CategoryRepository::findAllCategoryIds8100.0%
phpMyFAQ\Category\CategoryRepository::findMissingCategories8100.0%
phpMyFAQ\Category\Order::getOrderedFlatList8100.0%
phpMyFAQ\Category\Permission::getAll8100.0%
phpMyFAQ\Category\Relation::getCategoryWithFaqs8100.0%
phpMyFAQ\Category\Order::getParentId7.0292.9%
phpMyFAQ\Category\Startpage::getCategories7100.0%
phpMyFAQ\Category\Relation::getAggregatedFaqNumbers6.2481.2%
phpMyFAQ\Category\CategoryRepository::countByNameLangParent6.0292.3%
phpMyFAQ\Category\CategoryRepository::hasLinkToFaq6.0291.7%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::expandTo6.0193.3%
phpMyFAQ\Category\CategoryRepository::findCategoriesFromFaq6100.0%
phpMyFAQ\Category\Navigation\BreadcrumbsHtmlRenderer::render6100.0%
phpMyFAQ\Category\Permission::add6100.0%
phpMyFAQ\Category\Permission::get6100.0%
phpMyFAQ\Category\Presentation\AdminCategoryTreePresenter::getSymbol60.0%
phpMyFAQ\Category\Tree\TreePathResolver::getValidParentId5.3975.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::getLineCategory5.1283.3%
phpMyFAQ\Category\Tree\TreePathResolver::computeLevel5.0290.9%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::collapseAll5100.0%
phpMyFAQ\Category\Order::getCategoryTree5100.0%
phpMyFAQ\Category\Order::getAllCategories5100.0%
phpMyFAQ\Category\Relation::aggregateRecursively4.5966.7%
phpMyFAQ\Category\Relation::getCategories4.3073.3%
phpMyFAQ\Category\Tree\CategoryValidator::isDirectChild4.1380.0%
phpMyFAQ\Category\Tree\TreeBuilder::buildAdminCategoryTree4.0387.5%
phpMyFAQ\Category\Tree\TreeVisualizer::buildTree4.0288.9%
phpMyFAQ\Category\Tree\TreeBuilder::buildLinearTree4.0191.7%
phpMyFAQ\Category\Tree\TreePathResolver::getNodes4.0190.9%
phpMyFAQ\Category\Image::delete4100.0%
phpMyFAQ\Category\Permission::delete4100.0%
phpMyFAQ\Category\Permission::isRestricted4100.0%
phpMyFAQ\Category\Relation::getCategoryFaqsMatrix4100.0%
phpMyFAQ\Category\Tree\CategoryValidator::isValidCategory3.3366.7%
phpMyFAQ\Category\CategoryPermissionContext::setGroups3100.0%
phpMyFAQ\Category\CategoryRepository::findByIdAndLanguage3100.0%
phpMyFAQ\Category\Language\CategoryLanguageService::getLanguagesToTranslate3100.0%
phpMyFAQ\Category\Language\CategoryLanguageService::getAllExistingTranslations3100.0%
phpMyFAQ\Category\Navigation\BreadcrumbsBuilder::buildCategorySegments3100.0%
phpMyFAQ\Category\Relation::add395.8%
phpMyFAQ\Category\Relation::delete3100.0%
phpMyFAQ\Category\Tree\CategoryValidator::collectDirectChildren3100.0%
phpMyFAQ\Category\Tree\TreePathResolver::getChildNodes3100.0%
phpMyFAQ\Category\CategoryRepository::create2.0281.8%
phpMyFAQ\Category\CategoryRepository::findCategoryIdByName2.0188.9%
phpMyFAQ\Category\CategoryCache::updateTreeTabEntry2100.0%
phpMyFAQ\Category\CategoryPermissionContext::getOwner2100.0%
phpMyFAQ\Category\CategoryService::updateParentCategory2100.0%
phpMyFAQ\Category\Image::setUploadedFile2100.0%
phpMyFAQ\Category\Image::getFileName2100.0%
phpMyFAQ\Category\Language\CategoryLanguageService::getExistingTranslations2100.0%
phpMyFAQ\Category\Language\CategoryLanguageService::getLanguagesInUse2100.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::expand2100.0%
phpMyFAQ\Category\Permission::normalizeCategoryIds2100.0%
phpMyFAQ\Category\Permission\CategoryPermissionService::buildPermissionWhereClause2100.0%
phpMyFAQ\Category\Relation::normalizeIdList2100.0%
phpMyFAQ\Category\Relation::deleteByFAQ2100.0%
phpMyFAQ\Category\Tree\TreeBuilder::getBrothers20.0%
phpMyFAQ\Category\Tree\TreePathResolver::getChildren2100.0%
phpMyFAQ\Category\CategoryCache::getCategories1100.0%
phpMyFAQ\Category\CategoryCache::setCategories1100.0%
phpMyFAQ\Category\CategoryCache::addCategory1100.0%
phpMyFAQ\Category\CategoryCache::getCategoryNames1100.0%
phpMyFAQ\Category\CategoryCache::setCategoryNames1100.0%
phpMyFAQ\Category\CategoryCache::addCategoryName1100.0%
phpMyFAQ\Category\CategoryCache::getCategoryName1100.0%
phpMyFAQ\Category\CategoryCache::getTreeTab1100.0%
phpMyFAQ\Category\CategoryCache::setTreeTab1100.0%
phpMyFAQ\Category\CategoryCache::addTreeTabEntry1100.0%
phpMyFAQ\Category\CategoryCache::getTreeTabEntry1100.0%
phpMyFAQ\Category\CategoryCache::countTreeTab1100.0%
phpMyFAQ\Category\CategoryCache::getCatTree1100.0%
phpMyFAQ\Category\CategoryCache::setCatTree1100.0%
phpMyFAQ\Category\CategoryCache::getChildren1100.0%
phpMyFAQ\Category\CategoryCache::setChildren1100.0%
phpMyFAQ\Category\CategoryCache::addChild1100.0%
phpMyFAQ\Category\CategoryCache::getChildrenOfParent1100.0%
phpMyFAQ\Category\CategoryCache::clear1100.0%
phpMyFAQ\Category\CategoryPermissionContext::__construct1100.0%
phpMyFAQ\Category\CategoryPermissionContext::getUser1100.0%
phpMyFAQ\Category\CategoryPermissionContext::setUser1100.0%
phpMyFAQ\Category\CategoryPermissionContext::getGroups1100.0%
phpMyFAQ\Category\CategoryPermissionContext::setOwner1100.0%
phpMyFAQ\Category\CategoryPermissionContext::setModerator1100.0%
phpMyFAQ\Category\CategoryPermissionContext::getModeratorGroupId1100.0%
phpMyFAQ\Category\CategoryPermissionContext::clear1100.0%
phpMyFAQ\Category\CategoryRepository::__construct1100.0%
phpMyFAQ\Category\CategoryRepository::mapRow1100.0%
phpMyFAQ\Category\CategoryRepository::getTenantQuotaEnforcer1100.0%
phpMyFAQ\Category\CategoryRepository::update1100.0%
phpMyFAQ\Category\CategoryRepository::moveOwnership1100.0%
phpMyFAQ\Category\CategoryRepository::hasLanguage1100.0%
phpMyFAQ\Category\CategoryRepository::updateParentCategory1100.0%
phpMyFAQ\Category\CategoryRepository::delete1100.0%
phpMyFAQ\Category\CategoryService::__construct1100.0%
phpMyFAQ\Category\CategoryService::getAllCategories1100.0%
phpMyFAQ\Category\CategoryService::getAllCategoryIds1100.0%
phpMyFAQ\Category\CategoryService::getCategoriesFromFaq1100.0%
phpMyFAQ\Category\CategoryService::getCategoryIdFromFaq1100.0%
phpMyFAQ\Category\CategoryService::getCategoryIdsFromFaq1100.0%
phpMyFAQ\Category\CategoryService::getCategoryIdFromName1100.0%
phpMyFAQ\Category\CategoryService::getCategoryData1100.0%
phpMyFAQ\Category\CategoryService::create1100.0%
phpMyFAQ\Category\CategoryService::update1100.0%
phpMyFAQ\Category\CategoryService::delete1100.0%
phpMyFAQ\Category\CategoryService::moveOwnership1100.0%
phpMyFAQ\Category\CategoryService::hasLanguage1100.0%
phpMyFAQ\Category\CategoryService::checkIfCategoryExists1100.0%
phpMyFAQ\Category\CategoryService::getCategoryLanguagesTranslated1100.0%
phpMyFAQ\Category\CategoryService::getMissingCategories1100.0%
phpMyFAQ\Category\CategoryTreeFacade::__construct1100.0%
phpMyFAQ\Category\CategoryTreeFacade::buildLinearTree1100.0%
phpMyFAQ\Category\CategoryTreeFacade::buildAdminCategoryTree1100.0%
phpMyFAQ\Category\CategoryTreeFacade::getChildren1100.0%
phpMyFAQ\Category\CategoryTreeFacade::getChildNodes1100.0%
phpMyFAQ\Category\CategoryTreeFacade::getLevelOf1100.0%
phpMyFAQ\Category\CategoryTreeFacade::getNodes1100.0%
phpMyFAQ\Category\Image::__construct1100.0%
phpMyFAQ\Category\Image::setFileName1100.0%
phpMyFAQ\Category\Image::getFileExtension1100.0%
phpMyFAQ\Category\Image::isValidMimeType1100.0%
phpMyFAQ\Category\Navigation\BreadcrumbsBuilder::buildFromIds1100.0%
phpMyFAQ\Category\Navigation\BreadcrumbsBuilder::buildFromIdsWithStartPage1100.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::__construct1100.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::transform1100.0%
phpMyFAQ\Category\Navigation\CategoryTreeNavigator::buildTree1100.0%
phpMyFAQ\Category\Order::__construct1100.0%
phpMyFAQ\Category\Order::add1100.0%
phpMyFAQ\Category\Order::remove1100.0%
phpMyFAQ\Category\Permission::__construct1100.0%
phpMyFAQ\Category\Permission\CategoryPermissionService::buildWhereClause1100.0%
phpMyFAQ\Category\Permission\CategoryPermissionService::buildWhereClauseWithInactive1100.0%
phpMyFAQ\Category\Relation::__construct1100.0%
phpMyFAQ\Category\Relation::setGroups1100.0%
phpMyFAQ\Category\Startpage::__construct1100.0%
phpMyFAQ\Category\Startpage::setUser1100.0%
phpMyFAQ\Category\Startpage::setGroups1100.0%
phpMyFAQ\Category\Startpage::setLanguage1100.0%
phpMyFAQ\Category\Tree\TreeBuilder::__construct1100.0%
phpMyFAQ\Category\Tree\TreeBuilder::getNodes1100.0%
phpMyFAQ\Category\Tree\TreeBuilder::getChildren1100.0%
phpMyFAQ\Category\Tree\TreeBuilder::getChildNodes1100.0%
phpMyFAQ\Category\Tree\TreeBuilder::buildTree1100.0%
phpMyFAQ\Category\Tree\TreeBuilder::computeLevel1100.0%
phpMyFAQ\Category\Tree\TreePathResolver::getBrothers1100.0%
phpMyFAQ\Category\Tree\TreeVisualizer::__construct1100.0%