]> git.p6c8.net - jirafeau.git/blobdiff - lib/functions.js.php
[BUGFIX] Catch errors in upload form
[jirafeau.git] / lib / functions.js.php
index 7a1c5af373dc17691f2981f7e9f245be4477b629..989b7884afad87f33641fc63baf20ec48886ccc4 100644 (file)
 
 header('Content-Type: text/javascript');
 
-define ('JIRAFEAU_ROOT', dirname (__FILE__) . '/../');
-require (JIRAFEAU_ROOT . 'lib/config.original.php');
-require (JIRAFEAU_ROOT . 'lib/settings.php');
-require (JIRAFEAU_ROOT . 'lib/functions.php');
-require (JIRAFEAU_ROOT . 'lib/lang.php');
+define('JIRAFEAU_ROOT', dirname(__FILE__) . '/../');
+
+require(JIRAFEAU_ROOT . 'lib/settings.php');
+require(JIRAFEAU_ROOT . 'lib/functions.php');
+require(JIRAFEAU_ROOT . 'lib/lang.php');
 ?>
 
 function translate (expr)
 {
-    var lang_array = <?php echo json_lang_generator () ?>;
+    var lang_array = <?php echo json_lang_generator() ?>;
     if (lang_array.hasOwnProperty(expr))
         return lang_array[expr];
     return expr;
@@ -259,11 +259,14 @@ function classic_upload (url, file, time, password, one_time, upload_password)
         if (req.readyState == 4 && req.status == 200)
         {
             var res = req.responseText;
-            if (res == "Error")
+
+            // if response starts with "Error" then show a failure
+            if (/^Error/.test(res))
             {
-                pop_failure ();
+                pop_failure (res);
                 return;
             }
+
             res = res.split ("\n");
             if (time != 'none')
             {
@@ -321,11 +324,13 @@ function async_upload_start (url, max_size, file, time, password, one_time, uplo
         if (req.readyState == 4 && req.status == 200)
         {
             var res = req.responseText;
-            if (res == "Error")
+
+            if (/^Error/.test(res))
             {
-                pop_failure ();
+                pop_failure (res);
                 return;
             }
+
             res = res.split ("\n");
             async_global_ref = res[0];
             var code = res[1];
@@ -390,11 +395,13 @@ function async_upload_push (code)
         if (req.readyState == 4 && req.status == 200)
         {
             var res = req.responseText;
-            if (res == "Error")
+
+            if (/^Error/.test(res))
             {
-                pop_failure ();
+                pop_failure (res);
                 return;
             }
+
             res = res.split ("\n");
             var code = res[0]
             async_global_transfered = async_global_transfering;
@@ -428,11 +435,13 @@ function async_upload_end (code)
         if (req.readyState == 4 && req.status == 200)
         {
             var res = req.responseText;
-            if (res == "Error")
+
+            if (/^Error/.test(res))
             {
-                pop_failure ();
+                pop_failure (res);
                 return;
             }
+
             res = res.split ("\n");
             if (async_global_time != 'none')
             {

patrick-canterino.de