#!/usr/local/bin/php -q
<?php

function make_lang_arr($path)
{
	$eng = file($path);
	foreach ($eng as $v) {
		$key = strtok($v, ':');
		$p = strlen($key);
		while ($v[++$p] == "\t");
		$lang[$key] = substr($v, $p);
	}

	return $lang;
}

function make_lang_todo($list, $name)
{
	if (!count($list)) {
		return;
	}

	if (!($fp = fopen($name . '.todo', 'w'))) {
		exit("unable to open ".$name.".todo for writing\n");
	}
	foreach ($list as $k => $v) {
		$n_tabs = 4 - floor((strlen($k) + 1) / 8);
		fwrite($fp, $k . ":" . str_repeat("\t", $n_tabs) . $v);	
	}
	fclose($fp);
}

	$eng = make_lang_arr('english/msg');
	
	$dp = opendir('.');
	readdir($dp); readdir($dp); 
	while ($de = readdir($dp)) {
		if (!is_dir($de) || $de == 'english' || !@file_exists($de . '/msg')) {
			continue;
		}
		$curl = make_lang_arr($de . '/msg');
		$res = array_keys(array_diff_assoc($eng, $curl));
		foreach ($res as $v) {
			unset($curl[$v]);
		}
		printf("%-15s translation has %-4d untranslated strings\n", $de, count($curl));
		make_lang_todo($curl, $de);
	}
	closedir($dp);
?>