PHP7 fix
[Pman.Core] / UpdateDatabase.php
index 19c0dd9..d3ec063 100644 (file)
@@ -67,12 +67,24 @@ class Pman_Core_UpdateDatabase extends Pman
             'min' => 1,
             'max' => 1,
         ),
+        'skip-email-import' => array(
+            'desc' => 'Skip email import',
+            'default' => '',
+            'min' => 1,
+            'max' => 1,
+        ),
         'procedures-only' => array(
             'desc' => 'Only import procedures (not supported by most modules yet) - ignores sql directory',
             'default' => '',
             'min' => 1,
             'max' => 1,
         ),
+        'disable-create-triggers' => array(
+            'desc' => 'So not create the mysql triggers',
+            'default' => '',
+            'min' => 1,
+            'max' => 1,
+        ),
         
         'json-person' => array(
             'desc' => 'Person JSON file',
@@ -237,18 +249,20 @@ class Pman_Core_UpdateDatabase extends Pman
         
         // this will trigger errors about freetext indexes - we will have to remove them manually.?
         // otherwise we need to do an sql query to find them, then remove them (not really worth it as it only affects really old code..)
-        
+        echo "Run extensions\n";
+
         $this->runExtensions(); 
 
         
         if (empty($opts['data-only'])) {
+            echo "Import SQL\n";
             $this->importSQL();
         }
         if (!empty($opts['only-module-sql'])) {
             return;
         }
         
-        
+        echo "run Update Modules Data\n";
 
         $this->runUpdateModulesData();
         
@@ -901,6 +915,9 @@ class Pman_Core_UpdateDatabase extends Pman
     
     function updateDataEmails()
     {
+        if (!empty($this->opts['skip-email-import'])) {
+            return;
+        }
         foreach ($this->emailTemplates as $k => $mail) {
             
             $mail_dir = "{$this->rootDir}{$mail['template_dir']}";
@@ -1200,15 +1217,18 @@ class Pman_Core_UpdateDatabase extends Pman
         $dburl = parse_url($ff->database);
         
         $dbtype = $dburl['scheme'];
-       
+        $dbtype  = ($dbtype == 'mysqli') ? 'mysql' : $dbtype;
+        
         foreach($this->extensions as $ext) {
        
             $scls = ucfirst($dbtype). $ext;
             $cls = __CLASS__ . '_'. $scls;
             $fn = implode('/',explode('_', $cls)).'.php';
+            
             if (!file_exists(__DIR__.'/UpdateDatabase/'. $scls .'.php')) {
                 return;
             }
+            echo "Running : {$fn}\n";
             require_once $fn;
             $c = new $cls();