<!DOCTYPE html>
<html dir="ltr" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>GitHub plugin for Gerrit Code Review - Pull Requests
	replication</title>
#include ("static/styles.html")
#include ("static/scripts.html")
</head>
<body>
	<div class="header">
		<div>
			<div class="center">
				#include ("static/header.html")
				<div class="page-title">
					<div>
						<h2>
							Import Pull Requests for Review
						</h2>
                        <div class="right">
                          <button type="button" id="cancel">
                              <span class="button"><span>Cancel</span></span>
                          </button>
                          <button type="submit" id="submit" disabled="disabled">
                              <span class="button green"><span>Import selected</span></span>
                          </button> <input type="hidden" name="next" value="$nextUrl" />
                        </div>
					</div>
				</div>
			</div>
		</div>
	</div>
	<!--div.header end -->

	<!--div.container start -->
	<div class="container">
		<div class="center">
            <form id="pullrequests" action="pullrequests-next.gh" method="get" class="signupform">
            <div id="repositories">
                <ul class="pullrequest-repos">
                    <li>
                      <select id="organisation" name="organisation">
                      <option selected="selected">$myself.login</option>
                      #foreach( $organisation in $myself.organizations )
                          #if ( $request.getParameter("organisation") == $organisation.login )
                            <option selected="selected">$organisation.login</option>
                          #else
                            <option>$organisation.login</option>
                          #end
                      #end
                      </select>
                   </li>
                   <li class="filter" style="display: none;">
                      <input type="text" id="repo-filter" class="filter" name="filter" placeholder="Filter repositories" />
                  </li>
                </ul>
                <ul class="repo-list">
				</ul>
        </div>
        <div id="pullrequests">
        <div class="loading">
          <p>Loading Pull Requests from GitHub ...</p>
        </div>
        <table class="table simple-table responsive-table responsive-table-on" style="display: none;" id="pull-requests">

                <thead>
                    <tr>
                        <th scope="col" ><input type="checkbox" name="checkall" id="checkall" value="1" checked="checked"></th>
                        <th scope="col" >Id</th>
                        <th scope="col" >Repository / Pull request subject / Author</th>
                        <th scope="col" >Timestamp</th>
                        <th scope="col" >
                            <select id="importtype">
                                <option selected="selected">Squash</option>
                                <option>Commits</option> 
                            </select>
                        </th>
                    </tr>
                </thead>
                <tbody>
                </tbody>
            </table>
            </div>
			</form>
		</div>
	</div>
    <script type='text/javascript' src='js/pullrequests.js'></script>

	<!--div.container end -->
	#include ("static/footer.html")
</body>
</html>