diff --git a/include/management/snapshot/class_SnapshotAttribute.inc b/include/management/snapshot/class_SnapshotAttribute.inc
index 895e2e677e4819632053b2149fb7aba3d6cd4c85..d09e493237b2b5a623734d25e83b00dc1ac1b04d 100755
--- a/include/management/snapshot/class_SnapshotAttribute.inc
+++ b/include/management/snapshot/class_SnapshotAttribute.inc
@@ -87,7 +87,7 @@ class SnapshotsAttribute extends OrderedArrayAttribute
   protected function getAttributeArrayValue ($key, $value)
   {
     $values = [
-      date(_('Y-m-d, H:i:s'), preg_replace('/\-.*$/', '', $value['gosaSnapshotTimestamp'][0])),
+      date(_('Y-m-d, H:i:s'), preg_replace('/\-.*$/', '', (string) $value['gosaSnapshotTimestamp'][0])),
       $value['description'][0]
     ];
     if ($this->plugin->global) {
@@ -120,8 +120,8 @@ class SnapshotsAttribute extends OrderedArrayAttribute
     if (parent::handlePostValueActions($id, $postValue)) {
       return TRUE;
     }
-    if (preg_match('/^'.$id.'_restore_/', $postValue)) {
-      $key = preg_replace('/^'.$id.'_restore_/', '', $postValue);
+    if (preg_match('/^'.$id.'_restore_/', (string) $postValue)) {
+      $key = preg_replace('/^'.$id.'_restore_/', '', (string) $postValue);
       $key = preg_replace('/_[xy]$/', '', $key);
 
       $this->plugin->triggerRestore($this->value[$key]['dn']);
diff --git a/include/management/snapshot/class_SnapshotHandler.inc b/include/management/snapshot/class_SnapshotHandler.inc
index c95078c5a82d78595771f81549b56f5897ab1082..15f4e224aed7f7628bad61a40357f71d5bd5143d 100755
--- a/include/management/snapshot/class_SnapshotHandler.inc
+++ b/include/management/snapshot/class_SnapshotHandler.inc
@@ -85,7 +85,7 @@ class SnapshotHandler
   protected function snapshot_dn ($dn)
   {
     global $config;
-    return preg_replace("/".preg_quote($config->current['BASE'], '/')."$/", "", $dn)
+    return preg_replace("/".preg_quote((string) $config->current['BASE'], '/')."$/", "", (string) $dn)
             .$this->snapshotRDN;
   }
 
@@ -154,7 +154,7 @@ class SnapshotHandler
 
     $ldap = $config->get_ldap_link();
 
-    $objectBase = preg_replace("/^[^,]*./", "", $dn);
+    $objectBase = preg_replace("/^[^,]*./", "", (string) $dn);
 
     // Initialize base
     $base = $this->snapshot_dn($objectBase);
@@ -182,7 +182,7 @@ class SnapshotHandler
     } else {
       $tmp = [];
       foreach ($objects as $entry) {
-        $tmp[base64_encode($entry['dn'])] = $entry['description'][0];
+        $tmp[base64_encode((string) $entry['dn'])] = $entry['description'][0];
       }
     }
     return $tmp;
@@ -227,7 +227,7 @@ class SnapshotHandler
     list($usec, $sec) = explode(" ", microtime());
 
     /* Collect some infos */
-    $base_of_object = preg_replace('/^[^,]+,/i', '', $dn);
+    $base_of_object = preg_replace('/^[^,]+,/i', '', (string) $dn);
     $new_base       = $this->snapshot_dn($base_of_object);
     /* Create object */
     $data = '';
@@ -318,7 +318,7 @@ class SnapshotHandler
         foreach ($dnSnapshotsList as $snap) {
           $snapCount += 1;
           // let's keep seconds instead of nanosecs
-          $snapEpoch = preg_split('/-/', $snap['gosaSnapshotTimestamp'][0]);
+          $snapEpoch = preg_split('/-/', (string) $snap['gosaSnapshotTimestamp'][0]);
           if ($snapEpoch[0] < $snapDateToDelete) {
             $snapToDelete[] = $snap['dn'];
           }
@@ -373,7 +373,7 @@ class SnapshotHandler
     $ldap = $config->get_ldap_link();
 
     /* Prepare bases and some other infos */
-    $base_of_object = preg_replace('/^[^,]+,/i', '', $dn);
+    $base_of_object = preg_replace('/^[^,]+,/i', '', (string) $dn);
     $new_base       = $this->snapshot_dn($base_of_object);
     $tmp            = [];