/** * General CustomPublish Admin Javascript */ /** * Hover To Save form / look for checkbox name="hovertosave" * Called saving process must return Saved # when OK, it not an alert box is displayed. * Elements with HTML ID #saveid and #hovertosavetimestamp will be updated. * * See admin/sidebar.php and admin/banneredit.php for examples. */ function hoverToSave(elementid) { if (!jQuery('#'+elementid+'hovertosave').is(':checked')) return; uri = jQuery('#'+elementid).attr('action'); jQuery.post(uri+'?ajaxcall=1', jQuery("#"+elementid).serialize(), function(restext, status, xht) { // alert(restext); // Update Timestamp var today = new Date() // current date and time jQuery('#'+elementid+'hovertosavetimestamp').html((today.getHours()+':'+today.getMinutes()+':'+today.getSeconds())); // Update SAVEID field or display error saveid = parseInt(jQuery('#saveid').val()); if (saveid<1) { // > ematch = restext.match(/Saved #(\d+)/); if (ematch) { if (!ematch[1]) { alert('Error saving: '+restext); return; } if (jQuery('#'+elementid+'saveid').length) { jQuery('#'+elementid+'saveid').val(ematch[1]); //alert("savedp"); //jQuery('.ajaxsavestatus').html(data); //jQuery('.ajaxsavestatus').fadeOut(4000); } else { jQuery('#saveid').val(ematch[1]); } jQuery('#'+elementid+'hovertosavetimestamp').append('
'+ematch[1]); } else { alert(restext); } } }); return true; } /** * */ var addGroupFilterRowbeenhere = false; var selconthtml = ''; function addGroupFilterRow() { jQuery('#grprow').show(); jQuery('.usergroupselector').css('width', '60%'); addophtml = false; selhtml = ''; if (addGroupFilterRowbeenhere==false) { selconthtml = jQuery('#grpbbcontainer').html(); selhtml += selconthtml; addophtml = true; jQuery('.usergroupselector').remove(); } else { jQuery('.usergroupsop').show(); selhtml += selconthtml; } selhtml += ' '; if (addophtml) { selhtml += ' '; } selhtml += '
'; jQuery('#grpbb').append(selhtml); addGroupFilterRowbeenhere = true; return false; } function cpadminajaxmodal(url, options, wrapoptions) { if (typeof Foundation == 'undefined') { // alert("AFW Foundation not loaded. It is required."); cpadminajaxmodalJQUERY(url, options) } else { cpadminajaxmodalFOUNDATION_ADMIN(url, options, wrapoptions) } } function cpadminajaxmodalFOUNDATION_ADMIN(url, options, wrapoptions) { if (typeof options == 'undefined') options = {}; // https://get.foundation/sites/docs/reveal.html#js-options if (typeof wrapoptions == 'undefined') wrapoptions = { class: "", title: "" }; // console.log("wrapoptions",wrapoptions); var titlebuf = ""; if (wrapoptions.title) { titlebuf = '

'+wrapoptions.title+'

'; } uid = "dialoedl"+Math.floor(Math.random() * 100000) + 1; // var xhtml = $('
' +'' +""+titlebuf +'
...
' +'
').appendTo('body'); var modal = new Foundation.Reveal($('#'+uid), options); $('#'+uid).foundation('open').on('closed.zf.reveal', function() { $('#'+uid).parent('.reveal-overlay').remove(); }); $.post(url, options.postdata).done(function(resp) { cpcommoninitModalDialogContent_ADMIN(uid, resp, wrapoptions); }); return false; } function cpcommoninitModalDialogContent_ADMIN(uid, resp, wrapoptions) { $('#'+uid+' >div.payload').html(resp); subbtn = $('#'+uid).find('input[type="submit"]'); if (subbtn.length) { // $('#'+uid).find('input[type="submit"]').after(''); var idstr = $('#'+uid).find('#csteditid').val(); if (idstr && wrapoptions.candelete) { $('#'+uid).find('input[type="submit"]').after(''); } $('#'+uid).find('form').submit(function(e) { var form = $(this); var url = form.attr('action'); $.ajax({ type: "POST", url: url, data: form.serialize(), success: function(data) { if (data.indexOf('CloseOK')==0) { // ...todo: update parent row. if (typeof wrapoptions.onclose === "function") { $('#'+uid).foundation('close'); wrapoptions.onclose(uid, data); } else { alert('OK'); $('#'+uid).foundation('close'); location.reload(); } } else { cpcommoninitModalDialogContent_ADMIN(uid, data, wrapoptions); // alert(data); // show response from the php script. } } }); // .ajax e.preventDefault(); return false; }); $('#'+uid).find('input[name="xcnl"]').click(function(e) { $('#'+uid).foundation('close'); }); $('#'+uid).find('input[name="xdel"]').click(function(e) { var form = $(this).parents('form'); var url = form.attr('action'); var idst = $(form).find('#csteditid').val(); $(form).hide('slow'); $(form).after('...'); $.ajax({ type: "POST", url: url, data: { rmel: idst }, success: function(data) { if (data.indexOf('CloseOK')==0) { alert('OK'); $('#'+uid).foundation('close'); location.reload(); } else { alert(data); // show response from the php script. } } }); return false; }); } // subbtn } function cpadminajaxmodalFOUNDATIONver1(url, options) { if (typeof options == 'undefined') options = {}; uid = "dialoedl"+Math.floor(Math.random() * 100000) + 1; // var xhtml = $('
...
').appendTo('body'); var modal = new Foundation.Reveal($('#'+uid), options); $('#'+uid).foundation('open').on('closed.zf.reveal', function() { $('#'+uid).parent('.reveal-overlay').remove(); }); $.ajax(url).done(function(resp) { $('#'+uid+' >div').html(resp); subbtn = $('#'+uid).find('input[type="submit"]'); if (subbtn.length) { $('#'+uid).find('input[type="submit"]').after(''); var idstr = $('#'+uid).find('#csteditid').val(); if (idstr) { $('#'+uid).find('input[type="submit"]').after(''); } $('#'+uid).find('form').submit(function(e) { var form = $(this); var url = form.attr('action'); $.ajax({ type: "POST", url: url, data: form.serialize(), success: function(data) { if (data.indexOf('CloseOK')==0) { // ...todo: update parent row. alert('OK'); $('#'+uid).foundation('close'); location.reload(); } else { alert(data); // show response from the php script. } } }); // .ajax e.preventDefault(); return false; }); $('#'+uid).find('input[name="xcnl"]').click(function(e) { $('#'+uid).foundation('close'); }); $('#'+uid).find('input[name="xdel"]').click(function(e) { var form = $(this).parents('form'); var url = form.attr('action'); var idst = $(form).find('#csteditid').val(); $(form).hide('slow'); $(form).after('...'); $.ajax({ type: "POST", url: url, data: { rmel: idst }, success: function(data) { if (data.indexOf('CloseOK')==0) { alert('OK'); $('#'+uid).foundation('close'); location.reload(); } else { alert(data); // show response from the php script. } } }); return false; }); } // subbtn }); return false; } function cpadminajaxmodalJQUERY(url, options) { if (typeof options == 'undefined') options = {}; uid = "dialoedl"+Math.floor(Math.random() * 100000) + 1; // $('
').html('
Loading...
').dialog({ modal: true, close: function(ev, ui) { $(this).remove(); }, draggable: true, height: "auto", width: "auto", maxWidth: 680 } ); $.post(url, options.postdata ) .done(function(resp) { $('#'+uid+' >div').html(resp); subbtn = $('#'+uid).find('input[type="submit"]'); if (subbtn.length) { $('#'+uid).find('input[type="submit"]').after(''); var idstr = $('#'+uid).find('#csteditid').val(); if (idstr) { $('#'+uid).find('input[type="submit"]').after(''); } $('#'+uid).find('form').submit(function(e) { var form = $(this); var url = form.attr('action'); $.ajax({ type: "POST", url: url, data: form.serialize(), success: function(data) { if (data.indexOf('CloseOK')==0) { // ...todo: update parent row. alert('OK'); $('#'+uid).dialog('close'); location.reload(); } else { alert(data); // show response from the php script. } }, error: function(xhr, status, errorThrown) { console.log(xhr); console.log(status); console.log(errorThrown); alert('ajax eh, feil...'+url); } }); // .ajax e.preventDefault(); return false; }); $('#'+uid).find('input[name="xcnl"]').click(function(e) { $('#'+uid).foundation('close'); }); $('#'+uid).find('input[name="xdel"]').click(function(e) { var form = $(this).parents('form'); var url = form.attr('action'); var idst = $(form).find('#csteditid').val(); $(form).hide('slow'); $(form).after('...'); $.ajax({ type: "POST", url: url, data: { rmel: idst }, success: function(data) { if (data.indexOf('CloseOK')==0) { alert('OK'); $('#'+uid).foundation('close'); location.reload(); } else { alert(data); // show response from the php script. } } }); return false; }); } // subbtn }); }