From ed32944d1cc20e50c1dc0a9f9412f004e748ccb7 Mon Sep 17 00:00:00 2001
From: SofianeLasri <alasri250@gmail.com>
Date: Sat, 4 Sep 2021 15:22:17 +0200
Subject: [PATCH] 15H22 - Ajout d'une fonction de copie de dossier

---
 vbcms-core/functions.php | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/vbcms-core/functions.php b/vbcms-core/functions.php
index ba0829d..bd7320d 100644
--- a/vbcms-core/functions.php
+++ b/vbcms-core/functions.php
@@ -260,6 +260,28 @@ function getVBcmsPermissions(){
     return $permissions;
 }
 
+// https://gist.github.com/gserrano/4c9648ec9eb293b9377b
+function recursive_copy_if_different($src,$dst) {
+    $dir = opendir($src);
+    @mkdir($dst);
+    while(( $file = readdir($dir)) ) {
+        if (( $file != '.' ) && ( $file != '..' )) {
+            if ( is_dir($src . '/' . $file) ) {
+                recursive_copy($src .'/'. $file, $dst .'/'. $file);
+            } else {
+                if(file_exists($dst .'/'. $file)){
+                    if(hash_file('md5', $dst .'/'. $file)!=hash_file('md5', $src .'/'. $file)){
+                        copy($src .'/'. $file,$dst .'/'. $file);
+                    }
+                }else {
+                    copy($src .'/'. $file,$dst .'/'. $file);
+                }
+            }
+        }
+    }
+    closedir($dir);
+}
+
 /////////////////////////////////
 // FONCTIONS DES MODULES DE BASES
 /////////////////////////////////
-- 
GitLab