function makeRequest () { var request; if (window.XMLHttpRequest) { request = new XMLHttpRequest(); } else if (window.ActiveXObject) { request = new ActiveXObject("Microsoft.XMLHTTP"); } return request; } function appendTask() { var request = makeRequest(); if(request) { var str_1 = document.getElementById('newTask').value; str_1 = encodeURIComponent(str_1); var str = "task=" + str_1; document.forms[0].newTask.value = ""; request.open("POST", "insert.php", true); request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); request.onreadystatechange = function() { if ((request.readyState == 4) && (request.status == 200)) { var doc = request.responseText; processResults(doc); } } } request.send(str); } function removeTask(id) { var request = makeRequest(); if(request) { var task_id = (id).substring(5); request.open("GET", "delete.php?task_id=" + task_id, true); request.onreadystatechange = function() { if ((request.readyState == 4) && (request.status == 200)) { var doc = request.responseText; processResults(doc); } } } request.send(null); } function processResults(doc) { document.getElementById('newList').innerHTML = doc; updateList(); Sortable.create('task_list', { tag: "li", onUpdate : updateList }); }