Commit inicial - WordPress Análisis de Precios Unitarios

- WordPress core y plugins
- Tema Twenty Twenty-Four configurado
- Plugin allow-unfiltered-html.php simplificado
- .gitignore configurado para excluir wp-config.php y uploads

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
root
2025-11-03 21:04:30 -06:00
commit a22573bf0b
24068 changed files with 4993111 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
<select class="fr-input-line" id="fr-dropdown-shortcode-list">
<option value="" disabled selected hidden><?php echo __( 'Select an option', 'thrive-cb' ); ?></option>
<# _.each(shortcodes, shortcode => { #>
<optgroup label="<#= shortcode.option #>">
<# _.each(shortcode.input, function(input, key) { #>
<# _.each(input.value, function(option, option_key) { #>
<option data-name="<#= shortcode.option #>" data-field-value="<#= option_key #>"
data-extra-key="<#= shortcode.extra_param ? shortcode.extra_param : '' #>" value="<#= shortcode.value #>" <#= input.value_type? 'data-type="'+input.value_type[option_key]+'"':'' #>>
<#= input.labels && input.labels[ option ] ? input.labels[ option ] : option #>
</option>
<# }); #>
<# }); #>
</optgroup>
<# }); #>
</select>

View File

@@ -0,0 +1,5 @@
<span class="<#= shortcodeData.content_class #>" contenteditable="false"
data-shortcode="<#= shortcodeData.key #>"
data-shortcode-name="<#= shortcodeData.shortcodeName #>"
data-extra_key="<#= shortcodeData.extra_key #>"
<#= attributes.join( ' ' ) #>><#=shortcodeValue#></span>

View File

@@ -0,0 +1,24 @@
<div class="fr-link-insert-layer fr-layer fr-active">
<label for="fr-dropdown-categories-list"><?php echo __( 'Dynamic text', 'thrive-cb' ); ?></label>
<select class="fr-input-line" id="fr-dropdown-categories-list">
<option value="" disabled selected><?php echo __( 'Select source', 'thrive-cb' ); ?></option>
<# shortcodeCategories.forEach( category => { #>
<option value="<#= category #>"><#= utils.updatePostTypeLabel(category) #></option>
<# }); #>
</select>
<div class="tve-options-list-container"></div>
<div class="tve-custom-input-container"></div>
<div class="fr-action-buttons row between-xs reverse">
<button class="fr-command fr-submit" role="button" id="fr-shortcode-popup-action-button" data-cmd="shortcodeInsert" tabindex="5" type="button">
<?php echo __( 'Insert', 'thrive-cb' ); ?>
</button>
<button class="fr-command fr-danger fr-remove fr-hidden" role="button" data-cmd="shortcodeRemove" tabindex="6" type="button">
<?php echo __( 'Remove', 'thrive-cb' ); ?>
</button>
</div>
</div>

View File

@@ -0,0 +1,11 @@
<select class="fr-input-line" id="fr-dropdown-shortcode-list">
<option value="" disabled selected><?php echo __( 'Select an option', 'thrive-cb' ); ?></option>
<# _.each(shortcodes, shortcode => { #>
<option value="<#= shortcode.value #>"
data-name="<#= shortcode.option #>"
data-extra-key="<#= shortcode.extra_param ? shortcode.extra_param : '' #>">
<#= utils.updatePostTypeLabel(shortcode.option) #>
</option>
<# }); #>
</select>

View File

@@ -0,0 +1,22 @@
<#
const inputLabel = input.label ? utils.updatePostTypeLabel(input.label): '';
const phoneOption = input.available_for[0] == 2;
const emailOption = input.available_for[0] == 3;
#>
<#if(input.type == 'input'){#>
<label for="fr-dropdown-list-<#= key #>" class="tcb-shortcode-input"><#= inputLabel #></label>
<input type="text" name="<#= key #>" class="fr-custom-input <#= input.info? '': 'fr-input-line' #>" id="fr-dropdown-list-<#= key #>" value="<#= selectedValue? selectedValue:input.value #>"/>
<#}#>
<#if(input.type == 'checkbox'){#>
<label class="tcb-checkbox <#= input.info? '': 'fr-input-line' #>">
<input type="checkbox" name="<#= key #>" class="fr-custom-input" <#= selectedValue? 'checked="checked"' : '' #> value="1">
<span><#= input.label #></span>
</label>
<#if(phoneOption || emailOption){#>
<span class="click tcb-call-info ml-5" data-type="help" data-url="email_phone_dynamic_links" data-link="http://help.thrivethemes.com/en/articles/7150618-how-to-add-a-phone-or-email-dynamic-link" data-fn="openInstructionsLightbox">
<?php tcb_icon( 'info-circle-solid' ); ?>
</span>
<#}#>
<#}#>

View File

@@ -0,0 +1,44 @@
<# _.each(shortcode.input, function(input, key) { #>
<#
const inputLabel = input.label ? utils.updatePostTypeLabel(input.label): '';
let selectedOption, selectedValue = false;
if ( selectedData.configOptions ) {
selectedOption = selectedData.configOptions.find( config => config.key === key );
selectedValue = typeof selectedOption === 'undefined' ? false : selectedOption.value;
}
#>
<#if(input.type == 'select'){#>
<label for="fr-dropdown-list-<#= key #>" class="tcb-select-label"><#= inputLabel #> </label>
<select name="<#= key #>" class="fr-custom-input <#= input.info? '': 'fr-input-line' #>" id="fr-dropdown-list-<#= key #>">
<# _.each(input.value, function(option, option_key) { #>
<option value="<#= option_key #>"
<#= selectedValue == option_key? 'selected="selected"':'' #><#= input.value_type? 'data-type="'+input.value_type[option_key]+'"':'' #>>
<#= input.labels && input.labels[ option ] ? TVE.trimStringAfterWidth(input.labels[ option ]) : TVE.trimStringAfterWidth(option) #>
</option>
<# }); #>
</select>
<#}#>
<#if(input.type == 'input'){#>
<label for="fr-dropdown-list-<#= key #>" class="tcb-shortcode-input"><#= inputLabel #></label>
<input type="text" name="<#= key #>" class="fr-custom-input <#= input.info? '': 'fr-input-line' #>" id="fr-dropdown-list-<#= key #>" value="<#= selectedValue? selectedValue:input.value #>"/>
<#}#>
<#if(input.type == 'hidden'){#>
<input type="hidden" name="<#= key #>" class="fr-custom-input <#= input.info? '': 'fr-input-line' #>" id="fr-dropdown-list-<#= key #>" value="<#= selectedValue? selectedValue:input.value #>"/>
<#}#>
<#if(input.type == 'checkbox'){#>
<label class="tcb-checkbox fr-dropdown-list-<#= key #> <#= input.info? '': 'fr-input-line' #> mr-10">
<input type="checkbox" name="<#= key #>" class="fr-custom-input" <#= parseInt(selectedValue) || ( isNew && input.value) ? 'checked="checked"' : '' #> value="1">
<span><#= inputLabel #></span>
</label>
<#= input.disable_br ? '':'<br>' #>
<#}#>
<# }); #>
<div class="tve-custom-input-extra-options"></div>