Fix a bug that cannot unhide a platform.
authordewei_zhu@apple.com <dewei_zhu@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 28 Oct 2019 21:46:29 +0000 (21:46 +0000)
committerdewei_zhu@apple.com <dewei_zhu@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 28 Oct 2019 21:46:29 +0000 (21:46 +0000)
https://bugs.webkit.org/show_bug.cgi?id=203521

Reviewed by Ryosuke Niwa.

Before this change, the there is no value in POST when 'hidden' checkbox is unchecked.
Then the update will fail because platform_hidden cannot be NULL.

* public/admin/platforms.php: Adapted 'update_boolean_field'.
* public/admin/triggerables.php: Adapted 'update_boolean_field'.
* public/include/admin-header.php: Added 'update_boolean_field' helper function to set explict
boolean value for update.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@251674 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Websites/perf.webkit.org/ChangeLog
Websites/perf.webkit.org/public/admin/platforms.php
Websites/perf.webkit.org/public/admin/triggerables.php
Websites/perf.webkit.org/public/include/admin-header.php

index 71868e8..3dccc81 100644 (file)
@@ -1,3 +1,18 @@
+2019-10-28  Dewei Zhu  <dewei_zhu@apple.com>
+
+        Fix a bug that cannot unhide a platform.
+        https://bugs.webkit.org/show_bug.cgi?id=203521
+
+        Reviewed by Ryosuke Niwa.
+
+        Before this change, the there is no value in POST when 'hidden' checkbox is unchecked.
+        Then the update will fail because platform_hidden cannot be NULL.
+
+        * public/admin/platforms.php: Adapted 'update_boolean_field'.
+        * public/admin/triggerables.php: Adapted 'update_boolean_field'.
+        * public/include/admin-header.php: Added 'update_boolean_field' helper function to set explict
+        boolean value for update.
+
 2019-10-25  Dewei Zhu  <dewei_zhu@apple.com>
 
         Add SSL support for peformance dashboard database connection.
 2019-10-25  Dewei Zhu  <dewei_zhu@apple.com>
 
         Add SSL support for peformance dashboard database connection.
index 5c0b9bf..679dceb 100644 (file)
@@ -59,7 +59,7 @@ function merge_platforms($platform_to_merge, $destination_platform) {
 if ($db) {
     if ($action == 'update') {
         if (update_field('platforms', 'platform', 'name')
 if ($db) {
     if ($action == 'update') {
         if (update_field('platforms', 'platform', 'name')
-            || update_field('platforms', 'platform', 'hidden'))
+            || update_boolean_field('platforms', 'platform', 'hidden'))
             regenerate_manifest();
         else
             notice('Invalid parameters.');
             regenerate_manifest();
         else
             notice('Invalid parameters.');
index 1198768..6f132fe 100644 (file)
@@ -13,7 +13,7 @@ if ($db) {
     } else if ($action == 'update') {
         if (update_field('build_triggerables', 'triggerable', 'name'))
             regenerate_manifest();
     } else if ($action == 'update') {
         if (update_field('build_triggerables', 'triggerable', 'name'))
             regenerate_manifest();
-        else if (update_field('build_triggerables', 'triggerable', 'disabled', Database::to_database_boolean(array_get($_POST, 'disabled'))))
+        else if (update_boolean_field('build_triggerables', 'triggerable', 'disabled'))
             regenerate_manifest();
         else
             notice('Invalid parameters.');
             regenerate_manifest();
         else
             notice('Invalid parameters.');
index c4d37bf..92a218f 100644 (file)
@@ -83,6 +83,10 @@ function update_field($table, $prefix, $field_name, $new_value = NULL) {
     return TRUE;
 }
 
     return TRUE;
 }
 
+function update_boolean_field($table, $prefix, $field_name) {
+    return update_field($table, $prefix, $field_name, Database::to_database_boolean(array_get($_POST, $field_name)));
+}
+
 function regenerate_manifest() {
     global $db;
 
 function regenerate_manifest() {
     global $db;