preSaveTrigger triggers when user click "Save" button, if function return true statement - ticket will be saved, otherwise will be interrupted without any error so you need to specify error message by yourself. Best way to try it, run in your test env, simply specify followed code somewhere in <head> area in detail_cr.htmpl for example:
function preSaveTrigger() {
var zSomeFlag = false;
if (zSomeFlag) {
alert("Saving because zSomeFlag is true");
return true;
} else {
alert("Can't save because zSomeFlag is false");
return false;
}
}