{
PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($this, 'onPearError'));
+ $this->checkSystem();
+
$ff = HTML_FlexyFramework::get();
+ if(!empty($ff->Core_Notify)){
+ require_once 'Pman/Core/NotifySmtpCheck.php';
+ $x = new Pman_Core_NotifySmtpCheck();
+ $x->check();
+ }
+
$this->disabled = explode(',', $ff->disable);
//$this->fixSequencesPgsql();exit;
continue;
}
- $cmd = "$mysql_cmd -f < " . escapeshellarg($fn) ;
+ $cmd = "$mysql_cmd -f < " . escapeshellarg($fn) ." 2>&1" ;
echo basename($dir).'/'. basename($fn) . '::' . $cmd. ($this->cli ? "\n" : "<BR>\n");
- passthru($cmd);
+
+ $fp = popen($cmd, "r");
+ while(!feof($fp))
+ {
+ // send the current file part to the browser
+ $line = trim(fgets($fp, 1024));
+ if (empty($line)) {
+ continue;
+ }
+ $matches = array();
+ if (!preg_match('/^ERROR\s+([0-9]+)/', $line, $matches)) {
+ echo " ---- {$line}\n"; flush();
+ continue;
+ }
+ $continue =0;
+ switch($matches[1]) {
+ case 1017: // cause by renaming table -- old one does not exist..
+ case 1050: // create tables triggers this..
+ case 1060: // Duplicate column name
+ case 1061: // Duplicate key name - triggered by add index.. but could hide error. - unlikely though.
+ case 1091: // drop index -- name does not exist.. might hide errors..
+
+ case 1146: // drop a index on an unknown table.. - happens rarely...
+ case 1054: // Unknown column -- triggered by CHANGE COLUMN - but may hide other errrors..
+ $continue = 1;
+ break;
+
+ }
+ if ($continue) {
+ echo " ---- {$line}\n"; flush();
+ continue;
+ }
+ // real errors...
+ // 1051: // Unknown table -- normally drop = add iff exists..
+ echo "File: $fn\n$line\n";
+ exit;
+
+
+ }
+
}
function checkSystem()
{
+ // most of these are from File_Convert...
+
// these are required - and have simple dependancies.
require_once 'System.php';
$req = array(
'convert',
'grep',
- 'html2text',
'pdfinfo',
- 'pdftocairo',
- 'pdftoppma',
- 'rsvg-convert',
+ 'pdftoppm',
+ 'rsvg-convert', //librsvg2-bin
'strings',
);
'abiword',
'faad',
'ffmpeg',
+ 'html2text', // not availabe in debian squeeze
+ 'pdftocairo', //poppler-utils - not available in debian squeeze.
+
'lame',
'ssconvert',
'unoconv',