<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/>
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>
