Changeset 3400794
- Timestamp:
- 11/22/2025 05:07:32 AM (2 months ago)
- Location:
- avif-local-support
- Files:
-
- 6 edited
- 1 copied
-
tags/0.2.5 (copied) (copied from avif-local-support/trunk)
-
tags/0.2.5/assets/admin.js (modified) (1 diff)
-
tags/0.2.5/includes/class-avif-suite.php (modified) (1 diff)
-
tags/0.2.5/includes/class-converter.php (modified) (1 diff)
-
trunk/assets/admin.js (modified) (1 diff)
-
trunk/includes/class-avif-suite.php (modified) (1 diff)
-
trunk/includes/class-converter.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
avif-local-support/tags/0.2.5/assets/admin.js
r3398244 r3400794 230 230 // Logs functionality 231 231 var refreshLogsBtn = document.querySelector('#avif-local-support-refresh-logs'); 232 var copyLogsBtn = document.querySelector('#avif-local-support-copy-logs'); 232 233 var clearLogsBtn = document.querySelector('#avif-local-support-clear-logs'); 233 234 var logsSpinner = document.querySelector('#avif-local-support-logs-spinner'); 234 235 var logsContent = document.querySelector('#avif-local-support-logs-content'); 236 var copyStatus = document.querySelector('#avif-local-support-copy-status'); 237 238 if (copyLogsBtn && logsContent) { 239 copyLogsBtn.addEventListener('click', function () { 240 var text = logsContent.innerText; 241 if (navigator.clipboard && window.isSecureContext) { 242 navigator.clipboard.writeText(text).then(function () { 243 showCopyStatus(); 244 }, function () { 245 fallbackCopy(text); 246 }); 247 } else { 248 fallbackCopy(text); 249 } 250 }); 251 } 252 253 function fallbackCopy(text) { 254 var ta = document.createElement('textarea'); 255 ta.value = text; 256 ta.style.position = 'fixed'; 257 ta.style.left = '-9999px'; 258 document.body.appendChild(ta); 259 ta.focus(); 260 ta.select(); 261 try { 262 document.execCommand('copy'); 263 showCopyStatus(); 264 } catch (e) {} 265 document.body.removeChild(ta); 266 } 267 268 function showCopyStatus() { 269 if (!copyStatus) return; 270 copyStatus.style.display = 'inline'; 271 setTimeout(function () { 272 copyStatus.style.display = 'none'; 273 }, 2000); 274 } 235 275 236 276 if (refreshLogsBtn && typeof AVIFLocalSupportData !== 'undefined') { -
avif-local-support/tags/0.2.5/includes/class-avif-suite.php
r3400792 r3400794 572 572 echo ' <div style="display:flex;align-items:center;gap:8px;margin-bottom:10px;">'; 573 573 echo ' <button type="button" class="button" id="avif-local-support-refresh-logs">' . esc_html__('Refresh logs', 'avif-local-support') . '</button>'; 574 echo ' <button type="button" class="button" id="avif-local-support-copy-logs">' . esc_html__('Copy logs', 'avif-local-support') . '</button>'; 574 575 echo ' <button type="button" class="button" id="avif-local-support-clear-logs">' . esc_html__('Clear logs', 'avif-local-support') . '</button>'; 575 576 echo ' <span class="spinner" id="avif-local-support-logs-spinner" style="float:none;margin:0 6px;"></span>'; 577 echo ' <span id="avif-local-support-copy-status" class="description" style="color:#00a32a;display:none;">' . esc_html__('Copied!', 'avif-local-support') . '</span>'; 576 578 echo ' </div>'; 577 579 echo ' <div id="avif-local-support-logs-container">'; -
avif-local-support/tags/0.2.5/includes/class-converter.php
r3400792 r3400794 217 217 . ($this->lastCliCommand !== '' ? ' cmd: ' . $this->lastCliCommand : '') 218 218 . ($snippet !== '' ? ' output: ' . $snippet : ''); 219 220 // If no specific error message but failed, add a generic one to ensure log visibility 221 if ($err === 'CLI conversion failed (exit 0)') { 222 $err .= '. Resulting file missing or empty.'; 223 } 219 224 220 225 // Analyze CLI error for suggestions -
avif-local-support/trunk/assets/admin.js
r3398244 r3400794 230 230 // Logs functionality 231 231 var refreshLogsBtn = document.querySelector('#avif-local-support-refresh-logs'); 232 var copyLogsBtn = document.querySelector('#avif-local-support-copy-logs'); 232 233 var clearLogsBtn = document.querySelector('#avif-local-support-clear-logs'); 233 234 var logsSpinner = document.querySelector('#avif-local-support-logs-spinner'); 234 235 var logsContent = document.querySelector('#avif-local-support-logs-content'); 236 var copyStatus = document.querySelector('#avif-local-support-copy-status'); 237 238 if (copyLogsBtn && logsContent) { 239 copyLogsBtn.addEventListener('click', function () { 240 var text = logsContent.innerText; 241 if (navigator.clipboard && window.isSecureContext) { 242 navigator.clipboard.writeText(text).then(function () { 243 showCopyStatus(); 244 }, function () { 245 fallbackCopy(text); 246 }); 247 } else { 248 fallbackCopy(text); 249 } 250 }); 251 } 252 253 function fallbackCopy(text) { 254 var ta = document.createElement('textarea'); 255 ta.value = text; 256 ta.style.position = 'fixed'; 257 ta.style.left = '-9999px'; 258 document.body.appendChild(ta); 259 ta.focus(); 260 ta.select(); 261 try { 262 document.execCommand('copy'); 263 showCopyStatus(); 264 } catch (e) {} 265 document.body.removeChild(ta); 266 } 267 268 function showCopyStatus() { 269 if (!copyStatus) return; 270 copyStatus.style.display = 'inline'; 271 setTimeout(function () { 272 copyStatus.style.display = 'none'; 273 }, 2000); 274 } 235 275 236 276 if (refreshLogsBtn && typeof AVIFLocalSupportData !== 'undefined') { -
avif-local-support/trunk/includes/class-avif-suite.php
r3400792 r3400794 572 572 echo ' <div style="display:flex;align-items:center;gap:8px;margin-bottom:10px;">'; 573 573 echo ' <button type="button" class="button" id="avif-local-support-refresh-logs">' . esc_html__('Refresh logs', 'avif-local-support') . '</button>'; 574 echo ' <button type="button" class="button" id="avif-local-support-copy-logs">' . esc_html__('Copy logs', 'avif-local-support') . '</button>'; 574 575 echo ' <button type="button" class="button" id="avif-local-support-clear-logs">' . esc_html__('Clear logs', 'avif-local-support') . '</button>'; 575 576 echo ' <span class="spinner" id="avif-local-support-logs-spinner" style="float:none;margin:0 6px;"></span>'; 577 echo ' <span id="avif-local-support-copy-status" class="description" style="color:#00a32a;display:none;">' . esc_html__('Copied!', 'avif-local-support') . '</span>'; 576 578 echo ' </div>'; 577 579 echo ' <div id="avif-local-support-logs-container">'; -
avif-local-support/trunk/includes/class-converter.php
r3400792 r3400794 217 217 . ($this->lastCliCommand !== '' ? ' cmd: ' . $this->lastCliCommand : '') 218 218 . ($snippet !== '' ? ' output: ' . $snippet : ''); 219 220 // If no specific error message but failed, add a generic one to ensure log visibility 221 if ($err === 'CLI conversion failed (exit 0)') { 222 $err .= '. Resulting file missing or empty.'; 223 } 219 224 220 225 // Analyze CLI error for suggestions
Note: See TracChangeset
for help on using the changeset viewer.