xooki.action.saveChanges = function()

in xookiEdit.js [256:292]


xooki.action.saveChanges = function () {
	var originalPath = document.location.toString();
	var localPath = xooki.io.getLocalPath(originalPath);
	
	// Load the original file
	var original = xooki.io.loadFile(localPath);
	if(original == null) {
		xooki.error(t("Impossible to load original file: ${0}", localPath));
		return;
	}
	
	var startSaveArea = '<textarea id="xooki-source">';
	var posOpeningArea = original.indexOf(startSaveArea);
	var posClosingArea = original.indexOf('</textarea>');
	
	xooki.page.title = document.getElementById('xooki-input-title').value;
	xooki.toc.save();
	
	var save;
	try {
		// Save new file
		var revised = original.substr(0,posOpeningArea + startSaveArea.length) + "\n" +
					xooki.input.source() +
					original.substr(posClosingArea);
					
		save = xooki.io.saveFile(localPath,xooki.io.fixEOL(revised));
	} catch (e) {
		xooki.error(e);
	} 
    if(save) {
		xooki.info(t("saved to ${0}",localPath));
		
		// TODO: see if we are able to apply title change without reloading
		setTimeout(function() {xooki.url.reload();}, 800);
	} else
		xooki.error(t("Impossible to save changes to ${0}", localPath));
}