<?php                                                                                                                          require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");    require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php");     require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php");     $App     = new App();    $Nav    = new Nav();    $Menu     = new Menu();        include($App->getProjectCommon());    # All on the same line to unclutter the user's desktop'

    $pageTitle       = "Contributors to Photran";
    $pageKeywords    = "photran, contributors, developers";
    $pageAuthor      = "Jeffrey Overbey";
    
    # Paste your HTML content between the EOHTML markers!    
    $html = <<<EOHTML

<div id="maincontent">
  <div id="midcolumn">
    <h1>$pageTitle</h1>
    
    <p>Photran is primarily being developed at the University of Illinois at Urbana-Champaign,
    although we have received many valuable contributions from elsewhere.
    In alphabetical order by last name...</p>
    
    <div class="homeitem3col">
      <h3>Leads</h3>
      <ul>
        <li><a href="http://st-www.cs.uiuc.edu/users/johnson">Ralph Johnson</a>, UIUC - Principal investigator</li>
        <li><a href="http://jeff.over.bz/">Jeff Overbey</a>, UIUC - Lead developer; parser, refactoring infrastructure, indexer/VPG, refactorings, UI features, error parsers, CDT integration</li>
        <li><b>Greg Watson</b>, IBM - PTP project lead; release engineering</li>
      </ul>
    </div>
    
    <div class="homeitem3col">
      <h3>Active Committers and Contributors</h3>
      <ul>
        <li><b>Matt Fotzler</b>, UIUC - PTP integration, refactorings, C preprocessor support</li>
        <li><b>Bill Hilliard</b>, Intel - Committer; managed build support (Intel Fortran)</li>
        <li><b>Mariano M&eacute;ndez</b>, Universidad Nacional de la Plata - Refactorings, <a href="http://www.fortranrefactoring.com.ar/" target="_blank">fortranrefactoring.com.ar</a></li>
        <li><b>Stas Negara</b>, UIUC - Preliminary Fortran indexer, Move Save Variables to Common Block refactoring</li>
       </ul>
    </div>
    
    <div class="homeitem3col">
      <h3>Past Contributors and Committers</h3>
      <h4>2010</h4>
      <ul>
        <li><b>Zeeshan Ansari</b>, UIUC (CS427 Fa10) - Convert If Statement/Construct refactoring</li>
        <li><b>Rajashekhar Arasanal</b>, UIUC (CS427 Fa10) - Remove Assigned Goto refactoring</li>
        <li><b>Marc Celani</b>, UIUC (CS427 Fa10) - Add Subroutine Parameter refactoring</li>
        <li><b>Mark Chen</b>, UIUC (CS427 Fa10) - Convert If Statement/Construct refactoring</li>
        <li><b>Rita Chow</b>, UIUC (CS427 Fa10) - Obsolete feature removal refactorings</li>
        <li><b>Miguel Diaz</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>Stephen Downs</b>, UIUC (CS427 Fa10) - Make Save Attribute Explicit refactoring</li>
        <li><b>Andrea Dranberg</b>, UIUC (CS427 Fa10) - Remove Assigned Goto refactoring</li>
        <li><b>Joe Gonzalez</b>, UIUC (CS427 Fa10) - Add Subroutine Parameter refactoring</li>
        <li><b>Nicola Hall</b>, UIUC (CS427 Fa10) - Obsolete feature removal refactorings</li>
        <li><b>John Hammonds</b>, UIUC (CS427 Fa10) - Remove Assigned Goto refactoring</li>
        <li><b>Joe Handzik</b>, UIUC (CS427 Fa10) - Add Subroutine Parameter refactoring</li>
        <li><b>Jerry Hsiao</b>, UIUC (CS427 Fa10) - Obsolete feature removal refactorings</li>
        <li><b>Fred Hsu</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>Esfar Huq</b>, UIUC</li>
        <li><b>Burim Isai</b>, UIUC (CS427 Fa10) - Convert If Statement/Construct refactoring</li>
        <li><b>Won Jun Jang</b>, UIUC (CS427 Fa10) - Toggle End Name refactoring
        <li><b>Ashley Kasza</b>, UIUC</li>
        <li><b>Justin Kim</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>YongSeok Lee</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>Joe Leong</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>Mark Mozolewski</b>, UIUC (CS427 Fa10) - Obsolete feature removal refactorings</li>
        <li><b>Anu Pardeshi</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>Jason Patel</b>, UIUC (CS427 Fa10) - Add Subroutine Parameter refactoring</li>
        <li><b>Balaji Ambresh Rajkumar</b>, UIUC (CS427 Fa10) - Remove Assigned Goto refactoring</li>
        <li><b>Robert Samblanet</b>, UIUC (CS427 Fa10) - Make Save Attribute Explicit refactoring</li>
        <li><b>Kevin Schilling</b>, UIUC (CS427 Fa10) - Make Save Attribute Explicit refactoring</li>
        <li><b>William Seemann</b>, UIUC (CS427 Fa10) - Toggle End Name refactoring
        <li><b>Abhishek Sharma</b>, UIUC</li>
        <li><b>Waseem Sheikh</b>, UIUC (CS427 Fa10) - Convert If Statement/Construct refactoring</li>
        <li><b>Paramvir Singh</b>, UIUC (CS427 Fa10) - Remove Assigned Goto refactoring</li>
        <li><b>Jegan Sridharma</b>, UIUC (CS427 Fa10) - Toggle End Name refactoring
        <li><b>Francois Toguo</b>, UIUC (CS427 Fa10) - Toggle End Name refactoring
        <li><b>Jim Tonyan</b>, UIUC (CS427 Fa10) - Toggle End Name refactoring
        <li><b>Mumtaz Vauhkonen</b>, UIUC (CS427 Fa10) - Convert If Statement/Construct refactoring</li>
        <li><b>Jing Vergara</b>, UIUC (CS427 Fa10) - Convert Specification Statement refactoring</li>
        <li><b>Rui Wang</b>, UIUC</li>
        <li><b>Chamil Wijenayaka</b>, UIUC (CS427 Fa10) - Obsolete feature removal refactorings</li>
        <li><b>Jon Woolwine</b>, UIUC (CS427 Fa10) - Make Save Attribute Explicit refactoring</li>
        <li><b>Chad Zamzow</b>, UIUC (CS427 Fa10) - Make Save Attribute Explicit refactoring</li>
      </ul>
      <h4>2009</h4>
      <ul>
        <li><b>Kurt Hendle</b>, UIUC - Committer; refactorings, editor folding</li>
        <li><b>Matthew Michelotti</b>, UIUC - C preprocessor support</li>
        <li><b>Gustavo Rissetti</b>, Universidade Federal de Santa Maria - Remove Unused Variables, Standardize Statements, and Data to Parameter refactorings</li>
        <li><b>Matt Scarpino</b>, Eclipse Engineering, LLC - Fortran Nature, Convert to Fortran Project Wizard, Help Plug-in Generator</li>
        <li><b>Timofey Yuvashev</b>, UIUC - Committer; UI features, managed build support, refactorings</li>
      </ul>
      <h4>2008</h4>
      <ul>
        <li><b>Bruno Boniati</b>, Universidade Regional do Noroeste do Estado do Rio Grande do Sul - Replace Obsolete Operators refactoring</li>
        <li><b>Jeff Dammeyer</b>, UIUC (CS427 Fa08) - Fortran Search</li>
        <li><b>Andrew Deason</b>, UIUC (CS427 Fa08) - Fortran Search</li>
        <li><b>Joe Digiovanna</b>, UIUC (CS427 Fa08) - Fortran Search</li>
        <li><b>Nick Sexmith</b>, UIUC (CS427 Fa08) - Fortran Search</li>
      </ul>
      <h4>2007</h4>
      <ul>
        <li><a href="http://www.fortran.com/fortran/walt.html">Walt Brainerd</a>, <a href="http://www.fortran.com/">The Fortran Company</a> - F support (and more)</li>
        <li><b>Sarah de la Cruz</b>, UIUC (CS427 Fa07) - Find All References</li>
        <li><b>Kevin Decker</b>, UIUC (CS427 Fa07) - Find All References</li>
        <li><b>Charles Felish</b>, UIUC (CS427 Fa07) - Find All References</li>
        <li><b>Feanil Patel</b>, UIUC - Prototype Fortran debugger</li>
        <li><b>Ken Schultz</b>, UIUC - Prototype Fortran debugger</li>
        <li><b>James Shepherd</b>, UIUC (CS427 Fa07) - Find All References</li>
        <li><b>Shawn Temming</b>, UIUC - Prototype Fortran debugger</li>
      </ul>
      <h4>2006</h4>
      <ul>
        <li><b>Chin Fei Cheah</b>, UIUC - UI features, MSI package</li>
        <li><b>Nicholas Chen</b>, UIUC - UI features, MSI package</li>
        <li><a href="http://www.laputan.org/">Brian Foote</a>, UIUC</li>
        <li><b>Craig Rasmussen</b>, LANL - Managed build support, error parsers</li>
      </ul>
      <h4>2005</h4>
      <ul>
        <li><b>Dirk Rossow</b>, Flensburger Schiffbau Gesellschaft - Fixed form lexer</li>
        <li><a href="http://opera.ucsd.edu/~xanthos2/">Spiros Xanthos</a>, UIUC</li>
      </ul>
      <p><i>Special thanks to
      Prof. Ralph Johnson
      and TAs 
      Dustin Bortner,
      Nicholas Chen,
      Yun Young Lee,
      Damion Mitchell,
      Jayanta Mukherjee,
      Maurice Rabb,
      Shin Hwei Tan,
           and
      Mohsen Vakilian
      for supervising contributions completed as part of CS427 (Software Engineering I) at UIUC.
      </i>
    </div>

  </div> 
</div>    
EOHTML;

    # Generate the web page
    $App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>
