Perf dashboard should support authentication via a slave password
[WebKit-https.git] / Websites / perf.webkit.org / public / admin / build-slaves.php
1 <?php
2
3 require('../include/admin-header.php');
4
5 if ($db) {
6
7     if ($action == 'add') {
8         if ($db->insert_row('build_slaves', 'slave', array('name' => $_POST['name'], 'password_hash' => hash('sha256', $_POST['password'])))) {
9             notice('Inserted the new slave.');
10             regenerate_manifest();
11         } else
12             notice('Could not add the slave.');
13     } else if ($action == 'update') {
14         if (update_field('build_slaves', 'slave', 'name'))
15             regenerate_manifest();
16         else if (update_field('build_slaves', 'slave', 'password_hash', hash('sha256', $_POST['new_password'])))
17             regenerate_manifest();
18         else
19             notice('Invalid parameters.');
20     }
21
22     $page = new AdministrativePage($db, 'build_slaves', 'slave', array(
23         'name' => array('size' => 50, 'editing_mode' => 'string'),
24         'password_hash' => array(),
25         'password' => array('pre_insertion' => TRUE, 'editing_mode' => 'string'),
26         'new_password' => array('post_insertion' => TRUE, 'editing_mode' => 'string'),
27     ));
28
29     $page->render_table('name');
30     $page->render_form_to_add();
31 }
32
33 require('../include/admin-footer.php');
34
35 ?>