'; $ArrStr1 = explode(' ', $String1); $ArrStr2 = explode(' ', $String2); for ($i = 0; $i < count($ArrStr1); $i++) { if (isset($ArrStr2[$i])) { if ($ArrStr1[$i] == $ArrStr2[$i]) { $Result .= $ArrStr1[$i].' '; } else { $find = false; for ($j = 0; $j < count($ArrStr2); $j++) { if (($ArrStr1[$i] == $ArrStr2[$j]) and ($find == false)) { $Result .= $ArrStr1[$i].' '; $find = true; } } if ($find == false) $Result .= ''.$ArrStr1[$i].' '; } } else $Result .= ''.$ArrStr1[$i].' '; } return $Result; } function Show(): string { $User = ModuleUser::Cast($this->System->GetModule('User'))->User; $TranslationTree = $this->System->ModuleManager->Modules['Translation']->GetTranslationTree(); $Output = ''; if ($User->Licence(LICENCE_USER)) { $Output = 'Text je porovnáván vždy ku předešlému (vlevo). Změny jsou zvýrazněny barvou.

'; $GroupId = LoadGroupIdParameter(); $Table = $TranslationTree[$GroupId]['TablePrefix']; if (array_key_exists('entry', $_GET)) { $Textentry = $_GET['entry']; if ((array_key_exists('ID1', $_GET)) and ($_GET['ID1'] <> -1)) //porovnání pouze 2 textů { $TextID1 = $_GET['ID1']; $TextID2 = $_GET['ID2']; $WhereID = ' AND ((`'.$Table.'`.`ID` = '.$TextID1.') OR (`'.$Table.'`.`ID` = '.$TextID2.'))'; } else $WhereID = ''; $DataID = $this->Database->query('SELECT `'.$Table.'`.*, `User`.`Name` AS `UserName`, '. '`Language`.`Name` AS `LanguageName` '. 'FROM '.$Table.' LEFT JOIN `User` ON `User`.`Id` = `'.$Table.'`.`User` '. ' LEFT JOIN `Language` ON `Language`.`Id` = `'.$Table.'`.`Language` '. 'WHERE `Entry` = '.$Textentry.' '.$WhereID.' ORDER BY `Language`'); while ($Line[] = $DataID->fetch_assoc()); array_pop($Line); $Output .= 'Počet porovnávaných textů: '.count($Line).'
'; $Output .= 'Číslo textu: '.$Textentry.''. ''. ''; foreach ($Line as $Index => $LineItem) $Output .= ''; $Output .= ''. ''. ''; foreach ($Line as $Index => $LineItem) $Output .= ''; $Output .= ''. ''; foreach ($Line as $Index => $LineItem) $Output .= ''; $Output .= ''. ''; foreach ($Line as $Index => $LineItem) $Output .= ''; $Output .= ''. ''; foreach ($Line as $Index => $LineItem) $Output .= ''; $Output .= ''; foreach ($TranslationTree[$GroupId]['Items'] as $Index => $TextItem) { $writethis = false; for ($i = 0; $i < count($Line); $i++) { if ($Line[$i][$TextItem['Column']] <> '') $writethis = true; } if ($writethis) { $Output .= ''; for ($i = 0; $i < count($Line); $i++) { if ($i > 0) { $Output .= ''; } else $Output .= ''; } $Output .= ''; } } $Output .= '
Přeložil'.$LineItem['UserName'].'
ID textu'.$LineItem['ID'].'
Převzato'.$LineItem['Take'].'
'.T('Language').''.T($LineItem['LanguageName']).'
'.T('Version').''.GetVersionWOW($LineItem['VersionStart']).' - '.GetVersionWOW($LineItem['VersionEnd']).'
'.$TextItem['Name'].''; $Output .= str_replace("\n", '
', $this->CompareString(htmlspecialchars($Line[$i][$TextItem['Column']]),htmlspecialchars($Line[$i - 1][$TextItem['Column']]))); $Output .= '
'.htmlspecialchars($Line[$i][$TextItem['Column']]).'
'; } else $Output .= ShowMessage('Nebylo zadáno ID.', MESSAGE_CRITICAL); } else $Output .= ShowMessage('Porovnávat můžou pouze překladatelé!', MESSAGE_CRITICAL); return $Output; } }