| <?php |
| /* Copyright (c) 2006, 2007 Eclipse Foundation, made available under EPL v1.0 |
| * Contributors Ward Cunningham, Bjorn Freeman-Benson, Nick Boldt |
| * |
| * The REST web-api for retrieving records from the database. |
| * |
| * top=name |
| * project=name |
| * year=yyyy |
| * month=yyyymm |
| * day=yyyymmdd |
| * login=name |
| * file=name |
| * type=name |
| * change=nnnn |
| * message=nnnn |
| * company=name |
| * |
| * queries={count,detail} |
| * fields=field1,field2,field3,... |
| * where fields can be any of: ID, |
| * DATE, YEAR, YEARMONTH, YEARMONTHDAY, |
| * TOPPROJECT, PROJECT, |
| * FILENAME, FILETYPE, |
| * REVISION, CHANGE_SIZE, MESSAGE_SIZE, |
| * LOGIN, COMPANY |
| * |
| * If fields is not set the default fields are DATE, CHANGE_SIZE, REVISION, FILENAME |
| * |
| * Examples: |
| * http://dash.eclipse.org/dash/commits/web-api/commit-zero-length-changes.php?login=thabeck&project=eclipse.equinox&yearmonth=200707&queries=count |
| * |
| */ |
| header("Content-type: text/plain"); |
| require_once "commit-common.inc.php"; |
| $fields = getFields("DATE, CHANGE_SIZE, REVISION, FILENAME"); |
| list( , , $where) = getXYWHERE(); |
| |
| if (!isset($_SERVER["QUERY_STRING"]) || !$_SERVER["QUERY_STRING"]) |
| { |
| print "# Must specify at least one of the following values: top=, project=, company=, login=, year=, ...\n"; |
| print "# Example: http://dash.eclipse.org/dash/commits/web-api/commit-zero-length-changes.php?login=thabeck&project=eclipse.equinox&yearmonth=200707\n"; |
| exit; |
| } |
| |
| $validQueries = array( |
| "count" => "SELECT COUNT(CHANGE_SIZE) FROM commits" . ($where ? " WHERE " . $where : "") . " AND CHANGE_SIZE = 0", |
| "detail" => "SELECT $fields FROM commits" . ($where ? " WHERE " . $where : "") . " HAVING CHANGE_SIZE = 0 ORDER BY $fields LIMIT 1000" |
| ); |
| |
| $queries = getQueries(array("count","detail")); |
| if (in_array("all", $queries)) |
| { |
| foreach ($validQueries as $queryname => $query) |
| { |
| displayQuery($query); |
| } |
| } |
| else |
| { |
| foreach ($queries as $queryname) |
| { |
| if (isset($validQueries[$queryname])) |
| { |
| displayQuery($validQueries[$queryname]); |
| } |
| } |
| } |
| ?> |