Author: rhari
Date: Fri Jun  1 13:16:13 2007
New Revision: 494

URL: http://svn.gna.org/viewcvs/phplinker?rev=494&view=rev
Log:
#146
Bug fix

Modified:
    trunk/www/admin/api/update_url_info.php

Modified: trunk/www/admin/api/update_url_info.php
URL: 
http://svn.gna.org/viewcvs/phplinker/trunk/www/admin/api/update_url_info.php?rev=494&r1=493&r2=494&view=diff
==============================================================================
--- trunk/www/admin/api/update_url_info.php (original)
+++ trunk/www/admin/api/update_url_info.php Fri Jun  1 13:16:13 2007
@@ -26,6 +26,7 @@
  }
 
 extract($_GET);
+
 if (!isset ($id) && !isset($url)){
   echo ("error\t"._("You must specify the URL or the id of the website"));
   exit;
@@ -46,18 +47,27 @@
     exit;
   }
 
-if (!isset ($email)){
-  echo ("error\t"._("Missing webmaster email address"));
+$qry = "SELECT id FROM url WHERE id = ".$id." OR url LIKE '".$url."'";
+$qry = sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
+$nb = mysql_num_rows($qry);
+
+if (!isset ($email) && ($nb < 1)){
+  echo ("error\t"._("Missing webmaster email address for insert"));
   exit;
  }
 
-if (!isset ($description)){
-  echo ("error\t"._("Missing description"));
+if (strpos($url, '.') === false && $nb < 1){
+  echo ("error\t"._("Wrong url format"));
   exit;
  }
 
-if (!isset ($login)){
-  echo ("error\t"._("Missing webmaster logins"));
+if (!isset ($description) && ($nb < 1)){
+  echo ("error\t"._("Missing description for insert"));
+  exit;
+ }
+
+if (!isset ($login) && ($nb < 1)){
+  echo ("error\t"._("Missing webmaster logins for insert"));
   exit;
  }
 
@@ -70,9 +80,6 @@
   $debug = 0;
  }
 
-$qry = "SELECT id FROM url WHERE id = ".$id." OR url LIKE '".$url."'";
-$qry = sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
-$nb = mysql_num_rows($qry);
 if ($nb < 1){
   $qry_ins_webmaster = sql_query('die', __FILE__, __LINE__, __FUNCTION__, 
"INSERT INTO webmaster (login, email) VALUES ('".$login."', '".$email."')");
   $qry_get_id_webmaster = sql_query('die', __FILE__, __LINE__, __FUNCTION__, 
"SELECT id FROM webmaster ORDER BY id DESC LIMIT 1");
@@ -92,23 +99,34 @@
   linker_log("[API : ".$_SERVER['REMOTE_ADDR'] ."] Insert URL url_".$id_url);
  }
  else {
+   sql_query('die',__FILE__,__LINE__,__FUNCTION__,"DELETE FROM url2category 
WHERE id_url = ".$id);
    $id = mysql_result($qry, 0, "id");
-   $qry = "UPDATE url SET
+   if (isset($description) && $description != ""){
+     $qry = "UPDATE url SET
           description = '".utf8_decode($description)."',
           last_update = '".date("Y-m-d h:i:s")."'
         WHERE
           id = ".$id;
-   sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
+     sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
+   }
 
-   $qry = "UPDATE webmaster SET
-          email = '".utf8_decode($email)."',
+   if (isset($email) && $email != ""){
+     $qry = "UPDATE webmaster SET
+          email = '".utf8_decode($email)."'
+       WHERE
+          id IN (SELECT id_webmaster FROM url WHERE id = ".$id.")";
+     sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
+   }
+
+   if (isset($login) && $login != ""){
+     $qry = "UPDATE webmaster SET
           login = '".utf8_decode($login)."'
        WHERE
           id IN (SELECT id_webmaster FROM url WHERE id = ".$id.")";
-   sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
+     sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);
+   }
 
    if ($categorized == 1){
-     sql_query('die',__FILE__,__LINE__,__FUNCTION__,"DELETE FROM url2category 
WHERE id_url = ".$id);
      foreach($category as $value){
        $qry = "SELECT count(*) AS nb FROM category WHERE id = ".$value;
        $qry = sql_query('die',__FILE__,__LINE__,__FUNCTION__,$qry);


_______________________________________________
PHPLinker-commits mailing list
[email protected]
https://mail.gna.org/listinfo/phplinker-commits

Reply via email to