| <?php |
| die('already run. for posterity\'s sake only.'); |
| if(($_SERVER['REMOTE_ADDR'] != '127.0.0.1') && ($_SERVER['REMOTE_ADDR'] != '63.227.217.22')) { |
| die("No way."); |
| } |
| |
| require_once('fragments/parse-projects-file.php'); |
| require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php"); |
| |
| $App = new App(); |
| |
| $all = new AllInfo(); |
| $all->load(); |
| /* |
| * CREATE TABLE `ProjectReviews` ( |
| `ID` int(11) NOT NULL auto_increment, |
| `ProjectID` varchar(128) default NULL, |
| `BugNumber` int(11) default NULL, |
| `ProjectTopLevel` varchar(128) default NULL, |
| `ProjectURL` varchar(256) default NULL, |
| `ProposalName` varchar(256) default NULL, |
| `ProposalURL` varchar(256) default NULL, |
| `ReviewAttendees` varchar(256) default NULL, |
| `ReviewDate` datetime default NULL, |
| `SlidesURL` varchar(256) default NULL, |
| PRIMARY KEY (`ID`) |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 | |
| |
| * |
| * CREATE TABLE `ProjectReviewStatus` ( |
| `ID` int(11) default NULL, |
| `Status` varchar(128) default NULL, |
| `Value` varchar(128) default NULL |
| ) ENGINE=InnoDB DEFAULT CHARSET=latin1 | |
| */ |
| |
| function do_one_entry($obj) { |
| global $App; |
| //echo "<pre>"; print_r($obj); echo "</pre>"; return; |
| foreach($obj as $key => $value) { |
| // We want the content of attributes, not it itself |
| if($key == '_attributes') { |
| echo "<b>" . $value['Proposal Name'] . "</b><hr/>"; |
| $keys = array(); |
| $values = array(); |
| $time = ''; |
| $date = ''; |
| $status = array(); |
| foreach($value as $key2 => $value2) { |
| if(preg_match('/^Status; /', $key2)) { |
| $key2 = str_replace("Status; ", '', $key2); |
| $timestamp = strtotime($value2); |
| if(($timestamp != 0) && ($timestamp < (time() - 60))) { |
| // it's a date! |
| $value2 = date('Y-m-d h:i:s', $timestamp); |
| } |
| if(strlen($value2) > 1) { |
| $status[$key2] = $value2; |
| } |
| } elseif($key2 == 'Review Time') { |
| // Fix the time formats |
| $time = preg_replace('/([310][05][ ]*$)/', ':\1' , $value2); |
| if($date != '') { |
| $keys[] = 'ReviewDate'; |
| $values[] = trim("$date $time") . ":00"; |
| } |
| } elseif($key2 == 'Review Date') { |
| $date = date('Y-m-d', strtotime($value2)); |
| if($time != '') { |
| $keys[] = 'ReviewDate'; |
| $values[] = trim("$date $time") . ":00"; |
| } |
| } else { |
| $key2 = str_replace(array(' ', '-'), array('', ''), $key2); |
| echo "$key2 => $value2<br/>"; |
| $keys[] = $key2; |
| $values[] = trim($value2); |
| } |
| } |
| $App->foundation_sql("INSERT INTO ProjectReviews (" . join(", ", $keys) . ") VALUES ('" . join("', '", $values) . "');"); |
| $App->foundation_sql("SET @last_id = last_insert_id();"); |
| foreach($status as $status => $value) { |
| $App->foundation_sql("INSERT INTO ProjectReviewStatus (ID, Status, Value) VALUES (@last_id, '$status', '$value')"); |
| } |
| } |
| } |
| } |
| |
| $App->foundation_sql("SET FOREIGN_KEY_CHECKS = 0;"); |
| |
| foreach( $all->_reviews as $proposal) { |
| do_one_entry($proposal); |
| echo "<br/>"; |
| } |
| |
| foreach( $all->_proposals as $proposal) { |
| do_one_entry($proposal); |
| echo "<br/>"; |
| } |
| $App->foundation_sql("UPDATE ProjectReviews SET ReviewDate = NULL WHERE ReviewDate = '1969-12-31 00:00:00'"); |
| $App->foundation_sql("UPDATE ProjectReviews SET ProjectID = NULL WHERE ProjectID = ''"); |
| $App->foundation_sql("SET FOREIGN_KEY_CHECKS = 1;"); |
| //$App->SqlBackTrace(); |
| |
| ?> |