Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
 window.WLAddOnTitle = "Styles Pro"; window.WLSettingName = "gfStylesPro"; window.WLSettingClass = "gfsp_styles"; /** * Warp Lord Gravity Forms Add-on Script for Form Editor * Version 1.0 */ // Add field settings fields jQuery.each(fieldSettings, function(key) { // No need to add settings for hidden fields if ( key != "hidden" && key != "hiddenproduct" && key != "page" ) { fieldSettings[key] += ", ." + WLSettingClass; } // Attach Icons to the following fields iconFields = 'address calculation date email fileupload name username number password phone post_category post_content post_excerpt post_image post_title post_tags price quantity select shipping text time website coupon'; if ( iconFields.indexOf(key) > -1 ) { fieldSettings[key] += ", .gfsp_icon"; } }); // Folding Actions jQuery('.box h3').click(function() { var container = jQuery('#TB_ajaxContent'); jQuery('.toggle_open').removeClass('toggle_open'); if ( jQuery(this).next().css('display') != 'block' ) { jQuery('.box h3 + div').slideUp('fast'); jQuery(this).addClass('toggle_open'); container.animate({ scrollTop: jQuery(this).offset().top - container.offset().top - 200 + container.scrollTop() }); } jQuery(this).next().slideToggle(); }); // Binding to the load field settings event to initialize the checkbox jQuery(document).bind("gform_load_field_settings", function(event, field, form) { /* Field Setting: gfStylesPro */ jQuery("#gf_stylespro_value").attr("value", ""); jQuery("#gf_stylespro_value").attr("value", field[WLSettingName]); jQuery('.' + WLSettingClass+' input').prop('checked', false); jQuery('.' + WLSettingClass+' .default').prop('checked', true); // Prepopulate Checkboxes if ( field[WLSettingName] ) { var pre_pop = field[WLSettingName].split(" "); // Combine gfsp_o_list values Since v2.0 var list_str = ''; jQuery.each(pre_pop, function(key) { if ( pre_pop[key].indexOf('gfsp_o_') == 0 || pre_pop[key].indexOf('o-') == 0 ) { list_str = list_str + (list_str == '' ? '' : ' ') + pre_pop[key]; pre_pop[key] = ''; } }); pre_pop.push(list_str); // Prepopulate now jQuery.each(pre_pop, function(key) { if (pre_pop[key] != "") { jQuery('.' + WLSettingClass+' input[value="' + pre_pop[key] + '"]').prop('checked', true); } }); } // Set states for Effects jQuery(".gfsp_effects_wrapper input").attr("disabled", "disabled"); jQuery("[name=gfsp_o_style]:checked").trigger("change") // Hide irrelevant options var field_type=field["type"]; var input_type=field["inputType"]; var $mod = jQuery(".gf_stylespro_selectors"); $mod.find(".h").slideUp(); $mod.find(".h_"+field_type).slideDown(); $mod.find(".h_"+field_type+"-"+input_type).slideDown(); /* Field Setting: gfStylesProIcon */ jQuery("#gf_stylespro_icon_value").attr("value", ""); jQuery("#gf_stylespro_icon_value").attr("value", field["gfStylesProIcon"]); if ( field["gfStylesProIcon"] ) field_icon_preview_update( field["gfStylesProIcon"] ); else field_icon_preview_update( '' ); }); /** * * Ornament Editor * */ jQuery('.choices_setting') .on('input propertychange', '.field-choice-sp_ornament', function () { var $this = jQuery(this); var i = $this.closest('li.field-choice-row, li.gquiz-choice-row').data('index'); var field = GetSelectedField(); field.choices[i].spOrnament = $this.val(); }); gform.addFilter('gform_append_field_choice_option', function (str, field, i) { if (field.type != 'radio' && field.type != 'checkbox' && field.type != 'poll' && field.type != 'quiz' && field.type != 'survey' && field.type != 'option' && field.type != 'post_tags' && field.type != 'post_category' && field.type != 'post_custom_field' && field.type != 'product') { return str; } // For fields with multiple input types, we continue only if checkbox or radio if (field.type == 'poll' || field.type == 'quiz' || field.type == 'survey' || field.type == 'option' || field.type == 'post_tags' || field.type == 'post_custom_field' || field.type == 'product' || field.type == 'post_category') { if (field.inputType != 'checkbox' && field.inputType != 'radio'){ return str; } } var inputType = GetInputType(field); var spOrnament = field.choices[i].spOrnament ? field.choices[i].spOrnament : ''; return "" + str; }); function choice_preview_update(spIcnImg){ jQuery('#gfsp_icon_temp').val(spIcnImg); var spIcnImg = spIcnImg.split('|'); // remove index 3 (color) if exists; we append it while saving if (spIcnImg[0] === "icn" && spIcnImg[3] !== undefined){ spIcnImg.pop(); jQuery('#gfsp_icon_temp').val( spIcnImg.join('|') ); } // remove index 2 (alt_text) if exists; we append it while saving if (spIcnImg[0] === "img" && spIcnImg[2] !== undefined){ spIcnImg.pop(); jQuery('#gfsp_icon_temp').val( spIcnImg.join('|') ); } if ( spIcnImg[0] == 'icn' ){ jQuery('.sp_choice_preview').html(''); jQuery('.gfsp_color_wrapper').show(); if ( spIcnImg[2] !== undefined && spIcnImg[2] == "custom" ) { jQuery(".ornament_icon_custom").val( spIcnImg[1] ); } } else if ( spIcnImg[0] == 'img' ){ jQuery('.sp_choice_preview').html(''); jQuery('.ornament_image').val(spIcnImg[1]); // jQuery('.ornament_image_alt').val(spIcnImg[2]); jQuery('.gfsp_color_wrapper').hide(); } else { jQuery('.sp_choice_preview').html(' '); } } function field_icon_preview_update(spIcnImg) { jQuery('#gfsp_icon_temp').val(spIcnImg); var spIcnImg = spIcnImg.split('|'); // remove index 3 (color) if exists; we add it while saving var spIcnColor = ''; if (spIcnImg[3] !== undefined){ spIcnColor = spIcnImg.pop(); jQuery('#gfsp_icon_temp').val( spIcnImg.join('|') ); } if ( spIcnImg[0] == 'icn' ){ jQuery('.sp_field_icon_preview').html(''); jQuery('.gfsp_color_wrapper').show(); } else if ( spIcnImg[0] == 'img' ){ jQuery('.sp_field_icon_preview').html(''); jQuery('.ornament_image').val(spIcnImg[1]); jQuery('.gfsp_color_wrapper').hide(); } else { jQuery('.sp_field_icon_preview').html(' '); } gfspFieldIconUpdate( GetSelectedField() ); } function choice_tb_show(choice_field) { window.spChoice = jQuery('#' + choice_field); jQuery('.ornament_image').val(''); jQuery('.ornament_image_alt').val(''); jQuery('.ornament_icon_custom').val(''); jQuery('#gfsp_icon_color').val('').change(); choice_preview_update( spChoice.val() ); var spChoiceArr = spChoice.val().split('|'); // since: spChoiceArr = icn|class|iconset|color var color = spChoiceArr[3]; jQuery('#gfsp_icon_color').val(color).change(); jQuery('.sp_choice_preview').css('color', (color != undefined ? color: 'inherit') ); // since: spChoiceArr = img|url|alt_text if ( spChoiceArr[0] == "img" ) { jQuery('.ornament_image_alt').val(spChoiceArr[2]); } tb_show(WLAddOnTitle + ': Icon / Image Selector', '#TB_inline?height=600&width=820&inlineId=add_gf_stylespro_choice_modal', ''); } function field_icon_tb_show() { jQuery('.ornament_image').val(''); jQuery('.ornament_icon_custom').val(''); jQuery('#gfsp_icon_color').val('').change(); if ( field['gfStylesProIcon'] ) { choice_preview_update( field['gfStylesProIcon'] ); jQuery("#gf_stylespro_icon_value").attr("value", field["gfStylesProIcon"]); // Because: spChoice.val = icn|class|iconset|color color = field['gfStylesProIcon'].split('|')[3]; jQuery('#gfsp_icon_color').val(color).change(); jQuery('.sp_choice_preview').css('color', (color != undefined ? color: 'inherit') ); } else { choice_preview_update( '' ); } tb_show(WLAddOnTitle + ': Icon / Image Selector', '#TB_inline?height=600&width=820&inlineId=add_gf_stylespro_choice_modal', ''); } function searchIcons() { var searchTerm = jQuery('#gfsp_search_icons').val().toLowerCase(); if (searchTerm == '') { jQuery('.all_icons span').removeClass('hide'); jQuery('.search_count').text(''); return; } jQuery('.all_icons span').addClass('hide'); jQuery('.all_icons span:contains("' + searchTerm + '")').removeClass('hide'); // Count v 2.0.3 jQuery('.gfsp_icons').each( function() { var total = jQuery(this).find('.all_icons span').length; var count = jQuery(this).find('span:contains("' + searchTerm + '")').length; count = ( (count > 0 && count < total) ? '('+count+')' : '') jQuery(this).prev().find('.search_count').text(count); } ); } jQuery('#gfsp_search_icons').on('input', function() { searchIcons(); }); jQuery('.ornament_image').on('change blur', function() { choice_preview_update('img|' + jQuery(this).val()); }); // Media uploader var sp_media_init = function(selector, button_selector) { var clicked_button = false; jQuery(selector).each(function (i, input) { var button = jQuery(input).next(button_selector); button.click(function (event) { event.preventDefault(); var selected_img; clicked_button = jQuery(this); // check for media manager instance if(wp.media.frames.gk_frame) { wp.media.frames.gk_frame.open(); return; } // configuration of the media manager new instance wp.media.frames.gk_frame = wp.media({ title: 'Select image', multiple: false, library: { type: 'image' }, button: { text: 'Use selected image' } }); // Function used for the image selection and media manager closing var gk_media_set_image = function() { var selection = wp.media.frames.gk_frame.state().get('selection'); // no selection if (!selection) { return; } // iterate through selected elements selection.each(function(attachment) { var url = attachment.attributes.url; clicked_button.prev(selector).val(url); choice_preview_update('img|' + url); }); }; // closing event for media manger wp.media.frames.gk_frame.on('close', gk_media_set_image); // image selection event wp.media.frames.gk_frame.on('select', gk_media_set_image); // showing media manager wp.media.frames.gk_frame.open(); }); }); }; sp_media_init('.ornament_image', '.media-button'); jQuery(document).ready( function(){ jQuery('#gfsp_icon_color').wpColorPicker({ change: function(event, ui){ jQuery('.sp_choice_preview').css('color', ui.color.toString() ); }, clear: function(event){ jQuery('.sp_choice_preview').removeAttr('style') } }); } ); /* Save settings to the choice */ function gfsp_ornament_save() { var color = jQuery('#gfsp_icon_color').val(); var tempVal = jQuery('#gfsp_icon_temp').val(); // add color if present and icon if (color != '' && color != undefined && tempVal.indexOf('icn') == 0) tempVal = tempVal + "|" + color; fieldType = GetSelectedField().type; inputType = GetSelectedField().inputType; if ( fieldType == 'radio' || fieldType == 'checkbox' || fieldType == 'poll' || fieldType == 'quiz' || (((fieldType == 'option' || fieldType == 'post_tags' || fieldType == 'post_custom_field' || fieldType == 'product' || fieldType == 'survey' || fieldType == 'post_category') && (inputType == 'checkbox' || inputType == 'radio'))) ) { // add Image Alt if a Choice Ornament var imageAlt = jQuery("#gfsp_ornament_image_alt").val(); if ( tempVal.indexOf('img') == 0 && imageAlt !== "" ) { tempVal = tempVal + "|" + imageAlt; } spChoice.val( tempVal ).trigger('input'); } else { SetFieldProperty('gfStylesProIcon', tempVal); jQuery("#gf_stylespro_icon_value").attr("value", tempVal); field_icon_preview_update(tempVal); } tb_remove(); } /* Save settings to field */ function gfsp_save() { var classes = []; jQuery("#gf_stylespro_current_modal input:checked:not(:disabled)").each( function(){ if ( jQuery(this).val() ) { var cls=jQuery(this).val(); classes.push(cls); } }); jQuery('#gf_stylespro_value').val( classes.join(" ") ); SetFieldProperty('gfStylesPro', classes.join(" ")); tb_remove(); /* Update choices preview incase ornaments position changes */ UpdateFieldChoices(GetInputType(field)); } /* Conditional effects show/hide */ jQuery("[name=gfsp_o_style]").on("change", function() { var id = jQuery(this).attr("id"); jQuery(".gfsp_effects_wrapper input, input#cb_inpbut_end").each( function(i, e) { var showFor = jQuery(e).data().showfor, hideFor = jQuery(e).data().hidefor; var showMatch = true, hideMatch = false; if ( showFor.length > 0) { showMatch = showFor.split(" ").reduce( function(total, cVal){ return total + (id.indexOf(cVal) > -1) }, 0 ) > 0; } if ( hideFor.length > 0 ) { hideMatch = hideFor.split(" ").reduce( function(total, cVal){ return total + (id.indexOf(cVal) > -1) }, 0 ) > 0; } if ( (showMatch && !hideMatch) ) { jQuery(e).removeAttr("disabled"); } else { jQuery(e).attr("disabled", "disabled"); } }); }); // Icon Selection jQuery('.all_icons span').click( function() { icnClass = jQuery(this).find('i').attr('class'); if (icnClass != ''){ type = jQuery(this).closest('.all_icons').data('iconset'); choice_preview_update('icn|' + icnClass + "|" + type); } else choice_preview_update(''); } ); // Icon Selection jQuery('.icon-custom-set').click( function() { var icnClass = jQuery(".ornament_icon_custom").val(); if (icnClass != ''){ var type = "custom"; choice_preview_update('icn|' + icnClass + "|" + type); } else choice_preview_update(''); } ); /** * Live update choices ornaments * */ function gfspChoicesObserve(fld){ // create an observer instance var observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { var index = 0; var field = GetSelectedField(); var oAfter = (field[WLSettingName] !== undefined && field[WLSettingName].indexOf('o_after') > -1); jQuery(mutation.addedNodes).each( function(){ var field = GetSelectedField(); if (field.choices !== "" && field.choices[index].spOrnament != undefined && field.choices[index].spOrnament != '') { var ornamentArr = field.choices[index].spOrnament.split('|'); var ornament = ""; if (ornamentArr[0] == 'icn'){ ornament = '' } if (ornamentArr[0] == 'img'){ ornament = '
'; } if (oAfter) { jQuery(ornament).appendTo( jQuery(this).find('label') ); } else { jQuery(ornament).prependTo( jQuery(this).find('label') ); } } index += 1; }); }); }); // configuration of the observer: var config = { attributes: false, childList: true, characterData: false }; // pass in the target node, as well as the observer options observer.observe(fld, config); } // Observe on form load jQuery('.gfield_checkbox, .gfield_radio').each( function() { gfspChoicesObserve(this); }); // Observe choices in newly added fields jQuery(document).on( 'gform_field_added', function( event, form, field ) { if ( field['type'] == "radio" || field['type'] == "checkbox" || field['inputType'] == "radio" || field['inputType'] == "checkbox" ) { jQuery( '#input_' + field['id']).each( function() { gfspChoicesObserve(this); }); } } ); /* * Update Field Icon * */ // Use this function for field loop on page load and on icon change save function gfspFieldIconUpdate(fld) { // If the value was never defined, stop if ( fld.gfStylesProIcon == undefined || fld.inputType == 'checkbox' || fld.inputType == 'radio') { return true; } var $addTo = jQuery('#field_' + fld.id + ' .ginput_container'); $addTo.removeClass('has_icon'); $addTo.find('.gfsp_icon').remove(); // If the value is changed to empty, stop if ( fld.gfStylesProIcon == '' ) { return true; } var icnHtml = ''; // since: spChoice.val = icn|class|iconset|color icnArr = fld.gfStylesProIcon.split('|'); if (icnArr[0] == 'icn') { icnHtml = '' } else if (icnArr[0] == 'img') { icnHtml = '' } // Add only to the first input on Date and Time type fields if (fld.type == 'date' || (fld.type == 'post_custom_field' && fld.inputType == 'date') ){ if (fld.dateType == "datepicker") $addTo = jQuery('#field_' + fld.id + ' #gfield_input_datepicker'); else $addTo = jQuery('#field_' + fld.id + ' #input_' + fld.id); } if (fld.type == 'time' || (fld.type == 'post_custom_field' && fld.inputType == 'time') ){ $addTo = jQuery('#field_' + fld.id + ' #input_' + fld.id); } $addTo.addClass('has_icon'); jQuery($addTo).prepend(icnHtml); } jQuery(form.fields).each( function() { gfspFieldIconUpdate(this); });