\n");
echo ("
\n");
echo (" Übersicht für " . $_GET ["template"] . "\n");
echo (" \n");
echo ("\n");
echo (" \n");
echo (" \n");
echo (" ");
}
else
header ("Content-Type: text/plain; charset=utf8");
// u_kolossos_p_yarrow.pub_tt1_de
foreach ($xml->Group as $Group)
{
foreach ($Group->Parameter as $p)
{
if ($p ['null'] == 'false')
{
$result = mysql_query ("SELECT DISTINCT name FROM u_kolossos_p_yarrow.pub_tt1_de WHERE lang = 'de' AND " .
"tp_name = '" . mysql_escape_string ($_GET ["template"]) . "' AND " .
"(entry_name = '" . mysql_escape_string ($p ['name']) . "' AND REPLACE(Value, ' ', '') = '' OR " .
"NOT EXISTS (SELECT 't' FROM u_kolossos_p_yarrow.pub_tt1_de AS T2 " .
"WHERE u_kolossos_p_yarrow.pub_tt1_de.lang = T2.lang AND u_kolossos_p_yarrow.pub_tt1_de.name = T2.name AND " .
"u_kolossos_p_yarrow.pub_tt1_de.tp_name = T2.tp_name AND T2.entry_name = '" . mysql_escape_string ($p ['name']) . "'))");
while ($r = mysql_fetch_row ($result))
$ArticleErrors [$r [0]] ['notnull'] [(string) $p ['name']] = 1;
}
if (isset ($p->Value))
{
$LegalValues = array ();
foreach ($p->Value as $v)
$LegalValues [] = "'" . mysql_escape_string ($v) . "'";
$result = mysql_query ("SELECT DISTINCT name, Value FROM u_kolossos_p_yarrow.pub_tt1_de WHERE lang = 'de' AND " .
"tp_name = '" . mysql_escape_string ($_GET ["template"]) . "' AND " .
"entry_name = '" . mysql_escape_string ($p ['name']) . "' AND " .
"REPLACE(Value, ' ', '') <> '' AND Value NOT IN (" . join (', ', $LegalValues) . ')');
while ($r = mysql_fetch_row ($result))
$ArticleErrors [$r [0]] ['values'] [(string) $p ['name']] [$r [1]]++;
}
if (isset ($p->Condition))
{
$result = mysql_query ("SELECT DISTINCT name, Value FROM u_kolossos_p_yarrow.pub_tt1_de WHERE lang = 'de' AND tp_name = '" . mysql_escape_string ($_GET ["template"]) . "' AND entry_name = '" . mysql_escape_string ($p ['name']) . "' AND REPLACE(Value, ' ', '') <> '' AND Value NOT REGEXP (REPLACE (REPLACE (REPLACE ('" . mysql_escape_string ($p->Condition) . "', '[\\\\d]', '[0-9]'), '\\\\d', '[0-9]'), '*?', '*'))");
while ($r = mysql_fetch_row ($result))
$ArticleErrors [$r [0]] ['conds'] [(string) $p ['name']] [$r [1]]++;
}
$Parameters [] = mysql_escape_string ($p ['name']);
}
}
$result = mysql_query ("SELECT DISTINCT name, entry_name FROM u_kolossos_p_yarrow.pub_tt1_de WHERE lang = 'de' AND tp_name = '" . mysql_escape_string ($_GET ["template"]) . "' AND entry_name NOT IN ('" . join ("', '", $Parameters) . "')");
while ($r = mysql_fetch_row ($result))
$ArticleErrors [$r [0]] ['unknown'] [$r [1]]++;
ksort ($ArticleErrors);
foreach ($ArticleErrors as $Article => &$Value)
{
echo (!$_GET ["wikiformat"] ? ("- " . htmlspecialchars ($Article) . ":\n
\n") : ("* [[" . $Article . "]]:\n"));
if (isset ($Value ['unknown'])) // Unbekannte Parameter
{
ksort ($Value ['unknown']);
echo ((!$_GET ["wikiformat"] ? "- " : "** ") . "Unbekannte Parameter: " . join (', ', array_keys ($Value ['unknown'])) . (!$_GET ["wikiformat"] ? "
\n" : "\n"));
}
if (isset ($Value ['notnull'])) // Leerer/nicht vorhandene Parameter
{
ksort ($Value ['notnull']);
echo ((!$_GET ["wikiformat"] ? "- " : "** ") . "Leerer/nicht vorhandener Parameter: " . join (', ', array_keys ($Value ['notnull'])) . (!$_GET ["wikiformat"] ? "
\n" : "\n"));
}
if (isset ($Value ['values'])) // Unbekannte Parameter
{
$list = '';
ksort ($Value ['values']);
foreach ($Value ['values'] as $k1 => &$v1)
{
if ($list != '')
$list .= ', ';
ksort ($v1);
$list .= $k1 . ' (' . join (', ', array_keys ($v1)) . ')';
}
echo ((!$_GET ["wikiformat"] ? "- " : "** ") . "Nicht erlaubter Parameter (Auswahlliste): " . $list . (!$_GET ["wikiformat"] ? "
\n" : "\n"));
}
if (isset ($Value ['conds'])) // Unbekannte Parameter
{
$list = '';
ksort ($Value ['conds']);
foreach ($Value ['conds'] as $k1 => &$v1)
{
if ($list != '')
$list .= ', ';
ksort ($v1);
$list .= $k1 . ' (' . join (', ', array_keys ($v1)) . ')';
}
echo ((!$_GET ["wikiformat"] ? "- " : "** ") . "Nicht erlaubter Parameter (regulärer Ausdruck): " . $list . (!$_GET ["wikiformat"] ? "
\n" : "\n"));
}
echo (!$_GET ["wikiformat"] ? ("
\n") : (""));
}
if (!$_GET ["wikiformat"])
{
echo ("
\n");
echo (" \n");
echo ("