Changeset 3454325
- Timestamp:
- 02/05/2026 07:44:40 AM (7 weeks ago)
- Location:
- pdf-for-forminator-forms
- Files:
-
- 6 edited
-
tags/6.5.1/pdf/backend/css/main.css (modified) (1 diff)
-
tags/6.5.1/pdf/backend/src/main.js (modified) (1 diff)
-
tags/6.5.1/pdf/backend/src/script.js (modified) (3 diffs)
-
trunk/pdf/backend/css/main.css (modified) (1 diff)
-
trunk/pdf/backend/src/main.js (modified) (1 diff)
-
trunk/pdf/backend/src/script.js (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
pdf-for-forminator-forms/tags/6.5.1/pdf/backend/css/main.css
r3448701 r3454325 1441 1441 font-weight: 600; 1442 1442 min-width: 200px; 1443 padding: 0;1443 padding: 15px 30px; 1444 1444 } 1445 1445 .yeepdf-setup-title-input { 1446 1446 width: 100%; 1447 padding: 0 50px;1447 padding: 0 0px; 1448 1448 } 1449 1449 .yeepdf-setup-title-input input, .yeepdf-setup-title-input select { -
pdf-for-forminator-forms/tags/6.5.1/pdf/backend/src/main.js
r3448701 r3454325 1 (function($) { 2 "use strict"; 3 $( document ).ready( function () { 4 // Save bulder to josn 5 $.fn.yeepdf_save_type = function (type) { 6 var html_emlement = $(this); 7 var type = $(this).data("type"); 8 var container_style = {}; 9 var container_attr = {}; 10 var inner_style = {}; 11 var inner_attr = {}; 12 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 13 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 14 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 15 //Save style container 16 $.each( style_container_element, function( key, value ) { 17 var data = html_emlement.css(value); 18 container_style[value] = data; 19 }); 20 //Save style inner 21 $.each( style_inner_element, function( key, value ) { 22 var style_content= {}; 23 $.each( value , function( index, style ) { 24 var data = html_emlement.find(key).css(style); 25 switch(style) { 26 case "border-style": 27 case "border-color": 28 break; 29 case "width": 30 var el = html_emlement.find(key)[0]; 31 var data1 = el ? el.style.width : "auto"; 32 style_content[style] = data1; 33 break; 34 case "height": 35 var el = html_emlement.find(key)[0]; 36 var data1 = el ? el.style.height : "auto"; 37 style_content[style] = data1; 38 break; 39 case "border-width": 40 var border_style = html_emlement.find(key).css("border-style"); 41 var border_color = html_emlement.find(key).css("border-color"); 42 style_content["border"] = data +" "+ border_style + " " +border_color; 43 break; 44 default: 45 style_content[style] = data 46 break 47 } 48 }) 49 inner_style[key] = style_content; 50 }); 51 //Save attr 52 $.each( attr_inner_element, function( key, value ) { 53 var attr_content= {}; 54 $.each( value , function( index, style ) { 55 switch(style) { 56 case "text": 57 var data = html_emlement.find(key).html(); 58 break; 59 case "menu": 60 var menu = {}; 61 var i =0; 62 html_emlement.find( ".yeepdf-menu td" ).each(function() { 63 var text_menu = $(this).find("a").html(); 64 var href = $(this).find("a").attr("href"); 65 var background = $(this).find("a").css("background-color"); 66 var color = $(this).find("a").css("color"); 67 color = $.email_builder_cover_color(color); 68 background = $.email_builder_cover_color(background); 69 menu[i] = {"text":text_menu,"background":background,"color":color,"href":href} ; 70 i++; 71 }); 72 var data = menu; 73 break; 74 case "value_select": 75 let select = {}; 76 var i =0; 77 html_emlement.find( "option" ).each(function() { 78 let vl = $(this).val(); 79 select[i] = {"value":vl,"text":vl} ; 80 i++; 81 }) 82 var data = select; 83 break; 84 case "value_checkbox": 85 case "value_radio": 86 let checkbox = {}; 87 var i =0; 88 html_emlement.find( "input" ).each(function() { 89 let vl = $(this).val(); 90 checkbox[i] = {"value":vl,"text":vl} ; 91 i++; 92 }) 93 var data = checkbox; 94 break; 95 case "html": 96 case "html_hide": 97 case "html_not_change": 98 var data = html_emlement.find(key).html(); 99 break; 100 case "html_hide_table": 101 var data = html_emlement.find(key).html(); 102 data = (data === undefined || data === null) ? "" : data.toString(); 103 const regex = /font-family[^;]+;/g; 104 data = data.replaceAll(regex, ""); 105 break; 106 default: 107 var data = html_emlement.find(key).attr(style); 1 (function ($) { 2 "use strict"; 3 $(document).ready(function () { 4 // Save bulder to josn 5 $.fn.yeepdf_save_type = function (type) { 6 var html_emlement = $(this); 7 var type = $(this).data("type"); 8 var container_style = {}; 9 var container_attr = {}; 10 var inner_style = {}; 11 var inner_attr = {}; 12 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 13 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 14 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 15 //Save style container 16 $.each(style_container_element, function (key, value) { 17 var data = html_emlement.css(value); 18 container_style[value] = data; 19 }); 20 //Save style inner 21 $.each(style_inner_element, function (key, value) { 22 var style_content = {}; 23 $.each(value, function (index, style) { 24 var data = html_emlement.find(key).css(style); 25 switch (style) { 26 case "border-style": 27 case "border-color": 28 break; 29 case "width": 30 var el = html_emlement.find(key)[0]; 31 var data1 = el ? el.style.width : "auto"; 32 style_content[style] = data1; 33 break; 34 case "height": 35 var el = html_emlement.find(key)[0]; 36 var data1 = el ? el.style.height : "auto"; 37 style_content[style] = data1; 38 break; 39 case "border-width": 40 var border_style = html_emlement.find(key).css("border-style"); 41 var border_color = html_emlement.find(key).css("border-color"); 42 style_content["border"] = data + " " + border_style + " " + border_color; 43 break; 44 default: 45 style_content[style] = data 46 break 47 } 48 }) 49 inner_style[key] = style_content; 50 }); 51 //Save attr 52 $.each(attr_inner_element, function (key, value) { 53 var attr_content = {}; 54 $.each(value, function (index, style) { 55 switch (style) { 56 case "text": 57 var data = html_emlement.find(key).html(); 58 break; 59 case "menu": 60 var menu = {}; 61 var i = 0; 62 html_emlement.find(".yeepdf-menu td").each(function () { 63 var text_menu = $(this).find("a").html(); 64 var href = $(this).find("a").attr("href"); 65 var background = $(this).find("a").css("background-color"); 66 var color = $(this).find("a").css("color"); 67 color = $.email_builder_cover_color(color); 68 background = $.email_builder_cover_color(background); 69 menu[i] = { "text": text_menu, "background": background, "color": color, "href": href }; 70 i++; 71 }); 72 var data = menu; 73 break; 74 case "value_select": 75 let select = []; 76 html_emlement.find("option").each(function () { 77 let vl = $(this).val(); 78 select.push({ 79 value: vl, 80 text: vl 81 }); 82 i++; 83 }) 84 var data = select; 85 break; 86 case "value_checkbox": 87 case "value_radio": 88 let checkbox = []; 89 html_emlement.find("input").each(function () { 90 let vl = $(this).val(); 91 checkbox.push({ 92 value: vl, 93 text: vl 94 }); 95 }) 96 var data = checkbox; 97 break; 98 case "html": 99 case "html_hide": 100 case "html_not_change": 101 var data = html_emlement.find(key).html(); 102 break; 103 case "html_hide_table": 104 var data = html_emlement.find(key).html(); 105 data = (data === undefined || data === null) ? "" : data.toString(); 106 const regex = /font-family[^;]+;/g; 107 data = data.replaceAll(regex, ""); 108 break; 109 default: 110 var data = html_emlement.find(key).attr(style); 111 } 112 // Preserve arrays/objects (value_checkbox, value_select, value_radio) 113 // Only cast primitives to string 114 if (typeof data === 'object') { 115 attr_content[style] = data; 116 } else { 117 data = (data === undefined || data === null) ? "" : data.toString(); 118 attr_content[style] = data; 119 } 120 }) 121 inner_attr[key] = attr_content; 122 }); 123 var condition = ""; 124 condition = html_emlement.attr("data-condition"); 125 if (condition === undefined || condition == "") { 126 condition = ""; 127 } 128 return { "type": type, "container_style": container_style, "inner_style": inner_style, "inner_attr": inner_attr, "condition": condition }; 129 } 130 //Click editor -> set element 131 var ajax_change_editor = null; 132 $.fn.yeepdf_set_type_editor = function (row) { 133 var builder = $(this); 134 var type = $(this).data("type"); 135 if (typeof type === "undefined") { 136 return 137 } 138 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 139 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 140 //set editor in container element style 141 $.each(style_container_element, function (key, value) { 142 $.yeepdf_set_css_element(key, value, builder); 143 }); 144 $.each(attr_container_element, function (key, value) { 145 var data = $(key).val(); 146 if ($(key).attr("type") == "checkbox") { 147 if ($(key).is(':checked')) { 148 data = "ok"; 149 } else { 150 data = "not"; 151 } 152 } 153 builder.attr(value, data); 154 }); 155 var condition = $(".builder__editor--item-condition .builder__editor--condition").val(); 156 builder.attr("data-condition", condition); 157 //Element 158 if (builder.closest(".builder-elements").length > 0) { 159 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 160 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 161 //set editor in element style 162 $.each(style_inner_element, function (key, value) { 163 $.each(value, function (index, style) { 164 $.yeepdf_set_css_element(index, style, builder, key, value); 165 }) 166 }); 167 //set editor in element attr 168 $.each(attr_inner_element, function (key, value) { 169 $.each(value, function (index, attr) { 170 var data = $(index).val(); 171 var data_value = $(index).data("after_value"); 172 if (data_value !== undefined) { 173 data += data_value; 174 } 175 switch (attr) { 176 case "data-col": 177 //table col 178 if (data > 0) { 179 var html_table = builder.find(key); 180 var count_col = html_table.find("th").length; 181 var table_th_header = html_table.find("th").last().html(); 182 var table_td_header = html_table.find("td").last().html();; 183 if (data > count_col) { 184 var count_col_plus = count_col; 185 for (count_col_plus; count_col_plus < data; count_col_plus++) { 186 html_table.find("thead tr").append('<th contenteditable="true">' + +'</th>'); 187 html_table.find("tbody tr").append('<td contenteditable="true">' + table_td_header + '</td>'); 108 188 } 109 data = (data === undefined || data === null) ? "" : data.toString(); 110 attr_content[style] = data 111 }) 112 inner_attr[key] = attr_content; 113 }); 114 var condition = ""; 115 condition = html_emlement.attr("data-condition"); 116 if( condition === undefined || condition == "" ){ 117 condition = ""; 118 } 119 return {"type":type,"container_style":container_style,"inner_style":inner_style,"inner_attr":inner_attr,"condition":condition }; 120 } 121 //Click editor -> set element 122 var ajax_change_editor = null; 123 $.fn.yeepdf_set_type_editor = function ( row ) { 124 var builder = $(this); 125 var type = $(this).data("type"); 126 if (typeof type === "undefined") { 127 return 128 } 129 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 130 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 131 //set editor in container element style 132 $.each( style_container_element, function( key, value ) { 133 $.yeepdf_set_css_element(key,value,builder); 189 } else if (data < count_col) { 190 var count_col_minus = count_col; 191 var count_col_new = data; 192 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 193 html_table.find("thead tr th:last").remove(); 194 $(html_table.find("tbody tr")).each(function () { 195 $(this).find('td:last').remove(); 196 }); 197 } 198 } 199 builder.find(key).attr(attr, data); 200 tinymce.init({ 201 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 202 inline: true, 203 menubar: true, 204 toolbar: false 205 }); 206 $(".yeepdf-table-builder").resizableColumns(); 207 } 208 break; 209 case "data-row": 210 //table col 211 if (data > 1) { 212 var html_table = builder.find(key); 213 var count_row = html_table.find("tr").length; 214 var table_tr = html_table.find("tr").last().html(); 215 if (data > count_row) { 216 var count_col_plus = count_row; 217 for (count_col_plus; count_col_plus < data; count_col_plus++) { 218 var class_tr = "yeepdf-table-builder-tr-even"; 219 if (count_col_plus % 2 == 0) { 220 class_tr = "yeepdf-table-builder-tr-odd"; 221 } 222 html_table.find("tbody").append('<tr class="' + class_tr + '">' + table_tr + '</tr>'); 223 } 224 } else if (data < count_row) { 225 var count_col_minus = count_row; 226 var count_col_new = data; 227 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 228 html_table.find("tr:last").remove(); 229 } 230 } 231 builder.find(key).attr(attr, data); 232 tinymce.init({ 233 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 234 inline: true, 235 menubar: true, 236 toolbar: false 237 }); 238 $(".yeepdf-table-builder").resizableColumns(); 239 } 240 break; 241 case "html_not_change": 242 break; 243 case "html": 244 //change shortcode 245 if (data == "") { 246 data = tinymce.activeEditor.getContent(); 247 } 248 if (type == "order_detail") { 249 } else { 250 builder.find(key).html($.yeepdf_replace_shorcode(data)); 251 } 252 break; 253 case "text": 254 builder.find(key).html(data); 255 break; 256 case "menu": 257 var tr = $('<tr class="links"></tr'); 258 var i_menu = 0; 259 $(".builder__editor--item-menu .menu-content-tool li.data").each(function () { 260 var text_menu = $(this).find(".text").val(); 261 var href = $(this).find(".text_url").val(); 262 var background = $(this).find(".text_background").val(); 263 var color = $(this).find(".text_color").val(); 264 var td = $('<td align="center" valign="top"><a target="_blank" href=""></a></td>'); 265 td.find("a").css("background-color", background); 266 td.find("a").css("color", color); 267 td.find("a").attr("href", href); 268 td.find("a").html(text_menu); 269 td.appendTo(tr); 270 i_menu++; 134 271 }); 135 $.each( attr_container_element, function( key, value ) { 136 var data = $(key).val(); 137 if( $(key).attr("type") == "checkbox" ){ 138 if( $(key).is(':checked') ){ 139 data = "ok"; 140 }else{ 141 data = "not"; 142 } 143 } 144 builder.attr(value,data); 145 }); 146 var condition = $(".builder__editor--item-condition .builder__editor--condition").val(); 147 builder.attr("data-condition",condition); 148 //Element 149 if( builder.closest(".builder-elements").length > 0 ) { 150 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 151 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 152 //set editor in element style 153 $.each( style_inner_element, function( key, value ) { 154 $.each( value , function( index, style ) { 155 $.yeepdf_set_css_element(index,style,builder,key,value); 156 }) 157 }); 158 //set editor in element attr 159 $.each( attr_inner_element, function( key, value ) { 160 $.each( value , function( index, attr ) { 161 var data = $(index).val(); 162 var data_value = $(index).data("after_value"); 163 if (data_value !== undefined) { 164 data +=data_value; 165 } 166 switch(attr) { 167 case "data-col": 168 //table col 169 if(data > 0){ 170 var html_table = builder.find(key); 171 var count_col = html_table.find("th").length; 172 var table_th_header = html_table.find("th").last().html(); 173 var table_td_header = html_table.find("td").last().html();; 174 if(data > count_col){ 175 var count_col_plus = count_col; 176 for (count_col_plus; count_col_plus < data; count_col_plus++) { 177 html_table.find("thead tr").append('<th contenteditable="true">'+ +'</th>'); 178 html_table.find("tbody tr").append('<td contenteditable="true">'+table_td_header+'</td>'); 179 } 180 }else if(data < count_col){ 181 var count_col_minus = count_col; 182 var count_col_new = data; 183 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 184 html_table.find("thead tr th:last").remove(); 185 $(html_table.find("tbody tr")).each(function(){ 186 $(this).find('td:last').remove(); 187 }); 188 } 189 } 190 builder.find(key).attr(attr,data); 191 tinymce.init({ 192 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 193 inline: true, 194 menubar: true, 195 toolbar: false 196 }); 197 $(".yeepdf-table-builder").resizableColumns(); 198 } 199 break; 200 case "data-row": 201 //table col 202 if(data > 1){ 203 var html_table = builder.find(key); 204 var count_row = html_table.find("tr").length; 205 var table_tr = html_table.find("tr").last().html(); 206 if(data > count_row){ 207 var count_col_plus = count_row; 208 for (count_col_plus; count_col_plus < data; count_col_plus++) { 209 var class_tr = "yeepdf-table-builder-tr-even"; 210 if(count_col_plus % 2 == 0){ 211 class_tr= "yeepdf-table-builder-tr-odd"; 212 } 213 html_table.find("tbody").append('<tr class="'+class_tr+'">'+table_tr+'</tr>'); 214 } 215 }else if(data < count_row){ 216 var count_col_minus = count_row; 217 var count_col_new = data; 218 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 219 html_table.find("tr:last").remove(); 220 } 221 } 222 builder.find(key).attr(attr,data); 223 tinymce.init({ 224 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 225 inline: true, 226 menubar: true, 227 toolbar: false 228 }); 229 $(".yeepdf-table-builder").resizableColumns(); 230 } 231 break; 232 case "html_not_change": 233 break; 234 case "html": 235 //change shortcode 236 if(data == ""){ 237 data = tinymce.activeEditor.getContent(); 238 } 239 if(type == "order_detail"){ 240 }else{ 241 builder.find(key).html($.yeepdf_replace_shorcode(data)); 242 } 243 break; 244 case "text": 245 builder.find(key).html(data); 246 break; 247 case "menu": 248 var tr = $('<tr class="links"></tr'); 249 var i_menu = 0; 250 $( ".builder__editor--item-menu .menu-content-tool li.data" ).each(function() { 251 var text_menu = $(this).find(".text").val(); 252 var href = $(this).find(".text_url").val(); 253 var background = $(this).find(".text_background").val(); 254 var color = $(this).find(".text_color").val(); 255 var td = $('<td align="center" valign="top"><a target="_blank" href=""></a></td>'); 256 td.find("a").css("background-color",background); 257 td.find("a").css("color",color); 258 td.find("a").attr("href",href); 259 td.find("a").html(text_menu); 260 td.appendTo(tr); 261 i_menu++; 262 }); 263 builder.find("tr").remove(); 264 tr.appendTo(builder.find("table")); 265 var menu_width = 100 / i_menu; 266 builder.find("td").css("width",menu_width); 267 $.each( style_inner_element, function( key, value ) { 268 $.each( value , function( index, style ) { 269 $.yeepdf_set_css_element(index,style,builder,key,value); 270 }) 271 }); 272 break; 273 case "value_select": 274 if(data !=""){ 275 let options = data.split("\n"); 276 let options_html = ""; 277 $.each( options, function( key, value ) { 278 options_html +='<option value="'+value+'">'+value+'</option>'; 279 }); 280 builder.find(key).html(options_html); 281 } 282 break; 283 case "value_checkbox": 284 if(data !=""){ 285 let options = data.split("\n"); 286 let options_html = ""; 287 $.each( options, function( key, value ) { 288 options_html +=' <input value="'+value+'" type="checkbox" /> '+value; 289 }); 290 builder.find(key).html(options_html); 291 } 292 break; 293 case "value_radio": 294 if(data !=""){ 295 let options = data.split("\n"); 296 let options_html = ""; 297 $.each( options, function( key, value ) { 298 options_html +=' <input value="'+value+'" type="radio" /> '+value; 299 }); 300 builder.find(key).html(options_html); 301 } 302 break; 303 case "data-showimg": 304 case "data-sku": 305 case "data-totals": 306 case "data-showdes": 307 var showimg = $(".builder__editor--item-detail-template .detail-img"); 308 if( showimg.is(":checked")){ 309 showimg ="yes"; 310 }else{ 311 showimg ="hidden"; 312 } 313 var totals = $(".builder__editor--item-detail-template .detail-totals"); 314 if( totals.is(":checked")){ 315 totals ="yes"; 316 }else{ 317 totals ="hidden"; 318 } 319 var sku = $(".builder__editor--item-detail-template .detail-sku"); 320 if( sku.is(":checked")){ 321 sku ="yes"; 322 }else{ 323 sku ="hidden"; 324 } 325 var des = $(".builder__editor--item-detail-template .detail-des"); 326 if( des.is(":checked")){ 327 des ="yes"; 328 }else{ 329 des ="hidden"; 330 } 331 var value = ""; 332 value = $(index).val(); 333 if($(index).attr("type") == "checkbox"){ 334 if( $(index).is(":checked")){ 335 value = "yes"; 336 }else{ 337 value = "hidden"; 338 } 339 }else{ 340 value = data; 341 } 342 var shortcode ="[yeepdf_woo_order_detail show_img='"+showimg+"' item_totals='"+totals+"' item_sku='"+sku+"' show_des='"+des+"']"; 343 let count_hidden = $('th[data-sku="yes"],th[data-showimg="yes"],th[data-showdes="yes"]',builder).length; 344 builder.find(".woo_totals th").attr("colspan",2 + parseInt(count_hidden)); 345 $(".builder-elements-content.wp_builder_pdf_focus .text-content-data").html(shortcode); 346 builder.find(key).attr(attr,value); 347 break 348 default: 349 if($(index).attr("type") == "checkbox"){ 350 if( $(index).is(":checked")){ 351 data = "yes"; 352 }else{ 353 data = "no"; 354 } 355 } 356 builder.find(key).attr(attr,data); 357 break; 358 } 359 }) 360 }); 361 } 362 } 363 //Click emlement -> get and show editor 364 $.fn.yeepdf_load_type_editor = function (row ) { 365 var type = $(this).data("type"); 366 var builder = $(this); 367 var type_text = type; 368 if( wp_builder_pdf["block"][type]["type_text"] !== undefined){ 369 type_text = wp_builder_pdf["block"][type]["type_text"]; 370 } 371 $(".yeepdf-builder-goback .yeepdf-builder-goback_block").html(type_text); 372 var show_class_container = wp_builder_pdf["block"][type]["editor"]["container"]["show"]; 373 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 374 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 375 //Show eidtor 376 $.each( show_class_container, function( key, value ) { 377 $(".builder__editor--item-"+value).removeClass("hidden"); 378 }); 379 //set editor in container element style 380 $.each( style_container_element, function( key, value ) { 381 var data = builder.css(value); 382 if(value == "font-family"){ 383 data = data.replaceAll('"',""); 384 if(data == ""){ 385 data = 'dejavu sans'; 386 } 387 } 388 $.yeepdf_set_css_editor(value,key,data,builder); 389 }); 390 $.each( attr_container_element, function( key, value ) { 391 var data = builder.attr(value); 392 var type = $(key).attr("type"); 393 if( type == "checkbox"){ 394 if( data == "ok" || data == "yes"){ 395 $(key).prop('checked', true); 396 }else{ 397 $(key).prop('checked', false); 398 } 399 } 400 $(key).val(data); 401 }); 402 var condition = builder.attr("data-condition"); 403 if( condition === undefined || condition == "" ){ 404 condition = ""; 405 } 406 $(".builder__editor--item-condition .builder__editor--condition").val(condition); 407 if( !row ){ 408 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 409 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 410 //set editor in element style 411 $.each( style_inner_element, function( key, value ) { 412 $.each( value , function( index, style ) { 413 var data = builder.find(key).css(style); 414 $.yeepdf_set_css_editor(style,index,data,builder); 272 builder.find("tr").remove(); 273 tr.appendTo(builder.find("table")); 274 var menu_width = 100 / i_menu; 275 builder.find("td").css("width", menu_width); 276 $.each(style_inner_element, function (key, value) { 277 $.each(value, function (index, style) { 278 $.yeepdf_set_css_element(index, style, builder, key, value); 415 279 }) 416 280 }); 417 //set editor in element attr 418 $.each( attr_inner_element, function( key, value ) { 419 $.each( value , function( index, attr ) { 420 switch(attr) { 421 case "data-type": 422 var value = builder.find(key).attr(attr); 423 $(index).val(value); 424 if( value == 0 ){ 425 $(".yeepdf-image-type-upload").removeClass("hidden"); 426 $(".yeepdf-image-type-field").addClass("hidden"); 427 }else{ 428 $(".yeepdf-image-type-upload").addClass("hidden"); 429 $(".yeepdf-image-type-field").removeClass("hidden"); 430 } 431 break; 432 case "html_hide": 433 case "data-src": 434 break; 435 case "text": 436 var data = builder.find(key).html(); 437 $(index).val(data); 438 break; 439 case "html": 440 case "html_not_change": 441 if( builder.find(key+"-data").length > 0 ){ 442 var data = builder.find(key +"-data").html(); 443 }else{ 444 var data = builder.find(key).html(); 445 } 446 tinyMCE.get('builder__editor--js').setContent(data); 447 break; 448 case "html_ajax": 449 var data = builder.find(key+"-data").html(); 450 tinyMCE.get('builder__editor--js').setContent(data); 451 break; 452 case "menu": 453 var html_menu=$("<ul></ul>"); 454 $( builder.find(".yeepdf-menu td") ).each(function() { 455 var text_menu = $(this).find("a").html(); 456 var href = $(this).find("a").attr("href"); 457 var background = $(this).find("a").css("background-color"); 458 var color = $(this).find("a").css("color"); 459 color = $.email_builder_cover_color(color); 460 background = $.email_builder_cover_color(background); 461 var menu = $(".builder__editor--item-menu-hidden").clone().removeClass('hidden builder__editor--item-menu-hidden'); 462 menu.find(".text").val(text_menu); 463 menu.find(".text_url").val(href); 464 menu.find(".text_background").val(background); 465 menu.find(".text_color").val(color); 466 var container_li = $("<li class='data'></li>"); 467 menu.appendTo(container_li); 468 container_li.appendTo(html_menu); 469 }); 470 html_menu.removeClass('hidden'); 471 $(".builder__editor--item-menu .menu-content-tool ul").remove(); 472 html_menu.appendTo($(".menu-content-tool")); 473 $('.menu-content-tool .text_background,.menu-content-tool .text_color').wpColorPicker({ 474 change: function(event, ui){ 475 $(".wp_builder_pdf_focus").yeepdf_set_type_editor(); 476 } 477 }); 478 break; 479 case "value_select": 480 var value_select=""; 481 let i = 0; 482 $( builder.find("select option") ).each(function() { 483 if(i == 0){ 484 value_select += $(this).val(); 485 }else{ 486 value_select += "\n"+$(this).val(); 487 } 488 i++; 489 }) 490 $(index).val(value_select); 491 break; 492 case "value_checkbox": 493 case "value_radio": 494 let value_check=""; 495 let i_c = 0; 496 $( builder.find(".yeepdf_checkbox_container input") ).each(function() { 497 if(i_c == 0){ 498 value_check += $(this).val(); 499 }else{ 500 value_check += "\n"+$(this).val(); 501 } 502 i_c++; 503 }) 504 $(index).val(value_check); 505 break; 506 default: 507 var data = builder.find(key).attr(attr); 508 var type = $(index).attr("type"); 509 if(type == "checkbox"){ 510 if( data == "ok" || data == "yes"){ 511 $(index).prop('checked', true); 512 }else{ 513 $(index).prop('checked', false); 514 } 515 }else{ 516 $(index).val(data); 517 } 518 break; 519 } 520 }) 281 break; 282 case "value_select": 283 if (data != "") { 284 let options = data.split("\n"); 285 let options_html = ""; 286 $.each(options, function (key, value) { 287 options_html += '<option value="' + value + '">' + value + '</option>'; 288 }); 289 builder.find(key).html(options_html); 290 } 291 break; 292 case "value_checkbox": 293 if (data != "") { 294 let options = data.split("\n"); 295 let options_html = ""; 296 $.each(options, function (key, value) { 297 options_html += ' <input value="' + value + '" type="checkbox" /> ' + value; 298 }); 299 builder.find(key).html(options_html); 300 } 301 break; 302 case "value_radio": 303 if (data != "") { 304 let options = data.split("\n"); 305 let options_html = ""; 306 $.each(options, function (key, value) { 307 options_html += ' <input value="' + value + '" type="radio" /> ' + value; 308 }); 309 builder.find(key).html(options_html); 310 } 311 break; 312 case "data-showimg": 313 case "data-sku": 314 case "data-totals": 315 case "data-showdes": 316 var showimg = $(".builder__editor--item-detail-template .detail-img"); 317 if (showimg.is(":checked")) { 318 showimg = "yes"; 319 } else { 320 showimg = "hidden"; 321 } 322 var totals = $(".builder__editor--item-detail-template .detail-totals"); 323 if (totals.is(":checked")) { 324 totals = "yes"; 325 } else { 326 totals = "hidden"; 327 } 328 var sku = $(".builder__editor--item-detail-template .detail-sku"); 329 if (sku.is(":checked")) { 330 sku = "yes"; 331 } else { 332 sku = "hidden"; 333 } 334 var des = $(".builder__editor--item-detail-template .detail-des"); 335 if (des.is(":checked")) { 336 des = "yes"; 337 } else { 338 des = "hidden"; 339 } 340 var value = ""; 341 value = $(index).val(); 342 if ($(index).attr("type") == "checkbox") { 343 if ($(index).is(":checked")) { 344 value = "yes"; 345 } else { 346 value = "hidden"; 347 } 348 } else { 349 value = data; 350 } 351 var shortcode = "[yeepdf_woo_order_detail show_img='" + showimg + "' item_totals='" + totals + "' item_sku='" + sku + "' show_des='" + des + "']"; 352 let count_hidden = $('th[data-sku="yes"],th[data-showimg="yes"],th[data-showdes="yes"]', builder).length; 353 builder.find(".woo_totals th").attr("colspan", 2 + parseInt(count_hidden)); 354 $(".builder-elements-content.wp_builder_pdf_focus .text-content-data").html(shortcode); 355 builder.find(key).attr(attr, value); 356 break 357 default: 358 if ($(index).attr("type") == "checkbox") { 359 if ($(index).is(":checked")) { 360 data = "yes"; 361 } else { 362 data = "no"; 363 } 364 } 365 builder.find(key).attr(attr, data); 366 break; 367 } 368 }) 369 }); 370 } 371 } 372 //Click emlement -> get and show editor 373 $.fn.yeepdf_load_type_editor = function (row) { 374 var type = $(this).data("type"); 375 var builder = $(this); 376 var type_text = type; 377 if (wp_builder_pdf["block"][type]["type_text"] !== undefined) { 378 type_text = wp_builder_pdf["block"][type]["type_text"]; 379 } 380 $(".yeepdf-builder-goback .yeepdf-builder-goback_block").html(type_text); 381 var show_class_container = wp_builder_pdf["block"][type]["editor"]["container"]["show"]; 382 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 383 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 384 //Show eidtor 385 $.each(show_class_container, function (key, value) { 386 $(".builder__editor--item-" + value).removeClass("hidden"); 387 }); 388 //set editor in container element style 389 $.each(style_container_element, function (key, value) { 390 var data = builder.css(value); 391 if (value == "font-family") { 392 data = data.replaceAll('"', ""); 393 if (data == "") { 394 data = 'dejavu sans'; 395 } 396 } 397 $.yeepdf_set_css_editor(value, key, data, builder); 398 }); 399 $.each(attr_container_element, function (key, value) { 400 var data = builder.attr(value); 401 var type = $(key).attr("type"); 402 if (type == "checkbox") { 403 if (data == "ok" || data == "yes") { 404 $(key).prop('checked', true); 405 } else { 406 $(key).prop('checked', false); 407 } 408 } 409 $(key).val(data); 410 }); 411 var condition = builder.attr("data-condition"); 412 if (condition === undefined || condition == "") { 413 condition = ""; 414 } 415 $(".builder__editor--item-condition .builder__editor--condition").val(condition); 416 if (!row) { 417 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 418 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 419 //set editor in element style 420 $.each(style_inner_element, function (key, value) { 421 $.each(value, function (index, style) { 422 var data = builder.find(key).css(style); 423 $.yeepdf_set_css_editor(style, index, data, builder); 424 }) 425 }); 426 //set editor in element attr 427 $.each(attr_inner_element, function (key, value) { 428 $.each(value, function (index, attr) { 429 switch (attr) { 430 case "data-type": 431 var value = builder.find(key).attr(attr); 432 $(index).val(value); 433 if (value == 0) { 434 $(".yeepdf-image-type-upload").removeClass("hidden"); 435 $(".yeepdf-image-type-field").addClass("hidden"); 436 } else { 437 $(".yeepdf-image-type-upload").addClass("hidden"); 438 $(".yeepdf-image-type-field").removeClass("hidden"); 439 } 440 break; 441 case "html_hide": 442 case "data-src": 443 break; 444 case "text": 445 var data = builder.find(key).html(); 446 $(index).val(data); 447 break; 448 case "html": 449 case "html_not_change": 450 if (builder.find(key + "-data").length > 0) { 451 var data = builder.find(key + "-data").html(); 452 } else { 453 var data = builder.find(key).html(); 454 } 455 tinyMCE.get('builder__editor--js').setContent(data); 456 break; 457 case "html_ajax": 458 var data = builder.find(key + "-data").html(); 459 tinyMCE.get('builder__editor--js').setContent(data); 460 break; 461 case "menu": 462 var html_menu = $("<ul></ul>"); 463 $(builder.find(".yeepdf-menu td")).each(function () { 464 var text_menu = $(this).find("a").html(); 465 var href = $(this).find("a").attr("href"); 466 var background = $(this).find("a").css("background-color"); 467 var color = $(this).find("a").css("color"); 468 color = $.email_builder_cover_color(color); 469 background = $.email_builder_cover_color(background); 470 var menu = $(".builder__editor--item-menu-hidden").clone().removeClass('hidden builder__editor--item-menu-hidden'); 471 menu.find(".text").val(text_menu); 472 menu.find(".text_url").val(href); 473 menu.find(".text_background").val(background); 474 menu.find(".text_color").val(color); 475 var container_li = $("<li class='data'></li>"); 476 menu.appendTo(container_li); 477 container_li.appendTo(html_menu); 521 478 }); 479 html_menu.removeClass('hidden'); 480 $(".builder__editor--item-menu .menu-content-tool ul").remove(); 481 html_menu.appendTo($(".menu-content-tool")); 482 $('.menu-content-tool .text_background,.menu-content-tool .text_color').wpColorPicker({ 483 change: function (event, ui) { 484 $(".wp_builder_pdf_focus").yeepdf_set_type_editor(); 485 } 486 }); 487 break; 488 case "value_select": 489 var value_select = ""; 490 let i = 0; 491 $(builder.find("select option")).each(function () { 492 if (i == 0) { 493 value_select += $(this).val(); 494 } else { 495 value_select += "\n" + $(this).val(); 496 } 497 i++; 498 }) 499 $(index).val(value_select); 500 break; 501 case "value_checkbox": 502 case "value_radio": 503 let value_check = ""; 504 let i_c = 0; 505 $(builder.find(".yeepdf_checkbox_container input")).each(function () { 506 if (i_c == 0) { 507 value_check += $(this).val(); 508 } else { 509 value_check += "\n" + $(this).val(); 510 } 511 i_c++; 512 }) 513 $(index).val(value_check); 514 break; 515 default: 516 var data = builder.find(key).attr(attr); 517 var type = $(index).attr("type"); 518 if (type == "checkbox") { 519 if (data == "ok" || data == "yes") { 520 $(index).prop('checked', true); 521 } else { 522 $(index).prop('checked', false); 523 } 524 } else { 525 $(index).val(data); 526 } 527 break; 522 528 } 523 } 524 $.yeepdf_replace_shorcode = function (str) { 525 if( str === undefined){ 526 return str; 527 } 528 if(str != ""){ 529 str = str.replace(/\[yeepdf_fontawesome unicode=['"]?([a-f0-9]+)['"]?\]/gi, function(match, unicode) { 530 return `<span class="fontawesome">&#x${unicode};</span>`; 531 }); 532 } 533 let re = new RegExp(yeepdf_script.builder_shorcode_re, "gi"); 534 str = str.replaceAll(re, function (matched) { 535 matched = matched.replace(/\[|\]/gi, ""); 536 if( yeepdf_script.builder_shorcode[matched] === undefined ){ 537 return "["+matched+"]"; 538 }else{ 539 return yeepdf_script.builder_shorcode[matched]; 540 } 541 }) 542 return str; 543 } 544 // Drop emlement and load builder -> show data builder 545 $.yeepdf_load_type = function (type,elements,save_html=false) { 546 if( type in wp_builder_pdf["block"] ) { 547 var html = $(wp_builder_pdf["block"][type]["builder"]); 548 }else{ 549 var html = $(wp_builder_pdf["block"]["text"]["builder"]); 550 } 551 if( elements ){ 552 var container_style = elements.container_style; 553 var inner_style = elements.inner_style; 554 var inner_attr = elements.inner_attr; 555 html.find(".builder-elements-content").css(container_style); 556 $.each( inner_style, function( key, value ) { 557 if( value != "") { 558 html.find(key).css(value); 559 } 560 }); 561 if( elements.condition != ""){ 562 html.find(".builder-elements-content").attr("data-condition",elements.condition); 563 } 564 $.each( inner_attr, function( key, value ) { 565 var check_type_img = 0; 566 $.each( value, function( k, v ) { 567 switch(k) { 568 case "html_hide_table": 569 if(v != ""){ 570 v = v.replace("medium-editor medium-editor-element",""); 571 } 572 html.find(key).html(v); 573 break; 574 case "text": 575 case "html_hide": 576 if( save_html ) { 577 if( type == "qrcode" ){ 578 var v = '[yeepdf_qrcode]'+v+'[/yeepdf_qrcode]'; 579 }else if( type == "barcode") { 580 var v = '[yeepdf_barcode]'+v+'[/yeepdf_barcode]'; 581 } 582 } 583 html.find(key).html(v); 584 break; 585 case "html":; 586 var v_hide = inner_attr[".text-content-data"]["html_hide"]; 587 if(v_hide != ""){ 588 if(v_hide.search("=")>0){ 589 v_hide = v; 590 } 591 } 592 v_hide = $.yeepdf_replace_shorcode(v_hide); 593 html.find(key).html(v_hide); 594 break; 595 case "data-src": 596 html.find(key).attr("src",v); 597 html.find(key).attr(k,v); 598 break; 599 case "menu": 600 var menu_main =""; 601 var width = 100 / _.size(v); 602 $.each( v, function(menu_key, menu ) { 603 menu_main += '<td style="width:'+width+'%" align="center" valign="top"><a style="color:'+menu.color+';background-color:'+menu.background+';" target="_blank" href="'+menu.href+'">'+menu.text+'</a></td>'; 604 }) 605 html.find("tr").html(menu_main); 606 $.each( inner_style, function( key, value ) { 607 if( value != "") { 608 html.find(key).css(value); 609 } 610 }); 611 break; 612 case "value_select": 613 let option_main =""; 614 $.each( v, function(option_key, options ) { 615 option_main += '<option value="'+options.value+'">'+options.text+'</option>'; 616 }) 617 html.find("select").html(option_main); 618 break; 619 case "value_checkbox": 620 let input_checkbox =""; 621 $.each( v, function(option_key, options ) { 622 input_checkbox += ' <input type="checkbox" value="'+options.value+'"/> '+options.text; 623 }) 624 html.find(key).html(input_checkbox); 625 break; 626 case "value_radio": 627 let input_radio =""; 628 $.each( v, function(option_key, options ) { 629 input_radio += ' <input type="radio" value="'+options.value+'"/> '+options.text; 630 }) 631 html.find(key).html(input_radio); 632 break; 633 case "data-type": 634 check_type_img = v; 635 html.find(key).attr(k,v); 636 break; 637 case "data-field": 638 if( check_type_img == 1 && save_html ){ 639 html.find(key).attr("src",v); 640 } 641 html.find(key).attr(k,v); 642 break; 643 default: 644 html.find(key).attr(k,v); 645 break; 646 } 647 }) 648 }); 649 } 650 return html; 651 } 652 //Cover grb to hex 653 $.email_builder_cover_color = function (rgb) { 654 if (!rgb || typeof rgb !== 'string') return ''; 655 if( rgb == "" ){ 656 return ""; 657 } 658 if( "rgba(0,0,0,0)" == rgb.replace(/\s/g, '') ){ 659 return "transparent"; 660 } 661 rgb = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i); 662 return (rgb && rgb.length === 4) ? "#" + 663 ("0" + parseInt(rgb[1],10).toString(16)).slice(-2) + 664 ("0" + parseInt(rgb[2],10).toString(16)).slice(-2) + 665 ("0" + parseInt(rgb[3],10).toString(16)).slice(-2) : ''; 666 } 667 //set css edit 668 $.youtube_parser =function( url ) { 669 var regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/; 670 var match = url.match(regExp); 671 return (match&&match[7].length==11)? match[7] : false; 672 } 673 $.yeepdf_background_img =function( data ) { 674 var img = data.replace('url(','').replace(')','').replace(/\"/gi, ""); 675 return img 676 } 677 $.yeepdf_set_css_editor =function( style, index,data,builder) { 678 switch(style) { 679 case "border-color": 680 case "background-color": 681 case "color": 682 data = $.email_builder_cover_color(data); 683 $(index).val(data); 684 $(index).closest(".wp-picker-container").find(".button").css("background-color",data); 685 break; 686 case "background-image": 687 if( data == "none"){ 688 data = ""; 689 }else{ 690 data = $.yeepdf_background_img(data); 691 } 692 $(index).val(data); 693 break; 694 case "width": 695 if(builder.find("img").length > 0) { 696 //image 697 var data1 = builder.find("img")[0].style.width; 698 }else{ 699 //text 700 if(builder.find(".text-content")[0].style.width === undefined){ 701 var data1 = "100%"; 702 }else{ 703 var data1 = builder.find(".text-content")[0].style.width; 704 if(data1 == ""){ 705 data1 ="100%"; 706 } 707 } 708 } 709 if(data1 == ""){ 710 data = data.replace("px",""); 711 data1 = data; 712 } 713 $(index).val(data1); 714 break; 715 case "height": 716 if(builder.find("img").length > 0) { 717 //image 718 var data1 = builder.find("img")[0].style.height; 719 }else{ 720 //text 721 if(builder.find(".text-content")[0].style.height === undefined){ 722 var data1 = "auto"; 723 }else{ 724 var data1 = builder.find(".text-content")[0].style.height; 725 if(data1 == ""){ 726 data1 ="auto"; 727 } 728 } 729 } 730 if(data1 == ""){ 731 data = data.replace("px",""); 732 data1 = data; 733 } 734 $(index).val(data1); 735 break; 736 case "text-align": 737 $(index).val(data); 738 $(index).closest(".builder__editor--item").find(".button__align").removeClass("active"); 739 $(index).closest(".builder__editor--item").find(".builder__editor--align-"+data).addClass("active"); 740 if( data == "stat") 741 break; 742 default: 743 data = data.replace("px",""); 744 if(!isNaN(data)){ 745 data = Math.ceil(data); 746 } 747 var type_text = $(index).attr("type"); 748 if( type_text == "checkbox"){ 749 if( data== "none"){ 750 $(index).prop('checked', false); 751 }else{ 752 $(index).prop('checked', true); 753 } 754 } 755 $(index).val(data); 756 } 757 } 758 $.yeepdf_set_css_element =function( selector, style,builder="",key="",value="") { 759 var data = $(selector).val(); 760 var data_value = $(selector).data("after_value"); 761 if (data_value !== undefined) { 762 if(data.search("px") < 0){ 763 data +=data_value; 764 } 765 } 766 if(key){ 767 builder = builder.find(key); 768 } 769 switch(style) { 770 case "display": 771 if( $(selector).is(':checked') ) { 772 builder.css(style,"inline-block"); 773 }else{ 774 builder.css(style,"none"); 775 } 776 break; 777 case "text": 778 builder.html(data); 779 break; 780 case "width": 781 case "height": 782 if(data.search("%") > -1 || data.search("auto") > -1 ){ 783 data = data.replace("px", ""); 784 } 785 builder.css(style,data); 786 break; 787 case "background-image": 788 if( data == ""){ 789 builder.css("background-image",""); 790 }else{ 791 builder.css("background-image",'url("' + data + '")'); 792 } 793 break; 794 case "font-size": 795 data = Number(data); 796 builder.css("font-size",data); 797 break; 798 case "border-style": 799 case "border-color": 800 break; 801 case "border-width": 802 var border_style = "solid"; 803 var border_color = "#000000"; 804 $.each( value, function( k_vl, v_vl ) { 805 if(v_vl == "border-style"){ 806 border_style = $(k_vl).val(); 807 } 808 if(v_vl == "border-color"){ 809 border_color = $(k_vl).val(); 810 } 811 }) 812 builder.css("border",data +" "+ border_style + " " +border_color); 813 break; 814 default: 815 builder.css(style,data); 816 break; 817 } 818 } 819 // 820 $("body").on("change",".pdf_creator_settings_template_type",function(e){ 821 var value = $(this).val(); 822 if(value == 1){ 823 $(".gform-kitchen-sink-template_id").removeClass("hidden"); 824 $(".gform-kitchen-sink-template_upload").addClass("hidden"); 825 }else{ 826 $(".gform-kitchen-sink-template_upload").removeClass("hidden"); 827 $(".gform-kitchen-sink-template_id").addClass("hidden"); 529 }) 530 }); 531 } 532 } 533 $.yeepdf_replace_shorcode = function (str) { 534 if (str === undefined) { 535 return str; 536 } 537 if (str != "") { 538 str = str.replace(/\[yeepdf_fontawesome unicode=['"]?([a-f0-9]+)['"]?\]/gi, function (match, unicode) { 539 return `<span class="fontawesome">&#x${unicode};</span>`; 540 }); 541 } 542 let re = new RegExp(yeepdf_script.builder_shorcode_re, "gi"); 543 str = str.replaceAll(re, function (matched) { 544 matched = matched.replace(/\[|\]/gi, ""); 545 if (yeepdf_script.builder_shorcode[matched] === undefined) { 546 return "[" + matched + "]"; 547 } else { 548 return yeepdf_script.builder_shorcode[matched]; 828 549 } 829 550 }) 830 $("body").on("change","#pdf_creator_conditional_logic",function(e){ 831 if( $(this).is(":checked")){ 832 $(".yeepdf-popup-content").removeClass("hidden"); 833 }else{ 834 $(".yeepdf-popup-content").addClass("hidden"); 551 return str; 552 } 553 // Drop emlement and load builder -> show data builder 554 $.yeepdf_load_type = function (type, elements, save_html = false) { 555 if (type in wp_builder_pdf["block"]) { 556 var html = $(wp_builder_pdf["block"][type]["builder"]); 557 } else { 558 var html = $(wp_builder_pdf["block"]["text"]["builder"]); 559 } 560 if (elements) { 561 var container_style = elements.container_style; 562 var inner_style = elements.inner_style; 563 var inner_attr = elements.inner_attr; 564 html.find(".builder-elements-content").css(container_style); 565 $.each(inner_style, function (key, value) { 566 if (value != "") { 567 html.find(key).css(value); 568 } 569 }); 570 if (elements.condition != "") { 571 html.find(".builder-elements-content").attr("data-condition", elements.condition); 835 572 } 836 }) 837 $("body").on("change",".yeepdf_my_account_buttons",function(e){ 838 var value = $(this).val(); 839 if(value == "custom"){ 840 $(".yeepdf_my_account_buttons_custom").removeClass("hidden"); 841 }else{ 842 $(".yeepdf_my_account_buttons_custom").addClass("hidden"); 843 } 844 }) 573 $.each(inner_attr, function (key, value) { 574 var check_type_img = 0; 575 $.each(value, function (k, v) { 576 switch (k) { 577 case "html_hide_table": 578 if (v != "") { 579 v = v.replace("medium-editor medium-editor-element", ""); 580 } 581 html.find(key).html(v); 582 break; 583 case "text": 584 case "html_hide": 585 if (save_html) { 586 if (type == "qrcode") { 587 var v = '[yeepdf_qrcode]' + v + '[/yeepdf_qrcode]'; 588 } else if (type == "barcode") { 589 var v = '[yeepdf_barcode]' + v + '[/yeepdf_barcode]'; 590 } 591 } 592 html.find(key).html(v); 593 break; 594 case "html": ; 595 var v_hide = inner_attr[".text-content-data"]["html_hide"]; 596 if (v_hide != "") { 597 if (v_hide.search("=") > 0) { 598 v_hide = v; 599 } 600 } 601 v_hide = $.yeepdf_replace_shorcode(v_hide); 602 html.find(key).html(v_hide); 603 break; 604 case "data-src": 605 html.find(key).attr("src", v); 606 html.find(key).attr(k, v); 607 break; 608 case "menu": 609 var menu_main = ""; 610 var width = 100 / _.size(v); 611 $.each(v, function (menu_key, menu) { 612 menu_main += '<td style="width:' + width + '%" align="center" valign="top"><a style="color:' + menu.color + ';background-color:' + menu.background + ';" target="_blank" href="' + menu.href + '">' + menu.text + '</a></td>'; 613 }) 614 html.find("tr").html(menu_main); 615 $.each(inner_style, function (key, value) { 616 if (value != "") { 617 html.find(key).css(value); 618 } 619 }); 620 break; 621 case "value_select": 622 let option_main = ""; 623 if (Array.isArray(v)) { 624 $.each(v, function (option_key, options) { 625 option_main += '<option value="' + options.value + '">' + options.text + '</option>'; 626 }) 627 } 628 html.find("select").html(option_main); 629 break; 630 case "value_checkbox": 631 let input_checkbox = ""; 632 if (Array.isArray(v)) { 633 $.each(v, function (option_key, options) { 634 input_checkbox += ' <input type="checkbox" value="' + options.value + '"/> ' + options.text; 635 }) 636 } 637 html.find(key).html(input_checkbox); 638 break; 639 case "value_radio": 640 let input_radio = ""; 641 if (Array.isArray(v)) { 642 $.each(v, function (option_key, options) { 643 input_radio += ' <input type="radio" value="' + options.value + '"/> ' + options.text; 644 }) 645 } 646 html.find(key).html(input_radio); 647 break; 648 case "data-type": 649 check_type_img = v; 650 html.find(key).attr(k, v); 651 break; 652 case "data-field": 653 if (check_type_img == 1 && save_html) { 654 html.find(key).attr("src", v); 655 } 656 html.find(key).attr(k, v); 657 break; 658 default: 659 html.find(key).attr(k, v); 660 break; 661 } 662 }) 663 }); 664 } 665 return html; 666 } 667 //Cover grb to hex 668 $.email_builder_cover_color = function (rgb) { 669 if (!rgb || typeof rgb !== 'string') return ''; 670 if (rgb == "") { 671 return ""; 672 } 673 if ("rgba(0,0,0,0)" == rgb.replace(/\s/g, '')) { 674 return "transparent"; 675 } 676 rgb = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i); 677 return (rgb && rgb.length === 4) ? "#" + 678 ("0" + parseInt(rgb[1], 10).toString(16)).slice(-2) + 679 ("0" + parseInt(rgb[2], 10).toString(16)).slice(-2) + 680 ("0" + parseInt(rgb[3], 10).toString(16)).slice(-2) : ''; 681 } 682 //set css edit 683 $.youtube_parser = function (url) { 684 var regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/; 685 var match = url.match(regExp); 686 return (match && match[7].length == 11) ? match[7] : false; 687 } 688 $.yeepdf_background_img = function (data) { 689 var img = data.replace('url(', '').replace(')', '').replace(/\"/gi, ""); 690 return img 691 } 692 $.yeepdf_set_css_editor = function (style, index, data, builder) { 693 switch (style) { 694 case "border-color": 695 case "background-color": 696 case "color": 697 data = $.email_builder_cover_color(data); 698 $(index).val(data); 699 $(index).closest(".wp-picker-container").find(".button").css("background-color", data); 700 break; 701 case "background-image": 702 if (data == "none") { 703 data = ""; 704 } else { 705 data = $.yeepdf_background_img(data); 706 } 707 $(index).val(data); 708 break; 709 case "width": 710 if (builder.find("img").length > 0) { 711 //image 712 var data1 = builder.find("img")[0].style.width; 713 } else { 714 //text 715 if (builder.find(".text-content")[0].style.width === undefined) { 716 var data1 = "100%"; 717 } else { 718 var data1 = builder.find(".text-content")[0].style.width; 719 if (data1 == "") { 720 data1 = "100%"; 721 } 722 } 723 } 724 if (data1 == "") { 725 data = data.replace("px", ""); 726 data1 = data; 727 } 728 $(index).val(data1); 729 break; 730 case "height": 731 if (builder.find("img").length > 0) { 732 //image 733 var data1 = builder.find("img")[0].style.height; 734 } else { 735 //text 736 if (builder.find(".text-content")[0].style.height === undefined) { 737 var data1 = "auto"; 738 } else { 739 var data1 = builder.find(".text-content")[0].style.height; 740 if (data1 == "") { 741 data1 = "auto"; 742 } 743 } 744 } 745 if (data1 == "") { 746 data = data.replace("px", ""); 747 data1 = data; 748 } 749 $(index).val(data1); 750 break; 751 case "text-align": 752 $(index).val(data); 753 $(index).closest(".builder__editor--item").find(".button__align").removeClass("active"); 754 $(index).closest(".builder__editor--item").find(".builder__editor--align-" + data).addClass("active"); 755 if (data == "stat") 756 break; 757 default: 758 data = data.replace("px", ""); 759 if (!isNaN(data)) { 760 data = Math.ceil(data); 761 } 762 var type_text = $(index).attr("type"); 763 if (type_text == "checkbox") { 764 if (data == "none") { 765 $(index).prop('checked', false); 766 } else { 767 $(index).prop('checked', true); 768 } 769 } 770 $(index).val(data); 771 } 772 } 773 $.yeepdf_set_css_element = function (selector, style, builder = "", key = "", value = "") { 774 var data = $(selector).val(); 775 var data_value = $(selector).data("after_value"); 776 if (data_value !== undefined) { 777 if (data.search("px") < 0) { 778 data += data_value; 779 } 780 } 781 if (key) { 782 builder = builder.find(key); 783 } 784 switch (style) { 785 case "display": 786 if ($(selector).is(':checked')) { 787 builder.css(style, "inline-block"); 788 } else { 789 builder.css(style, "none"); 790 } 791 break; 792 case "text": 793 builder.html(data); 794 break; 795 case "width": 796 case "height": 797 if (data.search("%") > -1 || data.search("auto") > -1) { 798 data = data.replace("px", ""); 799 } 800 builder.css(style, data); 801 break; 802 case "background-image": 803 if (data == "") { 804 builder.css("background-image", ""); 805 } else { 806 builder.css("background-image", 'url("' + data + '")'); 807 } 808 break; 809 case "font-size": 810 data = Number(data); 811 builder.css("font-size", data); 812 break; 813 case "border-style": 814 case "border-color": 815 break; 816 case "border-width": 817 var border_style = "solid"; 818 var border_color = "#000000"; 819 $.each(value, function (k_vl, v_vl) { 820 if (v_vl == "border-style") { 821 border_style = $(k_vl).val(); 822 } 823 if (v_vl == "border-color") { 824 border_color = $(k_vl).val(); 825 } 826 }) 827 builder.css("border", data + " " + border_style + " " + border_color); 828 break; 829 default: 830 builder.css(style, data); 831 break; 832 } 833 } 834 // 835 $("body").on("change", ".pdf_creator_settings_template_type", function (e) { 836 var value = $(this).val(); 837 if (value == 1) { 838 $(".gform-kitchen-sink-template_id").removeClass("hidden"); 839 $(".gform-kitchen-sink-template_upload").addClass("hidden"); 840 } else { 841 $(".gform-kitchen-sink-template_upload").removeClass("hidden"); 842 $(".gform-kitchen-sink-template_id").addClass("hidden"); 843 } 845 844 }) 845 $("body").on("change", "#pdf_creator_conditional_logic", function (e) { 846 if ($(this).is(":checked")) { 847 $(".yeepdf-popup-content").removeClass("hidden"); 848 } else { 849 $(".yeepdf-popup-content").addClass("hidden"); 850 } 851 }) 852 $("body").on("change", ".yeepdf_my_account_buttons", function (e) { 853 var value = $(this).val(); 854 if (value == "custom") { 855 $(".yeepdf_my_account_buttons_custom").removeClass("hidden"); 856 } else { 857 $(".yeepdf_my_account_buttons_custom").addClass("hidden"); 858 } 859 }) 860 }) 846 861 })(jQuery); -
pdf-for-forminator-forms/tags/6.5.1/pdf/backend/src/script.js
r3448701 r3454325 18 18 return true; 19 19 } 20 console.log(datas); 20 21 $(".builder__list").html(""); 21 22 $(".email-builder-main").css(datas["container"]); … … 389 390 e.preventDefault(); 390 391 var attachment = $(this).closest(".grid-item").data("file"); 392 391 393 $.getJSON(attachment, function (data) { 392 394 $(".data_email").val(data); … … 443 445 var attachment = $(this).closest(".grid-item").data("file"); 444 446 $.getJSON(attachment, function (data) { 445 $(".data_email").val( JSON.stringify(data));447 $(".data_email").val(data); 446 448 $(".builder__list").html(""); 447 449 yeepdf_builder_main.json_to_builder(); -
pdf-for-forminator-forms/trunk/pdf/backend/css/main.css
r3351794 r3454325 1441 1441 font-weight: 600; 1442 1442 min-width: 200px; 1443 padding: 0;1443 padding: 15px 30px; 1444 1444 } 1445 1445 .yeepdf-setup-title-input { 1446 1446 width: 100%; 1447 padding: 0 50px;1447 padding: 0 0px; 1448 1448 } 1449 1449 .yeepdf-setup-title-input input, .yeepdf-setup-title-input select { -
pdf-for-forminator-forms/trunk/pdf/backend/src/main.js
r3430007 r3454325 1 (function($) { 2 "use strict"; 3 $( document ).ready( function () { 4 // Save bulder to josn 5 $.fn.yeepdf_save_type = function (type) { 6 var html_emlement = $(this); 7 var type = $(this).data("type"); 8 var container_style = {}; 9 var container_attr = {}; 10 var inner_style = {}; 11 var inner_attr = {}; 12 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 13 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 14 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 15 //Save style container 16 $.each( style_container_element, function( key, value ) { 17 var data = html_emlement.css(value); 18 container_style[value] = data; 19 }); 20 //Save style inner 21 $.each( style_inner_element, function( key, value ) { 22 var style_content= {}; 23 $.each( value , function( index, style ) { 24 var data = html_emlement.find(key).css(style); 25 switch(style) { 26 case "border-style": 27 case "border-color": 28 break; 29 case "width": 30 var el = html_emlement.find(key)[0]; 31 var data1 = el ? el.style.width : "auto"; 32 style_content[style] = data1; 33 break; 34 case "height": 35 var el = html_emlement.find(key)[0]; 36 var data1 = el ? el.style.height : "auto"; 37 style_content[style] = data1; 38 break; 39 case "border-width": 40 var border_style = html_emlement.find(key).css("border-style"); 41 var border_color = html_emlement.find(key).css("border-color"); 42 style_content["border"] = data +" "+ border_style + " " +border_color; 43 break; 44 default: 45 style_content[style] = data 46 break 47 } 48 }) 49 inner_style[key] = style_content; 50 }); 51 //Save attr 52 $.each( attr_inner_element, function( key, value ) { 53 var attr_content= {}; 54 $.each( value , function( index, style ) { 55 switch(style) { 56 case "text": 57 var data = html_emlement.find(key).html(); 58 break; 59 case "menu": 60 var menu = {}; 61 var i =0; 62 html_emlement.find( ".yeepdf-menu td" ).each(function() { 63 var text_menu = $(this).find("a").html(); 64 var href = $(this).find("a").attr("href"); 65 var background = $(this).find("a").css("background-color"); 66 var color = $(this).find("a").css("color"); 67 color = $.email_builder_cover_color(color); 68 background = $.email_builder_cover_color(background); 69 menu[i] = {"text":text_menu,"background":background,"color":color,"href":href} ; 70 i++; 71 }); 72 var data = menu; 73 break; 74 case "value_select": 75 let select = {}; 76 var i =0; 77 html_emlement.find( "option" ).each(function() { 78 let vl = $(this).val(); 79 select[i] = {"value":vl,"text":vl} ; 80 i++; 81 }) 82 var data = select; 83 break; 84 case "value_checkbox": 85 case "value_radio": 86 let checkbox = {}; 87 var i =0; 88 html_emlement.find( "input" ).each(function() { 89 let vl = $(this).val(); 90 checkbox[i] = {"value":vl,"text":vl} ; 91 i++; 92 }) 93 var data = checkbox; 94 break; 95 case "html": 96 case "html_hide": 97 case "html_not_change": 98 var data = html_emlement.find(key).html(); 99 break; 100 case "html_hide_table": 101 var data = html_emlement.find(key).html(); 102 data = (data === undefined || data === null) ? "" : data.toString(); 103 const regex = /font-family[^;]+;/g; 104 data = data.replaceAll(regex, ""); 105 break; 106 default: 107 var data = html_emlement.find(key).attr(style); 1 (function ($) { 2 "use strict"; 3 $(document).ready(function () { 4 // Save bulder to josn 5 $.fn.yeepdf_save_type = function (type) { 6 var html_emlement = $(this); 7 var type = $(this).data("type"); 8 var container_style = {}; 9 var container_attr = {}; 10 var inner_style = {}; 11 var inner_attr = {}; 12 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 13 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 14 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 15 //Save style container 16 $.each(style_container_element, function (key, value) { 17 var data = html_emlement.css(value); 18 container_style[value] = data; 19 }); 20 //Save style inner 21 $.each(style_inner_element, function (key, value) { 22 var style_content = {}; 23 $.each(value, function (index, style) { 24 var data = html_emlement.find(key).css(style); 25 switch (style) { 26 case "border-style": 27 case "border-color": 28 break; 29 case "width": 30 var el = html_emlement.find(key)[0]; 31 var data1 = el ? el.style.width : "auto"; 32 style_content[style] = data1; 33 break; 34 case "height": 35 var el = html_emlement.find(key)[0]; 36 var data1 = el ? el.style.height : "auto"; 37 style_content[style] = data1; 38 break; 39 case "border-width": 40 var border_style = html_emlement.find(key).css("border-style"); 41 var border_color = html_emlement.find(key).css("border-color"); 42 style_content["border"] = data + " " + border_style + " " + border_color; 43 break; 44 default: 45 style_content[style] = data 46 break 47 } 48 }) 49 inner_style[key] = style_content; 50 }); 51 //Save attr 52 $.each(attr_inner_element, function (key, value) { 53 var attr_content = {}; 54 $.each(value, function (index, style) { 55 switch (style) { 56 case "text": 57 var data = html_emlement.find(key).html(); 58 break; 59 case "menu": 60 var menu = {}; 61 var i = 0; 62 html_emlement.find(".yeepdf-menu td").each(function () { 63 var text_menu = $(this).find("a").html(); 64 var href = $(this).find("a").attr("href"); 65 var background = $(this).find("a").css("background-color"); 66 var color = $(this).find("a").css("color"); 67 color = $.email_builder_cover_color(color); 68 background = $.email_builder_cover_color(background); 69 menu[i] = { "text": text_menu, "background": background, "color": color, "href": href }; 70 i++; 71 }); 72 var data = menu; 73 break; 74 case "value_select": 75 let select = []; 76 html_emlement.find("option").each(function () { 77 let vl = $(this).val(); 78 select.push({ 79 value: vl, 80 text: vl 81 }); 82 i++; 83 }) 84 var data = select; 85 break; 86 case "value_checkbox": 87 case "value_radio": 88 let checkbox = []; 89 html_emlement.find("input").each(function () { 90 let vl = $(this).val(); 91 checkbox.push({ 92 value: vl, 93 text: vl 94 }); 95 }) 96 var data = checkbox; 97 break; 98 case "html": 99 case "html_hide": 100 case "html_not_change": 101 var data = html_emlement.find(key).html(); 102 break; 103 case "html_hide_table": 104 var data = html_emlement.find(key).html(); 105 data = (data === undefined || data === null) ? "" : data.toString(); 106 const regex = /font-family[^;]+;/g; 107 data = data.replaceAll(regex, ""); 108 break; 109 default: 110 var data = html_emlement.find(key).attr(style); 111 } 112 // Preserve arrays/objects (value_checkbox, value_select, value_radio) 113 // Only cast primitives to string 114 if (typeof data === 'object') { 115 attr_content[style] = data; 116 } else { 117 data = (data === undefined || data === null) ? "" : data.toString(); 118 attr_content[style] = data; 119 } 120 }) 121 inner_attr[key] = attr_content; 122 }); 123 var condition = ""; 124 condition = html_emlement.attr("data-condition"); 125 if (condition === undefined || condition == "") { 126 condition = ""; 127 } 128 return { "type": type, "container_style": container_style, "inner_style": inner_style, "inner_attr": inner_attr, "condition": condition }; 129 } 130 //Click editor -> set element 131 var ajax_change_editor = null; 132 $.fn.yeepdf_set_type_editor = function (row) { 133 var builder = $(this); 134 var type = $(this).data("type"); 135 if (typeof type === "undefined") { 136 return 137 } 138 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 139 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 140 //set editor in container element style 141 $.each(style_container_element, function (key, value) { 142 $.yeepdf_set_css_element(key, value, builder); 143 }); 144 $.each(attr_container_element, function (key, value) { 145 var data = $(key).val(); 146 if ($(key).attr("type") == "checkbox") { 147 if ($(key).is(':checked')) { 148 data = "ok"; 149 } else { 150 data = "not"; 151 } 152 } 153 builder.attr(value, data); 154 }); 155 var condition = $(".builder__editor--item-condition .builder__editor--condition").val(); 156 builder.attr("data-condition", condition); 157 //Element 158 if (builder.closest(".builder-elements").length > 0) { 159 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 160 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 161 //set editor in element style 162 $.each(style_inner_element, function (key, value) { 163 $.each(value, function (index, style) { 164 $.yeepdf_set_css_element(index, style, builder, key, value); 165 }) 166 }); 167 //set editor in element attr 168 $.each(attr_inner_element, function (key, value) { 169 $.each(value, function (index, attr) { 170 var data = $(index).val(); 171 var data_value = $(index).data("after_value"); 172 if (data_value !== undefined) { 173 data += data_value; 174 } 175 switch (attr) { 176 case "data-col": 177 //table col 178 if (data > 0) { 179 var html_table = builder.find(key); 180 var count_col = html_table.find("th").length; 181 var table_th_header = html_table.find("th").last().html(); 182 var table_td_header = html_table.find("td").last().html();; 183 if (data > count_col) { 184 var count_col_plus = count_col; 185 for (count_col_plus; count_col_plus < data; count_col_plus++) { 186 html_table.find("thead tr").append('<th contenteditable="true">' + +'</th>'); 187 html_table.find("tbody tr").append('<td contenteditable="true">' + table_td_header + '</td>'); 108 188 } 109 data = (data === undefined || data === null) ? "" : data.toString(); 110 attr_content[style] = data 111 }) 112 inner_attr[key] = attr_content; 113 }); 114 var condition = ""; 115 condition = html_emlement.attr("data-condition"); 116 if( condition === undefined || condition == "" ){ 117 condition = ""; 118 } 119 return {"type":type,"container_style":container_style,"inner_style":inner_style,"inner_attr":inner_attr,"condition":condition }; 120 } 121 //Click editor -> set element 122 var ajax_change_editor = null; 123 $.fn.yeepdf_set_type_editor = function ( row ) { 124 var builder = $(this); 125 var type = $(this).data("type"); 126 if (typeof type === "undefined") { 127 return 128 } 129 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 130 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 131 //set editor in container element style 132 $.each( style_container_element, function( key, value ) { 133 $.yeepdf_set_css_element(key,value,builder); 189 } else if (data < count_col) { 190 var count_col_minus = count_col; 191 var count_col_new = data; 192 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 193 html_table.find("thead tr th:last").remove(); 194 $(html_table.find("tbody tr")).each(function () { 195 $(this).find('td:last').remove(); 196 }); 197 } 198 } 199 builder.find(key).attr(attr, data); 200 tinymce.init({ 201 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 202 inline: true, 203 menubar: true, 204 toolbar: false 205 }); 206 $(".yeepdf-table-builder").resizableColumns(); 207 } 208 break; 209 case "data-row": 210 //table col 211 if (data > 1) { 212 var html_table = builder.find(key); 213 var count_row = html_table.find("tr").length; 214 var table_tr = html_table.find("tr").last().html(); 215 if (data > count_row) { 216 var count_col_plus = count_row; 217 for (count_col_plus; count_col_plus < data; count_col_plus++) { 218 var class_tr = "yeepdf-table-builder-tr-even"; 219 if (count_col_plus % 2 == 0) { 220 class_tr = "yeepdf-table-builder-tr-odd"; 221 } 222 html_table.find("tbody").append('<tr class="' + class_tr + '">' + table_tr + '</tr>'); 223 } 224 } else if (data < count_row) { 225 var count_col_minus = count_row; 226 var count_col_new = data; 227 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 228 html_table.find("tr:last").remove(); 229 } 230 } 231 builder.find(key).attr(attr, data); 232 tinymce.init({ 233 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 234 inline: true, 235 menubar: true, 236 toolbar: false 237 }); 238 $(".yeepdf-table-builder").resizableColumns(); 239 } 240 break; 241 case "html_not_change": 242 break; 243 case "html": 244 //change shortcode 245 if (data == "") { 246 data = tinymce.activeEditor.getContent(); 247 } 248 if (type == "order_detail") { 249 } else { 250 builder.find(key).html($.yeepdf_replace_shorcode(data)); 251 } 252 break; 253 case "text": 254 builder.find(key).html(data); 255 break; 256 case "menu": 257 var tr = $('<tr class="links"></tr'); 258 var i_menu = 0; 259 $(".builder__editor--item-menu .menu-content-tool li.data").each(function () { 260 var text_menu = $(this).find(".text").val(); 261 var href = $(this).find(".text_url").val(); 262 var background = $(this).find(".text_background").val(); 263 var color = $(this).find(".text_color").val(); 264 var td = $('<td align="center" valign="top"><a target="_blank" href=""></a></td>'); 265 td.find("a").css("background-color", background); 266 td.find("a").css("color", color); 267 td.find("a").attr("href", href); 268 td.find("a").html(text_menu); 269 td.appendTo(tr); 270 i_menu++; 134 271 }); 135 $.each( attr_container_element, function( key, value ) { 136 var data = $(key).val(); 137 if( $(key).attr("type") == "checkbox" ){ 138 if( $(key).is(':checked') ){ 139 data = "ok"; 140 }else{ 141 data = "not"; 142 } 143 } 144 builder.attr(value,data); 145 }); 146 var condition = $(".builder__editor--item-condition .builder__editor--condition").val(); 147 builder.attr("data-condition",condition); 148 //Element 149 if( builder.closest(".builder-elements").length > 0 ) { 150 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 151 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 152 //set editor in element style 153 $.each( style_inner_element, function( key, value ) { 154 $.each( value , function( index, style ) { 155 $.yeepdf_set_css_element(index,style,builder,key,value); 156 }) 157 }); 158 //set editor in element attr 159 $.each( attr_inner_element, function( key, value ) { 160 $.each( value , function( index, attr ) { 161 var data = $(index).val(); 162 var data_value = $(index).data("after_value"); 163 if (data_value !== undefined) { 164 data +=data_value; 165 } 166 switch(attr) { 167 case "data-col": 168 //table col 169 if(data > 0){ 170 var html_table = builder.find(key); 171 var count_col = html_table.find("th").length; 172 var table_th_header = html_table.find("th").last().html(); 173 var table_td_header = html_table.find("td").last().html();; 174 if(data > count_col){ 175 var count_col_plus = count_col; 176 for (count_col_plus; count_col_plus < data; count_col_plus++) { 177 html_table.find("thead tr").append('<th contenteditable="true">'+ +'</th>'); 178 html_table.find("tbody tr").append('<td contenteditable="true">'+table_td_header+'</td>'); 179 } 180 }else if(data < count_col){ 181 var count_col_minus = count_col; 182 var count_col_new = data; 183 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 184 html_table.find("thead tr th:last").remove(); 185 $(html_table.find("tbody tr")).each(function(){ 186 $(this).find('td:last').remove(); 187 }); 188 } 189 } 190 builder.find(key).attr(attr,data); 191 tinymce.init({ 192 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 193 inline: true, 194 menubar: true, 195 toolbar: false 196 }); 197 $(".yeepdf-table-builder").resizableColumns(); 198 } 199 break; 200 case "data-row": 201 //table col 202 if(data > 1){ 203 var html_table = builder.find(key); 204 var count_row = html_table.find("tr").length; 205 var table_tr = html_table.find("tr").last().html(); 206 if(data > count_row){ 207 var count_col_plus = count_row; 208 for (count_col_plus; count_col_plus < data; count_col_plus++) { 209 var class_tr = "yeepdf-table-builder-tr-even"; 210 if(count_col_plus % 2 == 0){ 211 class_tr= "yeepdf-table-builder-tr-odd"; 212 } 213 html_table.find("tbody").append('<tr class="'+class_tr+'">'+table_tr+'</tr>'); 214 } 215 }else if(data < count_row){ 216 var count_col_minus = count_row; 217 var count_col_new = data; 218 for (count_col_minus; count_col_new < count_col_minus; count_col_minus--) { 219 html_table.find("tr:last").remove(); 220 } 221 } 222 builder.find(key).attr(attr,data); 223 tinymce.init({ 224 selector: '.yeepdf-table-builder th, .yeepdf-table-builder td', 225 inline: true, 226 menubar: true, 227 toolbar: false 228 }); 229 $(".yeepdf-table-builder").resizableColumns(); 230 } 231 break; 232 case "html_not_change": 233 break; 234 case "html": 235 //change shortcode 236 if(data == ""){ 237 data = tinymce.activeEditor.getContent(); 238 } 239 if(type == "order_detail"){ 240 }else{ 241 builder.find(key).html($.yeepdf_replace_shorcode(data)); 242 } 243 break; 244 case "text": 245 builder.find(key).html(data); 246 break; 247 case "menu": 248 var tr = $('<tr class="links"></tr'); 249 var i_menu = 0; 250 $( ".builder__editor--item-menu .menu-content-tool li.data" ).each(function() { 251 var text_menu = $(this).find(".text").val(); 252 var href = $(this).find(".text_url").val(); 253 var background = $(this).find(".text_background").val(); 254 var color = $(this).find(".text_color").val(); 255 var td = $('<td align="center" valign="top"><a target="_blank" href=""></a></td>'); 256 td.find("a").css("background-color",background); 257 td.find("a").css("color",color); 258 td.find("a").attr("href",href); 259 td.find("a").html(text_menu); 260 td.appendTo(tr); 261 i_menu++; 262 }); 263 builder.find("tr").remove(); 264 tr.appendTo(builder.find("table")); 265 var menu_width = 100 / i_menu; 266 builder.find("td").css("width",menu_width); 267 $.each( style_inner_element, function( key, value ) { 268 $.each( value , function( index, style ) { 269 $.yeepdf_set_css_element(index,style,builder,key,value); 270 }) 271 }); 272 break; 273 case "value_select": 274 if(data !=""){ 275 let options = data.split("\n"); 276 let options_html = ""; 277 $.each( options, function( key, value ) { 278 options_html +='<option value="'+value+'">'+value+'</option>'; 279 }); 280 builder.find(key).html(options_html); 281 } 282 break; 283 case "value_checkbox": 284 if(data !=""){ 285 let options = data.split("\n"); 286 let options_html = ""; 287 $.each( options, function( key, value ) { 288 options_html +=' <input value="'+value+'" type="checkbox" /> '+value; 289 }); 290 builder.find(key).html(options_html); 291 } 292 break; 293 case "value_radio": 294 if(data !=""){ 295 let options = data.split("\n"); 296 let options_html = ""; 297 $.each( options, function( key, value ) { 298 options_html +=' <input value="'+value+'" type="radio" /> '+value; 299 }); 300 builder.find(key).html(options_html); 301 } 302 break; 303 case "data-showimg": 304 case "data-sku": 305 case "data-totals": 306 case "data-showdes": 307 var showimg = $(".builder__editor--item-detail-template .detail-img"); 308 if( showimg.is(":checked")){ 309 showimg ="yes"; 310 }else{ 311 showimg ="hidden"; 312 } 313 var totals = $(".builder__editor--item-detail-template .detail-totals"); 314 if( totals.is(":checked")){ 315 totals ="yes"; 316 }else{ 317 totals ="hidden"; 318 } 319 var sku = $(".builder__editor--item-detail-template .detail-sku"); 320 if( sku.is(":checked")){ 321 sku ="yes"; 322 }else{ 323 sku ="hidden"; 324 } 325 var des = $(".builder__editor--item-detail-template .detail-des"); 326 if( des.is(":checked")){ 327 des ="yes"; 328 }else{ 329 des ="hidden"; 330 } 331 var value = ""; 332 value = $(index).val(); 333 if($(index).attr("type") == "checkbox"){ 334 if( $(index).is(":checked")){ 335 value = "yes"; 336 }else{ 337 value = "hidden"; 338 } 339 }else{ 340 value = data; 341 } 342 var shortcode ="[yeepdf_woo_order_detail show_img='"+showimg+"' item_totals='"+totals+"' item_sku='"+sku+"' show_des='"+des+"']"; 343 let count_hidden = $('th[data-sku="yes"],th[data-showimg="yes"],th[data-showdes="yes"]',builder).length; 344 builder.find(".woo_totals th").attr("colspan",2 + parseInt(count_hidden)); 345 $(".builder-elements-content.wp_builder_pdf_focus .text-content-data").html(shortcode); 346 builder.find(key).attr(attr,value); 347 break 348 default: 349 if($(index).attr("type") == "checkbox"){ 350 if( $(index).is(":checked")){ 351 data = "yes"; 352 }else{ 353 data = "no"; 354 } 355 } 356 builder.find(key).attr(attr,data); 357 break; 358 } 359 }) 360 }); 361 } 362 } 363 //Click emlement -> get and show editor 364 $.fn.yeepdf_load_type_editor = function (row ) { 365 var type = $(this).data("type"); 366 var builder = $(this); 367 var type_text = type; 368 if( wp_builder_pdf["block"][type]["type_text"] !== undefined){ 369 type_text = wp_builder_pdf["block"][type]["type_text"]; 370 } 371 $(".yeepdf-builder-goback .yeepdf-builder-goback_block").html(type_text); 372 var show_class_container = wp_builder_pdf["block"][type]["editor"]["container"]["show"]; 373 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 374 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 375 //Show eidtor 376 $.each( show_class_container, function( key, value ) { 377 $(".builder__editor--item-"+value).removeClass("hidden"); 378 }); 379 //set editor in container element style 380 $.each( style_container_element, function( key, value ) { 381 var data = builder.css(value); 382 if(value == "font-family"){ 383 data = data.replaceAll('"',""); 384 if(data == ""){ 385 data = 'dejavu sans'; 386 } 387 } 388 $.yeepdf_set_css_editor(value,key,data,builder); 389 }); 390 $.each( attr_container_element, function( key, value ) { 391 var data = builder.attr(value); 392 var type = $(key).attr("type"); 393 if( type == "checkbox"){ 394 if( data == "ok" || data == "yes"){ 395 $(key).prop('checked', true); 396 }else{ 397 $(key).prop('checked', false); 398 } 399 } 400 $(key).val(data); 401 }); 402 var condition = builder.attr("data-condition"); 403 if( condition === undefined || condition == "" ){ 404 condition = ""; 405 } 406 $(".builder__editor--item-condition .builder__editor--condition").val(condition); 407 if( !row ){ 408 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 409 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 410 //set editor in element style 411 $.each( style_inner_element, function( key, value ) { 412 $.each( value , function( index, style ) { 413 var data = builder.find(key).css(style); 414 $.yeepdf_set_css_editor(style,index,data,builder); 272 builder.find("tr").remove(); 273 tr.appendTo(builder.find("table")); 274 var menu_width = 100 / i_menu; 275 builder.find("td").css("width", menu_width); 276 $.each(style_inner_element, function (key, value) { 277 $.each(value, function (index, style) { 278 $.yeepdf_set_css_element(index, style, builder, key, value); 415 279 }) 416 280 }); 417 //set editor in element attr 418 $.each( attr_inner_element, function( key, value ) { 419 $.each( value , function( index, attr ) { 420 switch(attr) { 421 case "data-type": 422 var value = builder.find(key).attr(attr); 423 $(index).val(value); 424 if( value == 0 ){ 425 $(".yeepdf-image-type-upload").removeClass("hidden"); 426 $(".yeepdf-image-type-field").addClass("hidden"); 427 }else{ 428 $(".yeepdf-image-type-upload").addClass("hidden"); 429 $(".yeepdf-image-type-field").removeClass("hidden"); 430 } 431 break; 432 case "html_hide": 433 case "data-src": 434 break; 435 case "text": 436 var data = builder.find(key).html(); 437 $(index).val(data); 438 break; 439 case "html": 440 case "html_not_change": 441 if( builder.find(key+"-data").length > 0 ){ 442 var data = builder.find(key +"-data").html(); 443 }else{ 444 var data = builder.find(key).html(); 445 } 446 tinyMCE.get('builder__editor--js').setContent(data); 447 break; 448 case "html_ajax": 449 var data = builder.find(key+"-data").html(); 450 tinyMCE.get('builder__editor--js').setContent(data); 451 break; 452 case "menu": 453 var html_menu=$("<ul></ul>"); 454 $( builder.find(".yeepdf-menu td") ).each(function() { 455 var text_menu = $(this).find("a").html(); 456 var href = $(this).find("a").attr("href"); 457 var background = $(this).find("a").css("background-color"); 458 var color = $(this).find("a").css("color"); 459 color = $.email_builder_cover_color(color); 460 background = $.email_builder_cover_color(background); 461 var menu = $(".builder__editor--item-menu-hidden").clone().removeClass('hidden builder__editor--item-menu-hidden'); 462 menu.find(".text").val(text_menu); 463 menu.find(".text_url").val(href); 464 menu.find(".text_background").val(background); 465 menu.find(".text_color").val(color); 466 var container_li = $("<li class='data'></li>"); 467 menu.appendTo(container_li); 468 container_li.appendTo(html_menu); 469 }); 470 html_menu.removeClass('hidden'); 471 $(".builder__editor--item-menu .menu-content-tool ul").remove(); 472 html_menu.appendTo($(".menu-content-tool")); 473 $('.menu-content-tool .text_background,.menu-content-tool .text_color').wpColorPicker({ 474 change: function(event, ui){ 475 $(".wp_builder_pdf_focus").yeepdf_set_type_editor(); 476 } 477 }); 478 break; 479 case "value_select": 480 var value_select=""; 481 let i = 0; 482 $( builder.find("select option") ).each(function() { 483 if(i == 0){ 484 value_select += $(this).val(); 485 }else{ 486 value_select += "\n"+$(this).val(); 487 } 488 i++; 489 }) 490 $(index).val(value_select); 491 break; 492 case "value_checkbox": 493 case "value_radio": 494 let value_check=""; 495 let i_c = 0; 496 $( builder.find(".yeepdf_checkbox_container input") ).each(function() { 497 if(i_c == 0){ 498 value_check += $(this).val(); 499 }else{ 500 value_check += "\n"+$(this).val(); 501 } 502 i_c++; 503 }) 504 $(index).val(value_check); 505 break; 506 default: 507 var data = builder.find(key).attr(attr); 508 var type = $(index).attr("type"); 509 if(type == "checkbox"){ 510 if( data == "ok" || data == "yes"){ 511 $(index).prop('checked', true); 512 }else{ 513 $(index).prop('checked', false); 514 } 515 }else{ 516 $(index).val(data); 517 } 518 break; 519 } 520 }) 281 break; 282 case "value_select": 283 if (data != "") { 284 let options = data.split("\n"); 285 let options_html = ""; 286 $.each(options, function (key, value) { 287 options_html += '<option value="' + value + '">' + value + '</option>'; 288 }); 289 builder.find(key).html(options_html); 290 } 291 break; 292 case "value_checkbox": 293 if (data != "") { 294 let options = data.split("\n"); 295 let options_html = ""; 296 $.each(options, function (key, value) { 297 options_html += ' <input value="' + value + '" type="checkbox" /> ' + value; 298 }); 299 builder.find(key).html(options_html); 300 } 301 break; 302 case "value_radio": 303 if (data != "") { 304 let options = data.split("\n"); 305 let options_html = ""; 306 $.each(options, function (key, value) { 307 options_html += ' <input value="' + value + '" type="radio" /> ' + value; 308 }); 309 builder.find(key).html(options_html); 310 } 311 break; 312 case "data-showimg": 313 case "data-sku": 314 case "data-totals": 315 case "data-showdes": 316 var showimg = $(".builder__editor--item-detail-template .detail-img"); 317 if (showimg.is(":checked")) { 318 showimg = "yes"; 319 } else { 320 showimg = "hidden"; 321 } 322 var totals = $(".builder__editor--item-detail-template .detail-totals"); 323 if (totals.is(":checked")) { 324 totals = "yes"; 325 } else { 326 totals = "hidden"; 327 } 328 var sku = $(".builder__editor--item-detail-template .detail-sku"); 329 if (sku.is(":checked")) { 330 sku = "yes"; 331 } else { 332 sku = "hidden"; 333 } 334 var des = $(".builder__editor--item-detail-template .detail-des"); 335 if (des.is(":checked")) { 336 des = "yes"; 337 } else { 338 des = "hidden"; 339 } 340 var value = ""; 341 value = $(index).val(); 342 if ($(index).attr("type") == "checkbox") { 343 if ($(index).is(":checked")) { 344 value = "yes"; 345 } else { 346 value = "hidden"; 347 } 348 } else { 349 value = data; 350 } 351 var shortcode = "[yeepdf_woo_order_detail show_img='" + showimg + "' item_totals='" + totals + "' item_sku='" + sku + "' show_des='" + des + "']"; 352 let count_hidden = $('th[data-sku="yes"],th[data-showimg="yes"],th[data-showdes="yes"]', builder).length; 353 builder.find(".woo_totals th").attr("colspan", 2 + parseInt(count_hidden)); 354 $(".builder-elements-content.wp_builder_pdf_focus .text-content-data").html(shortcode); 355 builder.find(key).attr(attr, value); 356 break 357 default: 358 if ($(index).attr("type") == "checkbox") { 359 if ($(index).is(":checked")) { 360 data = "yes"; 361 } else { 362 data = "no"; 363 } 364 } 365 builder.find(key).attr(attr, data); 366 break; 367 } 368 }) 369 }); 370 } 371 } 372 //Click emlement -> get and show editor 373 $.fn.yeepdf_load_type_editor = function (row) { 374 var type = $(this).data("type"); 375 var builder = $(this); 376 var type_text = type; 377 if (wp_builder_pdf["block"][type]["type_text"] !== undefined) { 378 type_text = wp_builder_pdf["block"][type]["type_text"]; 379 } 380 $(".yeepdf-builder-goback .yeepdf-builder-goback_block").html(type_text); 381 var show_class_container = wp_builder_pdf["block"][type]["editor"]["container"]["show"]; 382 var style_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["style"]; 383 var attr_container_element = wp_builder_pdf["block"][type]["editor"]["container"]["attr"]; 384 //Show eidtor 385 $.each(show_class_container, function (key, value) { 386 $(".builder__editor--item-" + value).removeClass("hidden"); 387 }); 388 //set editor in container element style 389 $.each(style_container_element, function (key, value) { 390 var data = builder.css(value); 391 if (value == "font-family") { 392 data = data.replaceAll('"', ""); 393 if (data == "") { 394 data = 'dejavu sans'; 395 } 396 } 397 $.yeepdf_set_css_editor(value, key, data, builder); 398 }); 399 $.each(attr_container_element, function (key, value) { 400 var data = builder.attr(value); 401 var type = $(key).attr("type"); 402 if (type == "checkbox") { 403 if (data == "ok" || data == "yes") { 404 $(key).prop('checked', true); 405 } else { 406 $(key).prop('checked', false); 407 } 408 } 409 $(key).val(data); 410 }); 411 var condition = builder.attr("data-condition"); 412 if (condition === undefined || condition == "") { 413 condition = ""; 414 } 415 $(".builder__editor--item-condition .builder__editor--condition").val(condition); 416 if (!row) { 417 var attr_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["attr"]; 418 var style_inner_element = wp_builder_pdf["block"][type]["editor"]["inner"]["style"]; 419 //set editor in element style 420 $.each(style_inner_element, function (key, value) { 421 $.each(value, function (index, style) { 422 var data = builder.find(key).css(style); 423 $.yeepdf_set_css_editor(style, index, data, builder); 424 }) 425 }); 426 //set editor in element attr 427 $.each(attr_inner_element, function (key, value) { 428 $.each(value, function (index, attr) { 429 switch (attr) { 430 case "data-type": 431 var value = builder.find(key).attr(attr); 432 $(index).val(value); 433 if (value == 0) { 434 $(".yeepdf-image-type-upload").removeClass("hidden"); 435 $(".yeepdf-image-type-field").addClass("hidden"); 436 } else { 437 $(".yeepdf-image-type-upload").addClass("hidden"); 438 $(".yeepdf-image-type-field").removeClass("hidden"); 439 } 440 break; 441 case "html_hide": 442 case "data-src": 443 break; 444 case "text": 445 var data = builder.find(key).html(); 446 $(index).val(data); 447 break; 448 case "html": 449 case "html_not_change": 450 if (builder.find(key + "-data").length > 0) { 451 var data = builder.find(key + "-data").html(); 452 } else { 453 var data = builder.find(key).html(); 454 } 455 tinyMCE.get('builder__editor--js').setContent(data); 456 break; 457 case "html_ajax": 458 var data = builder.find(key + "-data").html(); 459 tinyMCE.get('builder__editor--js').setContent(data); 460 break; 461 case "menu": 462 var html_menu = $("<ul></ul>"); 463 $(builder.find(".yeepdf-menu td")).each(function () { 464 var text_menu = $(this).find("a").html(); 465 var href = $(this).find("a").attr("href"); 466 var background = $(this).find("a").css("background-color"); 467 var color = $(this).find("a").css("color"); 468 color = $.email_builder_cover_color(color); 469 background = $.email_builder_cover_color(background); 470 var menu = $(".builder__editor--item-menu-hidden").clone().removeClass('hidden builder__editor--item-menu-hidden'); 471 menu.find(".text").val(text_menu); 472 menu.find(".text_url").val(href); 473 menu.find(".text_background").val(background); 474 menu.find(".text_color").val(color); 475 var container_li = $("<li class='data'></li>"); 476 menu.appendTo(container_li); 477 container_li.appendTo(html_menu); 521 478 }); 479 html_menu.removeClass('hidden'); 480 $(".builder__editor--item-menu .menu-content-tool ul").remove(); 481 html_menu.appendTo($(".menu-content-tool")); 482 $('.menu-content-tool .text_background,.menu-content-tool .text_color').wpColorPicker({ 483 change: function (event, ui) { 484 $(".wp_builder_pdf_focus").yeepdf_set_type_editor(); 485 } 486 }); 487 break; 488 case "value_select": 489 var value_select = ""; 490 let i = 0; 491 $(builder.find("select option")).each(function () { 492 if (i == 0) { 493 value_select += $(this).val(); 494 } else { 495 value_select += "\n" + $(this).val(); 496 } 497 i++; 498 }) 499 $(index).val(value_select); 500 break; 501 case "value_checkbox": 502 case "value_radio": 503 let value_check = ""; 504 let i_c = 0; 505 $(builder.find(".yeepdf_checkbox_container input")).each(function () { 506 if (i_c == 0) { 507 value_check += $(this).val(); 508 } else { 509 value_check += "\n" + $(this).val(); 510 } 511 i_c++; 512 }) 513 $(index).val(value_check); 514 break; 515 default: 516 var data = builder.find(key).attr(attr); 517 var type = $(index).attr("type"); 518 if (type == "checkbox") { 519 if (data == "ok" || data == "yes") { 520 $(index).prop('checked', true); 521 } else { 522 $(index).prop('checked', false); 523 } 524 } else { 525 $(index).val(data); 526 } 527 break; 522 528 } 523 } 524 $.yeepdf_replace_shorcode = function (str) { 525 if( str === undefined){ 526 return str; 527 } 528 if(str != ""){ 529 str = str.replace(/\[yeepdf_fontawesome unicode=['"]?([a-f0-9]+)['"]?\]/gi, function(match, unicode) { 530 return `<span class="fontawesome">&#x${unicode};</span>`; 531 }); 532 } 533 let re = new RegExp(yeepdf_script.builder_shorcode_re, "gi"); 534 str = str.replaceAll(re, function (matched) { 535 matched = matched.replace(/\[|\]/gi, ""); 536 if( yeepdf_script.builder_shorcode[matched] === undefined ){ 537 return "["+matched+"]"; 538 }else{ 539 return yeepdf_script.builder_shorcode[matched]; 540 } 541 }) 542 return str; 543 } 544 // Drop emlement and load builder -> show data builder 545 $.yeepdf_load_type = function (type,elements,save_html=false) { 546 if( type in wp_builder_pdf["block"] ) { 547 var html = $(wp_builder_pdf["block"][type]["builder"]); 548 }else{ 549 var html = $(wp_builder_pdf["block"]["text"]["builder"]); 550 } 551 if( elements ){ 552 var container_style = elements.container_style; 553 var inner_style = elements.inner_style; 554 var inner_attr = elements.inner_attr; 555 html.find(".builder-elements-content").css(container_style); 556 $.each( inner_style, function( key, value ) { 557 if( value != "") { 558 html.find(key).css(value); 559 } 560 }); 561 if( elements.condition != ""){ 562 html.find(".builder-elements-content").attr("data-condition",elements.condition); 563 } 564 $.each( inner_attr, function( key, value ) { 565 var check_type_img = 0; 566 $.each( value, function( k, v ) { 567 switch(k) { 568 case "html_hide_table": 569 if(v != ""){ 570 v = v.replace("medium-editor medium-editor-element",""); 571 } 572 html.find(key).html(v); 573 break; 574 case "text": 575 case "html_hide": 576 if( save_html ) { 577 if( type == "qrcode" ){ 578 var v = '[yeepdf_qrcode]'+v+'[/yeepdf_qrcode]'; 579 }else if( type == "barcode") { 580 var v = '[yeepdf_barcode]'+v+'[/yeepdf_barcode]'; 581 } 582 } 583 html.find(key).html(v); 584 break; 585 case "html":; 586 var v_hide = inner_attr[".text-content-data"]["html_hide"]; 587 if(v_hide != ""){ 588 if(v_hide.search("=")>0){ 589 v_hide = v; 590 } 591 } 592 v_hide = $.yeepdf_replace_shorcode(v_hide); 593 html.find(key).html(v_hide); 594 break; 595 case "data-src": 596 html.find(key).attr("src",v); 597 html.find(key).attr(k,v); 598 break; 599 case "menu": 600 var menu_main =""; 601 var width = 100 / _.size(v); 602 $.each( v, function(menu_key, menu ) { 603 menu_main += '<td style="width:'+width+'%" align="center" valign="top"><a style="color:'+menu.color+';background-color:'+menu.background+';" target="_blank" href="'+menu.href+'">'+menu.text+'</a></td>'; 604 }) 605 html.find("tr").html(menu_main); 606 $.each( inner_style, function( key, value ) { 607 if( value != "") { 608 html.find(key).css(value); 609 } 610 }); 611 break; 612 case "value_select": 613 let option_main =""; 614 $.each( v, function(option_key, options ) { 615 option_main += '<option value="'+options.value+'">'+options.text+'</option>'; 616 }) 617 html.find("select").html(option_main); 618 break; 619 case "value_checkbox": 620 let input_checkbox =""; 621 $.each( v, function(option_key, options ) { 622 input_checkbox += ' <input type="checkbox" value="'+options.value+'"/> '+options.text; 623 }) 624 html.find(key).html(input_checkbox); 625 break; 626 case "value_radio": 627 let input_radio =""; 628 $.each( v, function(option_key, options ) { 629 input_radio += ' <input type="radio" value="'+options.value+'"/> '+options.text; 630 }) 631 html.find(key).html(input_radio); 632 break; 633 case "data-type": 634 check_type_img = v; 635 html.find(key).attr(k,v); 636 break; 637 case "data-field": 638 if( check_type_img == 1 && save_html ){ 639 html.find(key).attr("src",v); 640 } 641 html.find(key).attr(k,v); 642 break; 643 default: 644 html.find(key).attr(k,v); 645 break; 646 } 647 }) 648 }); 649 } 650 return html; 651 } 652 //Cover grb to hex 653 $.email_builder_cover_color = function (rgb) { 654 if (!rgb || typeof rgb !== 'string') return ''; 655 if( rgb == "" ){ 656 return ""; 657 } 658 if( "rgba(0,0,0,0)" == rgb.replace(/\s/g, '') ){ 659 return "transparent"; 660 } 661 rgb = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i); 662 return (rgb && rgb.length === 4) ? "#" + 663 ("0" + parseInt(rgb[1],10).toString(16)).slice(-2) + 664 ("0" + parseInt(rgb[2],10).toString(16)).slice(-2) + 665 ("0" + parseInt(rgb[3],10).toString(16)).slice(-2) : ''; 666 } 667 //set css edit 668 $.youtube_parser =function( url ) { 669 var regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/; 670 var match = url.match(regExp); 671 return (match&&match[7].length==11)? match[7] : false; 672 } 673 $.yeepdf_background_img =function( data ) { 674 var img = data.replace('url(','').replace(')','').replace(/\"/gi, ""); 675 return img 676 } 677 $.yeepdf_set_css_editor =function( style, index,data,builder) { 678 switch(style) { 679 case "border-color": 680 case "background-color": 681 case "color": 682 data = $.email_builder_cover_color(data); 683 $(index).val(data); 684 $(index).closest(".wp-picker-container").find(".button").css("background-color",data); 685 break; 686 case "background-image": 687 if( data == "none"){ 688 data = ""; 689 }else{ 690 data = $.yeepdf_background_img(data); 691 } 692 $(index).val(data); 693 break; 694 case "width": 695 if(builder.find("img").length > 0) { 696 //image 697 var data1 = builder.find("img")[0].style.width; 698 }else{ 699 //text 700 if(builder.find(".text-content")[0].style.width === undefined){ 701 var data1 = "100%"; 702 }else{ 703 var data1 = builder.find(".text-content")[0].style.width; 704 if(data1 == ""){ 705 data1 ="100%"; 706 } 707 } 708 } 709 if(data1 == ""){ 710 data = data.replace("px",""); 711 data1 = data; 712 } 713 $(index).val(data1); 714 break; 715 case "height": 716 if(builder.find("img").length > 0) { 717 //image 718 var data1 = builder.find("img")[0].style.height; 719 }else{ 720 //text 721 if(builder.find(".text-content")[0].style.height === undefined){ 722 var data1 = "auto"; 723 }else{ 724 var data1 = builder.find(".text-content")[0].style.height; 725 if(data1 == ""){ 726 data1 ="auto"; 727 } 728 } 729 } 730 if(data1 == ""){ 731 data = data.replace("px",""); 732 data1 = data; 733 } 734 $(index).val(data1); 735 break; 736 case "text-align": 737 $(index).val(data); 738 $(index).closest(".builder__editor--item").find(".button__align").removeClass("active"); 739 $(index).closest(".builder__editor--item").find(".builder__editor--align-"+data).addClass("active"); 740 if( data == "stat") 741 break; 742 default: 743 data = data.replace("px",""); 744 if(!isNaN(data)){ 745 data = Math.ceil(data); 746 } 747 var type_text = $(index).attr("type"); 748 if( type_text == "checkbox"){ 749 if( data== "none"){ 750 $(index).prop('checked', false); 751 }else{ 752 $(index).prop('checked', true); 753 } 754 } 755 $(index).val(data); 756 } 757 } 758 $.yeepdf_set_css_element =function( selector, style,builder="",key="",value="") { 759 var data = $(selector).val(); 760 var data_value = $(selector).data("after_value"); 761 if (data_value !== undefined) { 762 if(data.search("px") < 0){ 763 data +=data_value; 764 } 765 } 766 if(key){ 767 builder = builder.find(key); 768 } 769 switch(style) { 770 case "display": 771 if( $(selector).is(':checked') ) { 772 builder.css(style,"inline-block"); 773 }else{ 774 builder.css(style,"none"); 775 } 776 break; 777 case "text": 778 builder.html(data); 779 break; 780 case "width": 781 case "height": 782 if(data.search("%") > -1 || data.search("auto") > -1 ){ 783 data = data.replace("px", ""); 784 } 785 builder.css(style,data); 786 break; 787 case "background-image": 788 if( data == ""){ 789 builder.css("background-image",""); 790 }else{ 791 builder.css("background-image",'url("' + data + '")'); 792 } 793 break; 794 case "font-size": 795 data = Number(data); 796 builder.css("font-size",data); 797 break; 798 case "border-style": 799 case "border-color": 800 break; 801 case "border-width": 802 var border_style = "solid"; 803 var border_color = "#000000"; 804 $.each( value, function( k_vl, v_vl ) { 805 if(v_vl == "border-style"){ 806 border_style = $(k_vl).val(); 807 } 808 if(v_vl == "border-color"){ 809 border_color = $(k_vl).val(); 810 } 811 }) 812 builder.css("border",data +" "+ border_style + " " +border_color); 813 break; 814 default: 815 builder.css(style,data); 816 break; 817 } 818 } 819 // 820 $("body").on("change",".pdf_creator_settings_template_type",function(e){ 821 var value = $(this).val(); 822 if(value == 1){ 823 $(".gform-kitchen-sink-template_id").removeClass("hidden"); 824 $(".gform-kitchen-sink-template_upload").addClass("hidden"); 825 }else{ 826 $(".gform-kitchen-sink-template_upload").removeClass("hidden"); 827 $(".gform-kitchen-sink-template_id").addClass("hidden"); 529 }) 530 }); 531 } 532 } 533 $.yeepdf_replace_shorcode = function (str) { 534 if (str === undefined) { 535 return str; 536 } 537 if (str != "") { 538 str = str.replace(/\[yeepdf_fontawesome unicode=['"]?([a-f0-9]+)['"]?\]/gi, function (match, unicode) { 539 return `<span class="fontawesome">&#x${unicode};</span>`; 540 }); 541 } 542 let re = new RegExp(yeepdf_script.builder_shorcode_re, "gi"); 543 str = str.replaceAll(re, function (matched) { 544 matched = matched.replace(/\[|\]/gi, ""); 545 if (yeepdf_script.builder_shorcode[matched] === undefined) { 546 return "[" + matched + "]"; 547 } else { 548 return yeepdf_script.builder_shorcode[matched]; 828 549 } 829 550 }) 830 $("body").on("change","#pdf_creator_conditional_logic",function(e){ 831 if( $(this).is(":checked")){ 832 $(".yeepdf-popup-content").removeClass("hidden"); 833 }else{ 834 $(".yeepdf-popup-content").addClass("hidden"); 551 return str; 552 } 553 // Drop emlement and load builder -> show data builder 554 $.yeepdf_load_type = function (type, elements, save_html = false) { 555 if (type in wp_builder_pdf["block"]) { 556 var html = $(wp_builder_pdf["block"][type]["builder"]); 557 } else { 558 var html = $(wp_builder_pdf["block"]["text"]["builder"]); 559 } 560 if (elements) { 561 var container_style = elements.container_style; 562 var inner_style = elements.inner_style; 563 var inner_attr = elements.inner_attr; 564 html.find(".builder-elements-content").css(container_style); 565 $.each(inner_style, function (key, value) { 566 if (value != "") { 567 html.find(key).css(value); 568 } 569 }); 570 if (elements.condition != "") { 571 html.find(".builder-elements-content").attr("data-condition", elements.condition); 835 572 } 836 }) 837 $("body").on("change",".yeepdf_my_account_buttons",function(e){ 838 var value = $(this).val(); 839 if(value == "custom"){ 840 $(".yeepdf_my_account_buttons_custom").removeClass("hidden"); 841 }else{ 842 $(".yeepdf_my_account_buttons_custom").addClass("hidden"); 843 } 844 }) 573 $.each(inner_attr, function (key, value) { 574 var check_type_img = 0; 575 $.each(value, function (k, v) { 576 switch (k) { 577 case "html_hide_table": 578 if (v != "") { 579 v = v.replace("medium-editor medium-editor-element", ""); 580 } 581 html.find(key).html(v); 582 break; 583 case "text": 584 case "html_hide": 585 if (save_html) { 586 if (type == "qrcode") { 587 var v = '[yeepdf_qrcode]' + v + '[/yeepdf_qrcode]'; 588 } else if (type == "barcode") { 589 var v = '[yeepdf_barcode]' + v + '[/yeepdf_barcode]'; 590 } 591 } 592 html.find(key).html(v); 593 break; 594 case "html": ; 595 var v_hide = inner_attr[".text-content-data"]["html_hide"]; 596 if (v_hide != "") { 597 if (v_hide.search("=") > 0) { 598 v_hide = v; 599 } 600 } 601 v_hide = $.yeepdf_replace_shorcode(v_hide); 602 html.find(key).html(v_hide); 603 break; 604 case "data-src": 605 html.find(key).attr("src", v); 606 html.find(key).attr(k, v); 607 break; 608 case "menu": 609 var menu_main = ""; 610 var width = 100 / _.size(v); 611 $.each(v, function (menu_key, menu) { 612 menu_main += '<td style="width:' + width + '%" align="center" valign="top"><a style="color:' + menu.color + ';background-color:' + menu.background + ';" target="_blank" href="' + menu.href + '">' + menu.text + '</a></td>'; 613 }) 614 html.find("tr").html(menu_main); 615 $.each(inner_style, function (key, value) { 616 if (value != "") { 617 html.find(key).css(value); 618 } 619 }); 620 break; 621 case "value_select": 622 let option_main = ""; 623 if (Array.isArray(v)) { 624 $.each(v, function (option_key, options) { 625 option_main += '<option value="' + options.value + '">' + options.text + '</option>'; 626 }) 627 } 628 html.find("select").html(option_main); 629 break; 630 case "value_checkbox": 631 let input_checkbox = ""; 632 if (Array.isArray(v)) { 633 $.each(v, function (option_key, options) { 634 input_checkbox += ' <input type="checkbox" value="' + options.value + '"/> ' + options.text; 635 }) 636 } 637 html.find(key).html(input_checkbox); 638 break; 639 case "value_radio": 640 let input_radio = ""; 641 if (Array.isArray(v)) { 642 $.each(v, function (option_key, options) { 643 input_radio += ' <input type="radio" value="' + options.value + '"/> ' + options.text; 644 }) 645 } 646 html.find(key).html(input_radio); 647 break; 648 case "data-type": 649 check_type_img = v; 650 html.find(key).attr(k, v); 651 break; 652 case "data-field": 653 if (check_type_img == 1 && save_html) { 654 html.find(key).attr("src", v); 655 } 656 html.find(key).attr(k, v); 657 break; 658 default: 659 html.find(key).attr(k, v); 660 break; 661 } 662 }) 663 }); 664 } 665 return html; 666 } 667 //Cover grb to hex 668 $.email_builder_cover_color = function (rgb) { 669 if (!rgb || typeof rgb !== 'string') return ''; 670 if (rgb == "") { 671 return ""; 672 } 673 if ("rgba(0,0,0,0)" == rgb.replace(/\s/g, '')) { 674 return "transparent"; 675 } 676 rgb = rgb.match(/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i); 677 return (rgb && rgb.length === 4) ? "#" + 678 ("0" + parseInt(rgb[1], 10).toString(16)).slice(-2) + 679 ("0" + parseInt(rgb[2], 10).toString(16)).slice(-2) + 680 ("0" + parseInt(rgb[3], 10).toString(16)).slice(-2) : ''; 681 } 682 //set css edit 683 $.youtube_parser = function (url) { 684 var regExp = /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/; 685 var match = url.match(regExp); 686 return (match && match[7].length == 11) ? match[7] : false; 687 } 688 $.yeepdf_background_img = function (data) { 689 var img = data.replace('url(', '').replace(')', '').replace(/\"/gi, ""); 690 return img 691 } 692 $.yeepdf_set_css_editor = function (style, index, data, builder) { 693 switch (style) { 694 case "border-color": 695 case "background-color": 696 case "color": 697 data = $.email_builder_cover_color(data); 698 $(index).val(data); 699 $(index).closest(".wp-picker-container").find(".button").css("background-color", data); 700 break; 701 case "background-image": 702 if (data == "none") { 703 data = ""; 704 } else { 705 data = $.yeepdf_background_img(data); 706 } 707 $(index).val(data); 708 break; 709 case "width": 710 if (builder.find("img").length > 0) { 711 //image 712 var data1 = builder.find("img")[0].style.width; 713 } else { 714 //text 715 if (builder.find(".text-content")[0].style.width === undefined) { 716 var data1 = "100%"; 717 } else { 718 var data1 = builder.find(".text-content")[0].style.width; 719 if (data1 == "") { 720 data1 = "100%"; 721 } 722 } 723 } 724 if (data1 == "") { 725 data = data.replace("px", ""); 726 data1 = data; 727 } 728 $(index).val(data1); 729 break; 730 case "height": 731 if (builder.find("img").length > 0) { 732 //image 733 var data1 = builder.find("img")[0].style.height; 734 } else { 735 //text 736 if (builder.find(".text-content")[0].style.height === undefined) { 737 var data1 = "auto"; 738 } else { 739 var data1 = builder.find(".text-content")[0].style.height; 740 if (data1 == "") { 741 data1 = "auto"; 742 } 743 } 744 } 745 if (data1 == "") { 746 data = data.replace("px", ""); 747 data1 = data; 748 } 749 $(index).val(data1); 750 break; 751 case "text-align": 752 $(index).val(data); 753 $(index).closest(".builder__editor--item").find(".button__align").removeClass("active"); 754 $(index).closest(".builder__editor--item").find(".builder__editor--align-" + data).addClass("active"); 755 if (data == "stat") 756 break; 757 default: 758 data = data.replace("px", ""); 759 if (!isNaN(data)) { 760 data = Math.ceil(data); 761 } 762 var type_text = $(index).attr("type"); 763 if (type_text == "checkbox") { 764 if (data == "none") { 765 $(index).prop('checked', false); 766 } else { 767 $(index).prop('checked', true); 768 } 769 } 770 $(index).val(data); 771 } 772 } 773 $.yeepdf_set_css_element = function (selector, style, builder = "", key = "", value = "") { 774 var data = $(selector).val(); 775 var data_value = $(selector).data("after_value"); 776 if (data_value !== undefined) { 777 if (data.search("px") < 0) { 778 data += data_value; 779 } 780 } 781 if (key) { 782 builder = builder.find(key); 783 } 784 switch (style) { 785 case "display": 786 if ($(selector).is(':checked')) { 787 builder.css(style, "inline-block"); 788 } else { 789 builder.css(style, "none"); 790 } 791 break; 792 case "text": 793 builder.html(data); 794 break; 795 case "width": 796 case "height": 797 if (data.search("%") > -1 || data.search("auto") > -1) { 798 data = data.replace("px", ""); 799 } 800 builder.css(style, data); 801 break; 802 case "background-image": 803 if (data == "") { 804 builder.css("background-image", ""); 805 } else { 806 builder.css("background-image", 'url("' + data + '")'); 807 } 808 break; 809 case "font-size": 810 data = Number(data); 811 builder.css("font-size", data); 812 break; 813 case "border-style": 814 case "border-color": 815 break; 816 case "border-width": 817 var border_style = "solid"; 818 var border_color = "#000000"; 819 $.each(value, function (k_vl, v_vl) { 820 if (v_vl == "border-style") { 821 border_style = $(k_vl).val(); 822 } 823 if (v_vl == "border-color") { 824 border_color = $(k_vl).val(); 825 } 826 }) 827 builder.css("border", data + " " + border_style + " " + border_color); 828 break; 829 default: 830 builder.css(style, data); 831 break; 832 } 833 } 834 // 835 $("body").on("change", ".pdf_creator_settings_template_type", function (e) { 836 var value = $(this).val(); 837 if (value == 1) { 838 $(".gform-kitchen-sink-template_id").removeClass("hidden"); 839 $(".gform-kitchen-sink-template_upload").addClass("hidden"); 840 } else { 841 $(".gform-kitchen-sink-template_upload").removeClass("hidden"); 842 $(".gform-kitchen-sink-template_id").addClass("hidden"); 843 } 845 844 }) 845 $("body").on("change", "#pdf_creator_conditional_logic", function (e) { 846 if ($(this).is(":checked")) { 847 $(".yeepdf-popup-content").removeClass("hidden"); 848 } else { 849 $(".yeepdf-popup-content").addClass("hidden"); 850 } 851 }) 852 $("body").on("change", ".yeepdf_my_account_buttons", function (e) { 853 var value = $(this).val(); 854 if (value == "custom") { 855 $(".yeepdf_my_account_buttons_custom").removeClass("hidden"); 856 } else { 857 $(".yeepdf_my_account_buttons_custom").addClass("hidden"); 858 } 859 }) 860 }) 846 861 })(jQuery); -
pdf-for-forminator-forms/trunk/pdf/backend/src/script.js
r3436494 r3454325 18 18 return true; 19 19 } 20 console.log(datas); 20 21 $(".builder__list").html(""); 21 22 $(".email-builder-main").css(datas["container"]); … … 389 390 e.preventDefault(); 390 391 var attachment = $(this).closest(".grid-item").data("file"); 392 391 393 $.getJSON(attachment, function (data) { 392 394 $(".data_email").val(data); … … 443 445 var attachment = $(this).closest(".grid-item").data("file"); 444 446 $.getJSON(attachment, function (data) { 445 $(".data_email").val( JSON.stringify(data));447 $(".data_email").val(data); 446 448 $(".builder__list").html(""); 447 449 yeepdf_builder_main.json_to_builder();
Note: See TracChangeset
for help on using the changeset viewer.