Code

Large translation update
[gosa.git] / plugins / admin / systems / class_glpiAttachmentPool.inc
index 3a8c3d9dede3074df5509ad320863d2ed430a7ff..8b0300d6f65669bbe48af73d96e160f2e94938d8 100644 (file)
@@ -98,9 +98,22 @@ class glpiAttachmentPool extends plugin
 
     if((isset($_POST['delete_glpi_confirm']))&&(isset($attach[$this->delAttach]))){
       if($this->parent->handle->is_attachmentUsed($this->delAttach)){
-        print_red(_("Can't delete this attachment, it is still in use."));
+        $tmp = $this->parent->handle->is_attachmentUsed($this->delAttach);
+        
+        $names = "";
+        foreach($tmp as $name){
+          $names .= ", ".$name;
+        }
+        $names = preg_replace("/^, /","",$names);
+        $names = trim($names);
+        if(count($tmp) == 3){
+          $names .= " ...";
+        }
+        print_red(sprintf(_("You can't delete this attachment, it is still in use by these system(s) '%s'"),$names));
+
       }else{
         $this->parent->handle->deleteAttachment($this->delAttach);
+        @unlink("/etc/gosa/glpi/".$this->filename);
         $attach     = $this->parent->handle->getAttachments();
       }
     }
@@ -121,16 +134,20 @@ class glpiAttachmentPool extends plugin
               print_red(_("Missing directory '/etc/gosa/glpi/' to store glpi uploads."));
             }else{
               $filen = "/etc/gosa/glpi/".$FILE['name'];
-              $fh = fopen($filen,"w");
-              if(!$fh){
-                print_red(sprintf(_("Can't create file '%s'."),$filen));
+              if(file_exists($filen)){
+                print_red(_("There is already a file with the same name uploaded."));
               }else{
-                $str = file_get_contents($FILE['tmp_name']);
-                fwrite($fh,$str,strlen($str));
-                fclose($fh);
-                $this->mime     = $FILE['type'];   
-                $this->filename = $FILE['name'];   
-              }
+                $fh = fopen($filen,"w");
+                if(!$fh){
+                  print_red(sprintf(_("Can't create file '%s'."),$filen));
+                }else{
+                  $str = file_get_contents($FILE['tmp_name']);
+                  fwrite($fh,$str,strlen($str));
+                  fclose($fh);
+                  $this->mime     = $FILE['type'];   
+                  $this->filename = $FILE['name'];   
+                }
+              } // File already exists
             }
           } // Check if any error occured
         } // check if valid filename was uploaded
@@ -239,7 +256,7 @@ class glpiAttachmentPool extends plugin
 
     $listhead = "<div style='background:#F0F0F9;padding:5px;'>".
       "   <input class='center' type='image' 
-      src='images/new.png' align='middle' title='"._("Create new attachment")."' 
+      src='images/fai_new_template.png' align='middle' title='"._("Create new attachment")."' 
       name='new_attach' alt='"._("New Attachment"). "'>&nbsp;".
       "</div>";
 
@@ -248,8 +265,8 @@ class glpiAttachmentPool extends plugin
     $smarty->assign("search_image",     get_template_path('images/search.png'));
     $smarty->assign("searchu_image",    get_template_path('images/search_user.png'));
     $smarty->assign("tree_image",       get_template_path('images/tree.png'));
-    $smarty->assign("infoimage",        get_template_path('images/info.png'));
-    $smarty->assign("launchimage",      get_template_path('images/launch.png'));
+    $smarty->assign("infoimage",        get_template_path('images/info_small.png'));
+    $smarty->assign("launchimage",      get_template_path('images/small_filter.png'));
     $smarty->assign("apply",            apply_filter());
     $smarty->assign("alphabet",         generate_alphabet());
     $smarty->assign("attachment_regex", $_SESSION['GlpiAttachmentFilter']['filter']);
@@ -309,7 +326,9 @@ class glpiAttachmentPool extends plugin
   /* Simple check */
   function check()
   {
-    $message = array();
+    /* Call common method to give check the hook */
+    $message= plugin::check();
+
     if($this->edit){
     
       /* check if given name is already in use */