]> git.mxchange.org Git - friendica.git/blobdiff - src/Database/View.php
Detection of local requests
[friendica.git] / src / Database / View.php
index fd0a8ce1a52cf48a700a5792f9626d7cef1afe6d..e0d30481524d3bb0c6fe07b2806dfaa202b5c1cc 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
- * @copyright Copyright (C) 2020, Friendica
+ * @copyright Copyright (C) 2010-2021, the Friendica project
  *
  * @license GNU AGPL version 3 or any later version
  *
@@ -77,6 +77,20 @@ class View
 
        public static function create(bool $verbose, bool $action)
        {
+               // Delete previously used views that aren't used anymore
+               foreach(['post-view', 'post-thread-view'] as $view) {
+                       if (self::isView($view)) {
+                               $sql = sprintf("DROP VIEW IF EXISTS `%s`", DBA::escape($view));
+                               if (!empty($sql) && $verbose) {
+                                       echo $sql . ";\n";
+                               }
+               
+                               if (!empty($sql) && $action) {
+                                       DBA::e($sql);
+                               }
+                       }
+               }
+
                $definition = self::definition();
 
                foreach ($definition as $name => $structure) {
@@ -117,11 +131,11 @@ class View
                        $sql = sprintf("DROP TABLE IF EXISTS `%s`", DBA::escape($name));
                }
 
-               if ($verbose) {
+               if (!empty($sql) && $verbose) {
                        echo $sql . ";\n";
                }
 
-               if ($action) {
+               if (!empty($sql) && $action) {
                        DBA::e($sql);
                }
 
@@ -158,7 +172,7 @@ class View
        }
 
        /**
-        * Check if the given table/view is a view
+        * Check if the given table/view is a table
         *
         * @param string $table
         * @return boolean "true" if it's a table