54 lines
2.3 KiB
Perl
Executable File
54 lines
2.3 KiB
Perl
Executable File
#!/usr/local/bin/perl
|
|
# ==================================================================
|
|
# Gossamer Links - enhanced directory management system
|
|
#
|
|
# Website : http://gossamer-threads.com/
|
|
# Support : http://gossamer-threads.com/scripts/support/
|
|
# CVS Info : 087,071,086,086,085
|
|
# Revision : $Id: admin.cgi,v 1.94 2009/05/12 01:09:13 brewt Exp $
|
|
#
|
|
# Copyright (c) 2005 Gossamer Threads Inc. All Rights Reserved.
|
|
# Redistribution in part or in whole strictly prohibited. Please
|
|
# see LICENSE file for full details.
|
|
# ==================================================================
|
|
|
|
use strict;
|
|
use lib '/var/home/slowtwitch/slowtwitch.com/cgi-bin/articles/admin';
|
|
use Links qw/:objects/;
|
|
use GT::File::Tools qw/:all/;
|
|
|
|
$| = 1;
|
|
local $SIG{__DIE__} = \&Links::fatal;
|
|
Links::init('/var/home/slowtwitch/slowtwitch.com/cgi-bin/articles/admin');
|
|
Links::init_admin();
|
|
|
|
my $tab_files = $DB->table('Links_Files');
|
|
my $files = $tab_files->select()->fetchall_hashref;
|
|
for (@$files) {
|
|
my $fletter = ( reverse split //, $_->{ID} )[0];
|
|
my $path = "$_->{File_Directory}/$fletter";
|
|
my $escaped_name = $IN->escape($_->{File_Name});
|
|
unless(-f "$path/$_->{ID}-$escaped_name") {
|
|
if (-f "$path/$_->{ID}-$_->{File_Name}") {
|
|
$tab_files->update({ File_Name => $IN->unescape($_->{File_Name}) }, { ID => $_->{ID} });
|
|
}
|
|
elsif ($_->{File_Directory} eq '/var/home/slowtwitch/slowtwitch.com/www/articles/images') {
|
|
if (-f "/var/home/slowtwitch/slowtwitch.com/www/articles/images.bad/$fletter/$_->{ID}-$_->{File_Name}") {
|
|
copy("/var/home/slowtwitch/slowtwitch.com/www/articles/images.bad/$fletter/$_->{ID}-$_->{File_Name}", "$path/$_->{ID}-$_->{File_Name}");
|
|
print "not escape $_->{File_Name}: FOUND\n";
|
|
}
|
|
elsif (-f "/var/home/slowtwitch/slowtwitch.com/www/articles/images.bad/$fletter/$_->{ID}-$escaped_name") {
|
|
print "escaped $escaped_name: FOUND\n";
|
|
}
|
|
elsif ("/var/home/slowtwitch/slowtwitch.com/www/missing_files/$_->{File_Name}") {
|
|
print "$path/$_->{ID}-$_->{File_Name}\n";
|
|
move("/var/home/slowtwitch/slowtwitch.com/www/missing_files/$_->{File_Name}", "$path/$_->{ID}-$_->{File_Name}");
|
|
}
|
|
}
|
|
else {
|
|
# print "$path/$_->{ID}-$_->{File_Name}\n";
|
|
}
|
|
}
|
|
}
|
|
|