<?php

include('includes/global.php');

ShowPage();

if(array_key_exists('group', $_GET)) $GroupId = $_GET['group']; else $GroupId = 1;
$Table = $TranslationTree[$GroupId]['TablePrefix'];
if(array_key_exists('action', $_GET)) $Action = $_GET['action']; else $Action = '';

if(($Action == 'search')) 
{
  if(array_key_exists('search', $_GET)) $Search = $_GET['search'];
  else $Search = $_POST['search'];

  echo('<table class="BaseTable"><tr><th>Skupina</th><th>Výsledků</th></tr>');
  foreach($TranslationTree as $Group) {
  	$Table = $Group['TablePrefix'];
  
  	$sql = 'SELECT count(*) FROM `'.$Table.'` WHERE `ID` LIKE "%'.$Search.'%"
    	OR `entry` LIKE "%'.$Search.'%"
    	OR `User` LIKE "%'.$Search.'%"
    	OR `Complete` LIKE "%'.$Search.'%"';
  	foreach($Group['Items'] as $Item) {
		if($Item['Column'] != '') $sql .= ' OR `'.$Item['Column'].'` LIKE "%'.$Search.'%"';
  	}
  	$Line = mysql_fetch_row($Database->SQLCommand($sql));
	echo('<tr><td><a href="TranslationList.php?group='.$Group['Id'].'&amp;action=search&amp;search='.$Search.'">'.$Group['Name'].'</a></td><td>'.$Line[0].'</td></tr>');
  }
  
  	$Line = mysql_fetch_row($Database->SQLCommand('SELECT count(*) FROM `user` WHERE `user` LIKE "%'.$Search.'%"'));
	echo('<tr><td><a href="userlist.php?search='.$Search.'">Uživatelé</a></td><td>'.$Line[0].'</td></tr>');
  	$Line = mysql_fetch_row($Database->SQLCommand('SELECT count(*) FROM `team` WHERE `name` LIKE "%'.$Search.'%" OR `description` LIKE "%'.$Search.'%"'));
	echo('<tr><td><a href="team.php?search='.$Search.'">Týmy</a></td><td>'.$Line[0].'</td></tr>');
  	$Line = mysql_fetch_row($Database->SQLCommand('SELECT count(*) FROM `verseclient` WHERE `text` LIKE "%'.$Search.'%"'));
	echo('<tr><td><a href="download.php?addon">Čeština pro klienta</a></td><td>'.$Line[0].'</td></tr>');
	echo('<tr><td><a href="aowow/?search='.$Search.'">Vyhledávací databáze AoWoW</a></td></tr>');
  	$Line = mysql_fetch_row($Database->SQLCommand('SELECT count(*) FROM `dictionary` WHERE (`Text` LIKE "%'.$Search.'%" OR `Description` LIKE "%'.$Search.'%") AND Language = 0'));
	echo('<tr><td><a href="dictionary.php?search='.$Search.'">Slovníček</a></td><td>'.$Line[0].'</td></tr>');
  
  echo('</table>');
}


if(($Action == 'dbkit') and Licence(LICENCE_ADMIN)) 
{
	echo ('<form action="?action=dbkit" method="post">');
	echo('Najít: <input type="text" name="find" /><br />');
	echo('Nahradit: <input type="text" name="replace" /><br />');
	echo('<input type="submit" value="Najít/nahradit" /><br />');
    echo('</form><br />');
	echo ('<a href="?action=dbkit&amp;Take">Opravit data v sloupci Take</a><br />');
	echo ('<a href="?action=dbkit&amp;ShortCut">Opravit data v sloupci ShortCut</a><br />');
	
	echo ('<br /><form action="?action=dbkit" method="post">');
	echo('Vymazat log typ : <input type="text" name="Type" /> ');
	echo('<input type="submit" value="Vymazat" /><br />');
    echo('</form><br />');

    if (array_key_exists('Type',$_POST)) {
  			$sql = 'DELETE FROM log WHERE Type = '.$_POST['Type'];
		    $Database->SQLCommand($sql);
			WriteLog('Vymazán log '.$_POST['Type'], 4);
  			echo (' Vymazán log '.$_POST['Type']);
    }
    
	if (array_key_exists('find',$_POST)) {
    	echo ('Začínám nahrazovat: <br />');
    	$find = $_POST['find'];
    	$replace = $_POST['replace'];
    	
	  foreach($TranslationTree as $Group) {
    	$Table = $Group['TablePrefix'];
    	echo ($Table.' ');
		
		$sql = 'SELECT * FROM '.$Table.' WHERE (Language <> 0) AND (';
		foreach($Group['Items'] as $Item) {
			if($Item['Column'] != '') $sql .= '`'.$Item['Column'].'` LIKE "%'.$find.'%" OR ';
  		}
  		$sql = substr($sql,0,strlen($sql)-4);
  		$sql .= ')';
  		
	    $ID = $Database->SQLCommand($sql);
  		while ($Line = mysql_fetch_assoc($ID)) {
  			$sql = 'UPDATE '.$Table.' SET ';
			foreach($Group['Items'] as $Item) {
				$Column_text = addslashes(str_replace($find,$replace,$Line[$Item['Column']]));
				$sql .= ' '.$Item['Column'].' = "'.$Column_text.'",';
  			}
	  		$sql = substr($sql,0,strlen($sql)-1);
  			$sql .= ' WHERE ID = '.$Line['ID'];
		    $Database->SQLCommand($sql);
		    echo ('.');
  		}
		
  		echo (' <strong>Hotovo</strong> <br />');
		if (mysql_num_rows($ID) > 0) {
			WriteLog('Použita oprava DB ovlivněno '.mysql_num_rows($ID).' řádků z tabulky '.$Table.', "'.$find.'" nahrazeno za "'.$replace.'"', 4);
  			echo (' Použita oprava DB ovlivněno '.mysql_num_rows($ID).' řádků z tabulky '.$Table.', "'.$find.'" nahrazeno za "'.$replace.'"<br />');
		}
  	  }
	}
	
	//oprava dat v sloupci Take
    if (array_key_exists('Take',$_GET)) {
    	echo ('Začínám opravovat Take: <br />');
   	
	  foreach($TranslationTree as $Group) {
    	$Table = $Group['TablePrefix'];
    	echo ($Table.' ');
		
		$sql = 'SELECT ID,entry as entry_tran, (SELECT ID FROM '.$Table.' WHERE Language = 0 AND entry = entry_tran LIMIT 1) as ID_orig FROM '.$Table.' WHERE (Language <> 0) AND (Take = 0)';
  		
	    $ID = $Database->SQLCommand($sql);
  		while ($Line = mysql_fetch_assoc($ID)) {
  			$sql = 'UPDATE '.$Table.' SET Take = '.$Line['ID_orig'].' WHERE ID = '.$Line['ID'];
		    $Database->SQLCommand($sql);
		    echo ('.');
  		}
		
  		echo (' <strong>Hotovo</strong> <br />');
		if (mysql_num_rows($ID) > 0) {
			WriteLog('Použita oprava DB na sloupec Take '.mysql_num_rows($ID).' řádků z tabulky '.$Table, 4);
  			echo (' Použita oprava DB na sloupec Take '.mysql_num_rows($ID).' řádků z tabulky '.$Table.'<br />');
		}
  	  }
	}	
	//oprava dat ShortCut
    if (array_key_exists('ShortCut',$_GET)) {
    	echo ('Začínám opravovat Take: <br />');
   			
			
		$Tables = array ('global_strings','glue_strings');	

	  foreach($Tables as $Table) {
    	echo ($Table.' ');
		$sql = 'SELECT gs_orig.ID, gs_tran.entry, gs_tran.ShortCut as ShortCut_tran, gs_orig.ShortCut  as ShortCut_orig FROM '.$Table.' as gs_tran JOIN '.$Table.' as gs_orig ON gs_orig.entry = gs_tran.entry WHERE gs_tran.Language <> 0 AND gs_tran.ShortCut <> gs_orig.ShortCut';  		
	    $ID = $Database->SQLCommand($sql);
  		while ($Line = mysql_fetch_assoc($ID)) {
  			$sql = 'UPDATE '.$Table.' SET ShortCut = '.$Line['ShortCut_orig'].' WHERE ID = '.$Line['ID'];
		    $Database->SQLCommand($sql);
		    echo ('.');
  		}
		
  		echo (' <strong>Hotovo</strong> <br />');
		if (mysql_num_rows($ID) > 0) {
			WriteLog('Použita oprava DB na sloupec ShortCut '.mysql_num_rows($ID).' řádků z tabulky '.$Table, 4);
  			echo (' Použita oprava DB na sloupec ShortCut '.mysql_num_rows($ID).' řádků z tabulky '.$Table.'<br />');
		}
  	  }
	}	
}


if(($Action == 'delete') and Licence(LICENCE_MODERATOR)) 
{
  $TextID = $_GET['ID'];       
  $Database->SQLCommand('DELETE FROM '.$Table.' WHERE ID = '.$TextID.' AND Language <> 0');
  echo('Překlad byl smazán!');   
  WriteLog('Překlad byl smazán! <a href="form.php?group='.$GroupID.'&amp;ID='.$TextID.'">'.$TextID.'</a>', 4);
}

if($Action == 'shoutbox') 
{
  if(array_key_exists('shoutbox', $_GET)) $shoutbox = $_GET['shoutbox'];
  else $shoutbox = '';
  if($shoutbox == '') 
  {
    echo('<form action="action.php?action=shoutbox&amp;shoutbox=1" method="post"><fieldset><legend>Nová zpráva shoutboxu</legend>
      Uživatel: ');
    if(Licence(LICENCE_USER)) echo('<b>'.$_SESSION['User'].'</b><br />'); 
	else echo('<input type="text" name="user" /><br />');
    echo('Text zprávy: <br>
      <textarea  onkeydown="ResizeTextArea(this)" name="text" cols="40"></textarea> <br />
      <input type="submit" value="Odeslat" /><br /></fieldset>
      </form>');
  } else 
  {
    if(Licence(LICENCE_USER)) $user = $_SESSION['User']; 
	else die('Pro vkládaní musíte byt registrováni!');
    $text = $_POST['text'];
    $Database->SQLCommand("INSERT INTO `shoutbox` ( `user` , `text` , `date` , `IP` ) 
    VALUES ( '$user', '$text', now(), '".$_SERVER['REMOTE_ADDR']."');");
    echo('Zpráva vložena!<br>Budete přesměrováni...');   
    echo('
        <script type="text/javascript" language="JavaScript" charset="utf-8">
            setTimeout("parent.location.href=\'index.php\'",1000)
        </script>');
  }
}

ShowFooter();      

?>

