defaultlang; echo "

" . $this->getLang("outdated translations") . "

"; // 2. search for all pages in the default language that should be translated $pages = $this->getAllPages(); /** @var Doku_Renderer_xhtml $xhtml_renderer */ $xhtml_renderer = p_get_renderer('xhtml'); echo ""; echo ""; foreach ($helper->translations as $t) { if($t === $default_language) { continue; } echo ""; } echo ""; foreach ($pages as $page) { if ($helper->getLangPart($page["id"]) === $default_language && $helper->istranslatable($page["id"], false) && page_exists($page["id"]) ) { $row = ""; $showRow = false; list($lc, $idpart) = $helper->getTransParts($page["id"]); foreach ($helper->translations as $t) { if ($t === $default_language) { continue; } list($transl, $name) = $helper->buildTransID($t, $idpart); // 3. check if the translated pages exist & their age compared to the original $difflink = ''; if(!page_exists($transl)) { $class = "missing"; $title = $this->getLang("missing"); $showRow = true; } else { $translfn = wikiFN($transl); if($page['mtime'] > @filemtime($translfn)) { $class = "outdated"; $difflink = " getLang("outdated"); $showRow = true; } else { $class = "current"; $title = $this->getLang('current'); } } $row .= ""; } $row .= ""; // 4. print a table if the translation may be outdated if ($showRow) { echo $row; } } } echo "
default: $default_language$t
" . $xhtml_renderer->internallink($page['id'],null,null,true) . "" . $xhtml_renderer->internallink($transl,$title,null,true) . $difflink . "
"; } function getAllPages() { global $conf; $namespace = $this->getConf("translationns"); $dir = $conf['datadir'] . '/' . str_replace(':', '/', $namespace); $pages = array(); search($pages, $dir, 'search_allpages',array()); return $pages; } }