ajout d'un attribut "dir" aux fichiers
authorJeremy Laine <jeremy.laine@m4x.org>
Sat, 7 Dec 2002 22:52:47 +0000 (22:52 +0000)
committerJeremy Laine <jeremy.laine@m4x.org>
Sat, 7 Dec 2002 22:52:47 +0000 (22:52 +0000)
deptrack/deptrack.pl
deptrack/deptrack.sql

index 5b8b306..78f5daa 100755 (executable)
@@ -153,11 +153,11 @@ sub putdir {
 
 # put a file into DB
 sub putfile {
-  my($file,$exists) = @_;
+  my($file,$exists,$did) = @_;
   my($fid,$type);
  
   $exists=0 if (!$exists);
-  &dprint("putfile($file,$exists)\n");
+  &dprint("putfile($file,$exists,$did)\n");
   if ($exists) {
     $type = "page" if ($file =~ /$mask_php/);
     $type = "include" if ($file =~ /$mask_inc/);
@@ -173,6 +173,7 @@ sub putfile {
     $dbh->do("insert into file set path='$file',type='$type'");
     $fid=&getfileid($file);
   }
+  $dbh->do("update file set dir='$did' where id=$fid") if ($did);
   return $fid;  
 }
 
@@ -264,18 +265,18 @@ sub parsedir {
   closedir(DIRHANDLE);
   
   my @incfiles=grep /$mask_inc/,@list;
-  map (&putfile("${vdir}$_", 1), @incfiles);
+  map (&putfile("${vdir}$_", 1, $did), @incfiles);
 
   my @imgfiles=grep /$mask_img/,@list;
-  map (&putfile("${vdir}$_", 1), @imgfiles);
+  map (&putfile("${vdir}$_", 1, $did), @imgfiles);
   
   my @phpfiles=grep /$mask_php/,@list;
   foreach my $phpfile (@phpfiles) {
     if (-f realpath("${vdir}${phpfile}")) {
-      $fid=&putfile("${vdir}${phpfile}", 1);
+      $fid=&putfile("${vdir}${phpfile}", 1, $did);
       &parsefile($fid, $did, "${vdir}${phpfile}", $vdir);
     } else {
-      &putfile("${vdir}$phpfile", 0)
+      &putfile("${vdir}$phpfile", 0, $did)
     }
   } 
 
@@ -335,7 +336,7 @@ sub parsefile {
       # in the first segment of include path
       $ifile = &abspath(&abspath($vdir,$incpath[0]),$include) if (!$iexists);
     }
-    $depid=&putfile($ifile,$iexists);
+    $depid=&putfile($ifile,$iexists,0);
     &putdep($fid,$depid,$did,"include");
     &parsefile($depid,$did,$ifile,$vdir) if ($iexists);
   }
index 40fa443..4da6f22 100644 (file)
@@ -32,6 +32,7 @@ CREATE TABLE file (
   id int(6) NOT NULL auto_increment,
   path varchar(255) NOT NULL default '',
   type enum('dead','page','include','image') NOT NULL default 'dead',
+  dir int(6) NOT NULL default '0',
   PRIMARY KEY  (id),
   UNIQUE KEY path (path)
 ) TYPE=MyISAM;