/**
 * @author ryan
 */
var addedMeta = {};
var deletedMeta = {};

function updateMeta(event)
{
	var metaId = event.target.get('metaId');
	var key = $('key_'+metaId).get('value');
	var value = $('value_'+metaId).get('value');
	var postId = $('postId').get('value');
	var nonce = $('update_nonce').get('value');
	
	var options = {url:'/wp-admin/admin-ajax.php'};
	var req = new Request(options);
	var keyString = 'meta['+metaId+'][key]';
	var valueString = 'meta['+metaId+'][value]';
	req.send('_ajax_nonce='+nonce+'&action=add-meta&'+keyString+'='+key+'&'+valueString+'='+value+'&post_id='+postId);
}

function addMeta(key, value, postId, nonce)
{
	addedMeta = {'key':key,'value':value,'postId':postId,'nonce':nonce};
	var options = {url:'/wp-admin/admin-ajax.php',onSuccess:addMetaSuccess,async:false};
	var req = new Request(options);
	req.send('_ajax_nonce='+nonce+'&action=add-meta&post_id='+postId+'&metakeyinput='+key+'&metavalue='+value);
}

function addMetaSuccess(responseText, responseXML)
{
	
	renderMetaRow(addedMeta.metaId, addedMeta.key, addedMeta.value, '');
	
}

function deleteMeta(event)
{
	var metaId = event.target.get('metaId');
	deletedMeta.metaId = metaId;
	var nonce = $('delete_nonce_'+metaId).get('value');
	var options = {url:'/wp-admin/admin-ajax.php','async':false,onSuccess:deleteMetaSuccess};
	var req = new Request(options);
	req.send('_ajax_nonce='+nonce+'&action=delete-meta&id='+metaId);
}

function deleteMetaSuccess(responseText, responseXML)
{
	
	$('row_'+deletedMeta.metaId).dispose();
	
}

function renderMetaRow(metaId, key, value, delete_nonce)
{
	/*
	 <tr id="row_METAID" >
		<td valign="top">
			<input name="key_METAID" id="key_METAID" size="10" 
				value="KEY" type="text">
		</td>
		<td>
			<textarea name="value_METAID" id="value_METAID" rows="2" cols="27">VALUE</textarea>
			<input name="updatemeta_METAID" value="Update" type="submit" 
				onclick="updateMeta(METAID)" >
			<input name="deletemeta_METAID" value="Delete" type="submit" 
				onclick="deleteMeta(METAID)">
			<input id="delete_nonce_METAID" name="delete_nonce_METAID" value="DELETE_NONCE" type="hidden" />
		</td>
	</tr>
	 */
	var tr = new Element('tr', {'id':'row_'+metaId});
	var td1 = new Element('td', {'valign':'top'});
	var keyInput = new Element('input', {'name':'key_'+metaId,'id':'key_'+metaId,'size':10,'value':key,'type':'text'});
	td1.adopt(keyInput);
	tr.adopt(td1);
	
	var td2 = new Element('td');
	var valueInput = new Element('textarea', {'name':'value_'+metaId,'id':'value_'+metaId,'rows':2,'cols':27,'value':value});
	var updateSubmit = new Element('input', {'name':'updatemeta_'+metaId,'id':'updatemeta_'+metaId,'type':'submit','value':'Update','metaId':metaId,'events':{'click':updateMeta}});
	var deleteSubmit = new Element('input', {'name':'deletemeta_'+metaId,'id':'deletemeta_'+metaId,'type':'submit','value':'Delete','metaId':metaId,'events':{'click':deleteMeta}});
	var deleteNonce = new Element('input', {'name':'delete_nonce_'+metaId,'id':'delete_nonce_'+metaId,'value':delete_nonce,'type':'hidden'});
	td2.adopt(valueInput);
	td2.adopt(updateSubmit);
	if(delete_nonce != '')
		td2.adopt(deleteSubmit);
	td2.adopt(deleteNonce);
	tr.adopt(td2);
	
	$('meta_list').adopt(tr);
}
