<html>
<head>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1");
google.load("jqueryui", "1.8.2");
</script>
</head>
<body>
<form action="/project/edit?orig_name={{p.name}}" method="POST">
Name:<br/>
<input type="text" name="name" value="{{p.name|escape}}"><br/>
Description:<br/>
<input type="text" name="descr" value="{{p.descr|escape}}"><br/>
Category:<br/>
<input type="text" id="cats" name="category" value="{{p.category|escape}}"><br/>
Tags: (comma-separated)<br/>
<input type="text" id="tags" name="tags" value="{{tags}}"><br/>
Web URL:<br/>
<input type="text" name="web_url" value="{{p.web_url|escape}}"><br/>
Package URL: (to link to a goinstall'd package)<br/>
<input type="text" name="package" value="{{p.package.path|escape}}"><br/>
Approved: <input type="checkbox" name="approved" value="1" {% if p.approved %}checked{% endif %}><br/>
<br/>
<input type="submit" name="do" value="Save">
<input type="submit" name="do" value="Delete" onClick="javascript:return confirm('Delete this?');">
</form>
<script>
var tags = [
{% for t in taglist %}
	"{{t}}"{% if not forloop.last %},{% endif %}
{% endfor %}
];
var cats = [
{% for c in catlist %}
	"{{c}}"{% if not forloop.last %},{% endif %}
{% endfor %}
];

google.setOnLoadCallback(function() {
	$('#tags').autocomplete({source:tags});
	$('#cats').autocomplete({source:cats});
});
</script>
</body>
</html>
