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,15 @@
<div class="conditional-display-wrapper">
<div class="current-display"><#= name #></div>
<div class="conditional-display-list" style="display:none"></div>
<div class="tcb-i-wrapper">
<div class="click tcb-i" data-fn="toggleDisplayDropdown"><#= dropdownIcon #></div>
<div class="click tcb-i" data-key="" data-fn="resetDisplay"><#= resetIcon #></div>
<div class="click tcb-i" data-key="" data-fn="toggleVisibility"><#= visibilityIcon #><#= hiddenIcon #></div>
<div class="click tcb-i" data-key="" data-fn="duplicateDisplay"><#= duplicateIcon #></div>
<div class="click tcb-i" data-key="" data-fn="openConditionsModal"><#= openModalIcon #></div>
</div>
</div>
<div class="click tcb-i conditional-display-small" data-fn="toggleSmallOptions"><#= smallOptionsIcon #></div>

View File

@@ -0,0 +1,51 @@
<div class="display-item click mouseenter <#= display.isActive()? 'active':'' #>" data-key="<#= display.getKey() #>" data-fn-click="activateDisplay" data-fn-mouseenter="hoverDisplay">
<?php tcb_icon( 'dots2' ); ?>
<div class="display-name-wrapper">
<span class="display-name" data-key="<#= display.getKey() #>"><#= display.name() #></span>
<# if(!display.isDefault()) { #>
<span class="display-index"><#= display.get( 'order' ) + 1 #>.</span>
<button class="click" data-fn="editDisplayName" data-key="<#= display.getKey() #>" data-side="top" data-tooltip="Edit"><?php tcb_icon( 'pen-light' ); ?></button>
<# } #>
</div>
<div class="display-actions-wrapper">
<# if(!display.isDefault()) { #>
<button class="click" data-fn="resetDisplay" data-key="<#= display.getKey() #>" data-side="top" data-tooltip="Reset"><?php tcb_icon( 'undo-regular' ); ?></button>
<# } #>
<# if(display.isDefault() && hasDisplays) { #>
<button class="click" data-fn="toggleVisibility" data-key="<#= display.getKey() #>" data-side="top" data-tooltip="Visibility">
<# if(display.isVisible()) { #>
<?php tcb_icon( 'eye-light' ); ?>
<# } else { #>
<?php tcb_icon( 'eye-light-slash' ); ?>
<# } #>
</button>
<# } #>
<button class="click" data-fn="duplicateDisplay" data-key="<#= display.getKey() #>" data-side="top" data-tooltip="Duplicate"><?php tcb_icon( 'duplicate' ); ?></button>
<# if(!display.isDefault()) { #>
<button class="click<#= display.hasConditions() ? '':' conditions-warning'#>"
data-fn="openConditionsModal"
data-key="<#= display.getKey() #>"
data-side="top" data-tooltip-config='{"warning":<#= display.hasConditions() ? 0:1#>}' data-tooltip="<#= display.hasConditions() ? 'Conditions':'Display conditions are not set'#>">
<?php tcb_icon( 'control-switch' ); ?>
</button>
<# } #>
<# if(!display.isDefault() && !display.isActive()) { #>
<button class="click additional-actions" data-fn="openActionsTooltip"><?php tcb_icon( 'three-dots' ); ?></button>
<# } #>
<div class="hidden additional-actions-tooltip">
<div class="click additional-action" data-fn="removeDisplay" data-key="<#= display.getKey() #>">
<?php tcb_icon( 'trash-light' );
echo esc_html__( 'Delete', 'thrive-cb' ); ?>
</div>
</div>
</div>
<# if(!display.isDefault() && !display.hasConditions()) { #>
<span class="no-conditions"><?php tcb_icon( 'warning' ); ?></span>
<# } #>
</div>

View File

@@ -0,0 +1 @@
<select id="tcb-condition-display-autocomplete"></select>

View File

@@ -0,0 +1,4 @@
<li class="select2-selection__choice">
<span class="select2-selection__choice__remove" role="presentation" data-value="<#= data.value #>">×</span>
<span class="select2-title"><#= data.label #></span>
</li>

View File

@@ -0,0 +1,4 @@
<select class="change" data-fn="selectChanged">
<option value="1"><?php echo esc_html__( 'True', 'thrive-cb' ) ?></option>
<option value="0"><?php echo esc_html__( 'False', 'thrive-cb' ) ?></option>
</select>

View File

@@ -0,0 +1 @@
<div class="tcb-condition-checkbox-list"></div>

View File

@@ -0,0 +1,4 @@
<div class="tcb-condition-date-time-container">
<div class="tcb-condition-date-time"></div>
<div class="tcb-condition-date-picker"></div>
</div>

View File

@@ -0,0 +1,2 @@
<input class="tcb-condition-input change" type="number" data-fn="inputChanged" min="<#= this.minInterval #>" max="<#= this.maxInterval #>">
<div class="tcb-interval-select tcb-conditional-display-select"></div>

View File

@@ -0,0 +1,4 @@
<input type="text" class="tcb-condition-datepicker-input change" data-fn="changeDate">
<div class="tcb-condition-datepicker-icon click" data-fn="openDatePicker">
<?php tcb_icon( 'calendar-range' ); ?>
</div>

View File

@@ -0,0 +1 @@
<div class="tcb-dropdown-container tcb-conditional-display-select"></div>

View File

@@ -0,0 +1 @@
<input class="tcb-condition-input change" data-fn="inputChanged" placeholder="<#= this.placeholderText #>">

View File

@@ -0,0 +1 @@
<input class="tcb-condition-input change" type="number" data-fn="inputChanged" step="1" min="<#= this.min #>" max="<#= this.max #>" >

View File

@@ -0,0 +1 @@
<div class="tcb-operator-select tcb-conditional-display-select"></div>

View File

@@ -0,0 +1 @@
<input class="tcb-condition-input input" data-fn="stringNameChanged" placeholder="variable name">

View File

@@ -0,0 +1,2 @@
<div class="tcb-condition-string-compare-select tcb-conditional-display-select"></div>
<input class="tcb-condition-input tcb-condition-string-value change" data-fn="stringValueChanged" placeholder="value">

View File

@@ -0,0 +1,2 @@
<input class="tcb-condition-input-hour input" type="number" data-fn="hourChanged" min="<#= this.minHours #>" max="<#= this.maxHours #>">
<input class="tcb-condition-input-minute input" type="number" data-fn="minuteChanged" min="<#= this.minMinutes #>" max="<#= this.maxMinutes #>">

View File

@@ -0,0 +1,3 @@
<a href="<?php echo admin_url( 'options-general.php' ) ?>" target="_blank" class="tcb-condition-input-timezone">
UTC+<?php echo get_option( 'gmt_offset' ) ?>
</a>

View File

@@ -0,0 +1,24 @@
<div class="tcb-conditional-display-title">
<span class="tcb-conditional-title-text"><?php echo esc_html__( 'Display conditions', 'thrive-cb' ); ?></span>
<span><?php echo esc_html__( 'for', 'thrive-cb' ); ?></span>
<span class="tcb-conditional-current-display"></span>
</div>
<div class="tcb-conditional-display-setting-select-container">
<div class="tcb-conditional-display-select"></div>
</div>
<div class="tcb-condition-set-list"></div>
<div class="tcb-condition-set-action-buttons" style="display:flex;flex-direction:row;">
<button class="tcb-condition-new-set click green-text" data-fn="addSet">
<?php tcb_icon( 'plus-regular' );
echo esc_html__( 'New condition set', 'thrive-cb' ); ?>
</button>
<button class="tcb-condition-select-existing-set green-text">
<?php tcb_icon( 'search-regular' );
echo esc_html__( 'Select an existing condition set', 'thrive-cb' ); ?>
<div class="tcb-condition-select-arrow"></div>
<div class="tcb-condition-set-select2-container"></div>
</button>
</div>

View File

@@ -0,0 +1 @@
<div class="tcb-entity-select tcb-conditional-display-select"></div>

View File

@@ -0,0 +1 @@
<div class="tcb-field-select tcb-conditional-display-select"></div>

View File

@@ -0,0 +1,19 @@
<p class="tcb-condition-connector-label"><#= this.index ? 'and': 'When' #></p>
<div class="tcb-condition-wrapper">
<div class="tcb-condition-entity tcb-condition-item"></div>
<div class="tcb-condition-field tcb-condition-item"></div>
<div class="tcb-condition-key tcb-condition-item"></div>
<div class="tcb-condition-compared-value tcb-condition-item"></div>
<div class="tcb-condition-comparator-extra-container hidden"></div>
<div class="tcb-condition-gray-overlay"></div>
</div>
<button class="tcb-condition-delete-rule click" data-fn="openRuleDeleteOverlay"><?php tcb_icon( 'trash-light' ); ?></button>
<div class="tcb-condition-delete-rule-overlay hidden">
<span><?php echo esc_html__( 'Are you sure you want to delete this rule?', 'thrive-cb' ); ?></span>
<div class="tcb-delete-actions">
<button class="click" data-fn="closeDeleteOverlay"><?php echo esc_html__( 'No, Cancel', 'thrive-cb' ); ?></button>
<button class="click" data-fn="deleteRule"><?php echo esc_html__( 'Yes, Delete', 'thrive-cb' ); ?></button>
</div>
</div>

View File

@@ -0,0 +1,2 @@
<span class="default-value click" data-fn="selectToggle"></span>
<ul></ul>

View File

@@ -0,0 +1,94 @@
<div class="tcb-condition-set-wrapper">
<div class="tcb-condition-global-during-edit edit-set-title hidden">
<?php echo esc_html__( 'Edit Global Conditions Set', 'thrive-cb' ); ?>
</div>
<div class="tcb-condition-global-edit-warning hidden">
<?php tcb_icon( 'info-circle-solid' ); ?>
<div class="tcb-condition-global-edit-wrapper">
<div class="tcb-condition-notice-title"><?php echo esc_html__( 'Edit Global Conditions Set', 'thrive-cb' ); ?></div>
<div class="tcb-condition-global-notice-text">
<?php echo esc_html__( 'You are about to edit a Global Condition Set. Any updates to the condition set will impact all the display views where you applied it. Do you want to continue?', 'thrive-cb' ); ?>
</div>
<div class="tcb-condition-global-notice-buttons">
<button class="tcb-condition-global-edit-cancel click" data-fn="closeEditWarning"><?php echo esc_html__( 'NO, CANCEL', 'thrive-cb' ); ?></button>
<button class="tcb-condition-global-edit-remove click" data-fn="editSet"><?php echo esc_html__( 'YES, EDIT AS GLOBAL SET', 'thrive-cb' ); ?></button>
</div>
</div>
</div>
<div class="tcb-condition-set-upper-row">
<div class="tcb-condition-set-label">
<span class="tcb-condition-label"><#= this.model.get( 'label' ) #></span>
<span class="tcb-condition-edit click" data-fn="showRename"><?php tcb_icon( 'pen-regular' ); ?></span>
<span class="tcb-condition-rename click" data-fn="renameSet"><?php tcb_icon( 'check-light' ); ?></span>
</div>
<div class="tcb-condition-set-actions">
<button class="tcb-condition-option-save click" data-fn="saveGlobalSet" data-tooltip="Global condition sets can be reused and updated across your website" data-position="top">
<?php tcb_icon( 'globe-americas-solid' ); ?>
<span>
<?php echo esc_html__( 'Save as global', 'thrive-cb' ); ?>
</span>
</button>
<span class="tcb-condition-set-global-icon" data-tooltip="Global condition set" data-position="top">
<?php tcb_icon( 'globe-americas-solid' ); ?>
</span>
<button class="tcb-condition-set-button click" data-fn="openSetTooltip">
<?php tcb_icon( 'three-dots' ); ?>
</button>
<div class="tcb-condition-set-tooltip hidden">
<button class="tcb-condition-option-unlink click" data-fn="unlinkGlobalSet">
<?php tcb_icon( 'unlink-light' ); ?>
<?php echo esc_html__( 'Unlink from global condition set', 'thrive-cb' ); ?>
</button>
<button class="tcb-condition-option-edit click" data-fn="openEditWarning">
<?php tcb_icon( 'pen-light' ); ?>
<?php echo esc_html__( 'Edit global condition set', 'thrive-cb' ); ?>
</button>
<button class="tcb-condition-option-delete click" data-fn="beforeSetDelete">
<?php tcb_icon( 'trash-light' ); ?>
<span class="tcb-delete-text">
<?php echo esc_html__( 'Delete condition set', 'thrive-cb' ); ?>
</span>
</button>
</div>
</div>
</div>
<div class="tcb-condition-set-rule-container"></div>
<button class="tcb-condition-set-add-rule-button click green-text" data-fn="addRule"><?php echo esc_html__( '+ Add rule', 'thrive-cb' ); ?></button>
<div class="tcb-condition-delete-overlay hidden">
<div class="tcb-condition-delete-overlay-wrapper">
<?php tcb_icon( 'exclamation-triangle' ); ?>
<div class="tcb-condition-delete-wrapper">
<div class="tcb-condition-notice-title global"><?php echo esc_html__( 'Delete Global Set', 'thrive-cb' ); ?></div>
<div class="tcb-condition-notice-title regular"><?php echo esc_html__( 'Delete Set', 'thrive-cb' ); ?></div>
<div class="tcb-condition-delete-text-global">
<?php echo esc_html__( 'You are about to delete a Global condition set. The ', 'thrive-cb' ); ?>
<strong class="tcb-condition-set-name"></strong>
<?php echo esc_html__( 'condition set will be permanently removed from everywhere. Do you want to continue?', 'thrive-cb' ); ?>
</div>
<div class="tcb-condition-delete-text-regular">
<?php echo esc_html__( 'You are about to delete the', 'thrive-cb' ); ?>
<strong class="tcb-condition-set-name"></strong>
<?php echo esc_html__( 'condition set. Do you want to continue?', 'thrive-cb' ); ?>
</div>
<div class="tcb-condition-global-notice-buttons">
<button class="tcb-condition-global-delete-cancel click" data-fn="closeDeleteOverlay"><?php echo esc_html__( 'NO, CANCEL', 'thrive-cb' ); ?></button>
<button class="tcb-condition-global-delete-remove click" data-fn="deleteSet"><?php echo esc_html__( 'YES, DELETE', 'thrive-cb' ); ?></button>
</div>
</div>
</div>
</div>
<div class="tcb-condition-global-during-edit edit-set-buttons hidden">
<button class="tcb-condition-global-edit-cancel click" data-fn="cancelEditing"><?php echo esc_html__( 'CANCEL', 'thrive-cb' ); ?></button>
<button class="tcb-condition-global-edit-remove click" data-fn="saveGlobalEdit"><?php echo esc_html__( 'SAVE', 'thrive-cb' ); ?></button>
</div>
</div>
<div class="tcb-condition-modal-divider">
<?php echo esc_html__( 'or', 'thrive-cb' ); ?>
</div>

View File

@@ -0,0 +1,8 @@
<li class="cdg-display-item<#= isVisible ? '' : ' not-visible'#>" data-display-key="<#= displayKey #>" data-display-group="<#= groupKey #>">
<button class="click cdg-display" data-display-key="<#= displayKey #>" data-display-group="<#= groupKey #>" data-fn="<#= isVisible ? 'locateElement' : 'setDisplayActive'#>">
<#= displayName #>
<#= isVisible ? TVE.icon( 'crosshairs-regular' ):'' #>
</button>
<ul class="nested-cdg"><#= nestedGroups #></ul>
</li>

View File

@@ -0,0 +1,13 @@
<li class="cdg-item mb-5 mt-5 level-<#= level #><#= isVisible ? '' : ' not-visible'#>">
<div class="cdg-info">
<div class="cdg-el-icon"><#= icon #></div>
<div>
<div class="cdg-el-name"><#= name #></div>
<div class="cdg-displays-number">
<#= numberOfDisplays#>
<?php echo esc_html__( 'displays', 'thrive-cb' ); ?>
</div>
</div>
</div>
<ul class="cdg-displays"><#= displaysHtml #></ul>
</li>