PHP7 fix
[Pman.Core] / UpdateDatabase.php
index 2b2a03f..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();
             
@@ -1277,10 +1297,13 @@ class Pman_Core_UpdateDatabase extends Pman
     
     function clearApacheDataobjectsCache()
     {
-        echo "Clearing Database Cache\n";
+        
         // this needs to clear it's own cache along with remote one..
   
         $url = "http://localhost{$this->local_base_url}/Core/RefreshDatabaseCache";
+        
+        echo "Clearing Database Cache : http://localhost{$this->local_base_url}/Core/RefreshDatabaseCache\n";
+        
         $response = $this->curl($url);
         
         $json = json_decode($response, true);
@@ -1297,7 +1320,7 @@ class Pman_Core_UpdateDatabase extends Pman
     
     function clearApacheAssetCache()
     {
-        echo "Clearing Asset Cache\n";
+        echo "Clearing Asset Cache : http://localhost{$this->local_base_url}/Core/Asset\n";
         $response = $this->curl(
             "http://localhost{$this->local_base_url}/Core/Asset",
             array( '_clear_cache' => 1 ,'returnHTML' => 'NO' ),