Only execute change query if something is changed
authorJoey Schulze <joey@infodrom.org>
Tue, 23 Apr 2013 20:21:35 +0000 (20:21 +0000)
committerJoey Schulze <joey@infodrom.org>
Tue, 23 Apr 2013 20:21:35 +0000 (20:21 +0000)
src/InfoCon/account/update.wml

index 849e62b..dc60852 100644 (file)
     for ($nr=0; $nr < pg_NumRows ($sth); $nr++) {
       $row = pg_fetch_array ($sth, $nr);
 
-      $query = sprintf ("UPDATE account_names SET name='%s',display=%d,sys_user='%s',sys_edit=now() WHERE blz_kto = '%s'",
-                       $_POST['name_' . $row['blz_kto']],
-                       $_POST['display_' . $row['blz_kto']] ? 1 : 0,
-                       $_SERVER['REMOTE_USER'],
-                       $row['blz_kto']);
-
-      pg_exec ($dbh, $query);
-      $output = "Kontoinformationen aktualisiert.";      
+      if ($_POST['name_' . $row['blz_kto']] != $row['name'] ||
+         ($_POST['display_' . $row['blz_kto']] ? 1 : 0) != $row['display']) {
+       $query = sprintf ("UPDATE account_names SET name='%s',display=%d,sys_user='%s',sys_edit=now() WHERE blz_kto = '%s'",
+                         $_POST['name_' . $row['blz_kto']],
+                         $_POST['display_' . $row['blz_kto']] ? 1 : 0,
+                         $_SERVER['REMOTE_USER'],
+                         $row['blz_kto']);
+
+       pg_exec ($dbh, $query);
+       $output = "Kontoinformationen aktualisiert.";      
+      }
     }
   } elseif ($_POST[formtype] == "newaccount") {
     if (isset($_POST['blz']) && isset($_POST['kto']) && isset($_POST['name'])) {