]> dev.renevier.net Git - syp.git/commitdiff
images stored on ftp server v0.2_thomas
authorarno <arenevier@fdn.fr>
Sat, 8 Aug 2009 12:24:51 +0000 (14:24 +0200)
committerarno <arenevier@fdn.fr>
Sat, 8 Aug 2009 15:23:43 +0000 (17:23 +0200)
api.php
inc/settings.php
inc/utils.php

diff --git a/api.php b/api.php
index 2054350084a29108e54982d3de468354805b33da..302c1c75461376ad8c56889e9e84ed85327be913 100644 (file)
--- a/api.php
+++ b/api.php
@@ -98,11 +98,13 @@ function save_uploaded_file ($file, $con) {
                 (!move_uploaded_file ($file ["tmp_name"], $dest))) {
             server_error ();
         }
+        send_to_ftp ($dest);
         $mini_dest = getthumbsdir () . "/mini_" . basename_safe ($dest);
 
         if (!create_thumbnail_or_copy ($dest, $mini_dest)) {
             server_error ();
         }
+        send_to_ftp ($mini_dest);
     }
     return basename_safe ($dest);
 }
@@ -131,11 +133,13 @@ function delete_image_if_unused ($imgpath, $con) {
     $path = UPLOADDIR . "/" . $imgpath;
     if (file_exists ($path)) {
         unlink ($path);
+        delete_from_ftp ($path);
     }
 
     $thumb_path = getthumbsdir () . "/mini_" . $imgpath;
     if (file_exists ($thumb_path)) {
         unlink ($thumb_path);
+        delete_from_ftp ($thumb_path);
     }
 }
 
index 5d4910a7b4d6f253dfb4fc583f21fb204b538dce..c06b92dff57d706ccc60fd51318821e7d9330550 100644 (file)
@@ -28,6 +28,18 @@ define ("THUMBSDIR", "upload/_thumbs");
 // title of your website
 define ("SITETITLE", "SYP");
 
+// ftp server to store photos
+define ("FTPSERVER", "");
+
+// ftp user
+define ("FTPUSER", "");
+
+// ftp pass
+define ("FTPPASS", "");
+
+// ftp directory for images and thumbnails
+define ("FTPROOTDIR", "");
+
 // email contact for webmaster.
 define ("WEBMASTERMAIL", "");
 
index b093b0bae870837ed9d7f64262e27870218d8842..068f6d6f185dde8a907736a5ff6331f8725efcf3 100644 (file)
@@ -202,6 +202,36 @@ function safe_create_writable_dir ($dirname) {
     }
 }
 
+function delete_from_ftp ($file) {
+    $ftp_conn = ftp_connect (FTPSERVER);
+    $login = ftp_login ($ftp_conn, FTPUSER, FTPPASS);
+    if ((!$ftp_conn) || (!$login)) {
+        server_error ();
+    }
+    $target = sprintf ("%s/%s", FTPROOTDIR, $file);
+    $deleted = ftp_delete ($ftp_conn, $target);
+
+    if (!$deleted) {
+        server_error ();
+    }
+    ftp_close ($ftp_conn);
+}
+
+function send_to_ftp ($file) {
+    $ftp_conn = ftp_connect (FTPSERVER);
+    $login = ftp_login ($ftp_conn, FTPUSER, FTPPASS);
+    if ((!$ftp_conn) || (!$login)) {
+        server_error ();
+    }
+    $dest = sprintf ("%s/%s", FTPROOTDIR, $file);
+    $upload = ftp_put ($ftp_conn, $dest, $file, FTP_BINARY);
+
+    if (!$upload) {
+        server_error ();
+    }
+    ftp_close ($ftp_conn);
+}
+
 function leave () {
     exit ("\n</body></html>");
 }