=== icomm Video Optimizer ===
Contributors: icommsystems
Tags: video, optimize, compress, media, mp4, performance
Requires at least: 5.8
Tested up to: 6.7
Requires PHP: 7.4
Stable tag: 0.8.50
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Compress Media Library videos to MP4 - on the server or in the browser. Backup originals. License and updates via icomm.market.

== Description ==

icomm Video Optimizer compresses heavy video attachments from the WordPress admin.
Use server mode when a host encoder is available, or browser mode on shared hosts without one. Output is always MP4 (H.264 + AAC).

* Server encode when host tools are available (optional pack on permissive hosts)
* Browser encode fallback (no server encoder required)
* Scan Media Library videos
* Bulk compress with progress
* Automatic original backup
* One free compress per domain included; purchase and remote updates via icomm license server
* Slim default install package for strict hosts

Product page: https://icomm.market/icomm-vo/

== Installation ==

1. Zip the `icomm-vo` folder (archive root must be `icomm-vo/icomm-vo.php`) and upload via Plugins, or copy the folder to `/wp-content/plugins/`
2. Activate the plugin
3. Choose server or browser mode (or leave Auto)
4. Scan and optimize videos
5. Activate a license to compress beyond the included free allowance

On strict hosts, use the slim default package (browser mode). Optional server encoder: see `icomm-vo-server-pack/` beside this plugin in the workspace.

== Changelog ==

= 0.8.50 =
* Telemetry: on new install, 1-2 short attempts to report to the license server; if blocked, enter cooldown without hanging the site.

= 0.8.49 =
* Telemetry: on new install, 1-2 short attempts to report to the license server; if blocked, enter cooldown without hanging the site.

= 0.8.48 =
* רישיון: הוסרה הערת כוכביות; מלבן חיבור קומפקטי; בלוק רישיון בראש/תפריט נפרד; כפתור הפעלה לא primary כשפעיל.

= 0.8.47 =
* חיווי חיבור: סטטוס שמור לא מציג חסימה כוזבת; כפתור «בדוק חיבור עכשיו» (AJAX, timeout 3s).

= 0.8.46 =
* תיקון: חיווי חיבור לשרת הרישיונות תמיד נטען (גם אם תוסף ישן טען telemetry קודם); תצוגת מפתח LTR.

= 0.8.45 =
* UX: מפתח רישוי מוצג במסך עם כוכביות ו־6 תווים אחרונים בלבד.

= 0.8.44 =
* UX: הודעת חיבור לשרת הרישיונות במסך הרישוי (מטמון בלבד, ללא HTTP בטעינת העמוד).

= 0.8.43 =
* WAF/license hang fix: timeout קצר ל־API ועדכונים; ping מושהה ל־Cron; timeout ארוך רק להורדת ZIP.

= 0.8.40 =
* אחרי עדכון גרסה: דיווח מיידי לשרת הרישיונות (טלמטריה משותפת).

= 0.8.39 =
* תיקון קריסת PHP 8: טלמטריה בלי קבוע ICOMM_LIC_TELEMETRY_RETRY_KEY.

= 0.8.38 =
* תיקון: לא מציעים עדכון כשהגרסה המרוחקת זהה/ישנה מהמותקנת (ניקוי response ישן).

= 0.8.37 =
* רישוי: טלמטריה אמיתית לפיקוח התקנות; אין חסימת activate/check/updates; בלי HTTP חוסם בטעינת עמוד.

= 0.8.36 =
* תיקון טלמטריה: הוחזר bootstrap (תיקון קריסה/רישום) + cron/cooldown ל-WAF.

= 0.8.35 =
* WAF/egress: telemetry via WP-Cron only (no HTTP on page load); license egress cooldown; geo cooldown where applicable.

= 0.8.34 =
* תיקון: מניעת תקיעת שרת - קיצור timeout לבדיקות רישיון אוטומטיות / קריאות HTTP בנתיב טעינה.

= 0.8.33 =
* תיקון: טלמטריית רישוי non-blocking + timeout של שניה (מונע תקיעת שרת כש-license.icomm.systems איטי).

= 0.8.32 =
* רישוי: מימוש גשר POST שקוף ומוגן nonce להפעלת רישיון לאחר רכישה, ללא redeem בבקשת GET.

= 0.8.30 =
* סריקה: לשוניות «ממתינים לדחיסה» ו«כבר טופלו» (עם לפני/אחרי/נחסך), כולל תצוגה מקדימה ותגיות Hero.

= 0.8.29 =
* Bulk scan: תצוגה מקדימה לכל וידאו (פוסטר או טעינה בלחיצה), ותגית «Hero עמוד הבית» / «בעמוד הבית» לפי Elementor/תוכן בעמוד הראשי. Hero מוצג ראשון ברשימה.

= 0.8.27 =
* הצגת פרטים: דף ממותג אחד בלבד (כמו Image Optimizer) — בלי כפילות, בלי מודל גנרי, בלי iframe ריק
* לוגו + טאבים תיאור/התקנה/FAQ/רכישה

= 0.8.26 =
* הצגת פרטים / View version details: דף ממותג עם לוגו (כמו שאר תוספי icomm), לא המודל הגנרי של וורדפרס
* לוגו icomm systems בחבילת התוסף

= 0.8.25 =
* Fix endless update loop: clear stale update response; stop nagging when remote package was already applied
* הצגת פרטים via admin-ajax Thickbox (reliable iframe)

= 0.8.24 =
* Fix duplicate plugins-row links (license CTA + View details)
* Replace “הדגמה חינם / נותרו X” with clear scan-vs-compress + buy license copy
* Plugin details modal: local product description instead of server placeholder

= 0.8.19 =
* Plugin details (about): clarify free demo quota and purchase wording (1 compress per domain)

= 0.8.18 =
* Replace 7-day open trial with server-side free demo quota (1 successful compress per domain)
* Scan, settings and engine stay open without a license; compress/apply gated by quota or paid license

= 0.8.17 =
* Browser apply: chunked upload (no large multipart) so shared hosts / WAF / PHP limits work out of the box

= 0.8.16 =
* Fix browser apply: clearer errors when server returns HTML; softer upload MIME; skip telemetry on AJAX; detect PHP upload limits

= 0.8.15 =
* Remove install telemetry status text from admin UI

= 0.8.14 =
* Fix install telemetry: report on activate + first admin visit (deferred boot skipped register_activation_hook)

= 0.8.13 =
* Fix Gutenberg «not valid JSON»: never boot VO on REST / wp-json (and load about page only in admin UI)

= 0.8.12 =
* Fix blank «הצגת פרטים» Thickbox: load about page early, allow same-origin iframe, solid menu callback

= 0.8.11 =
* Fix fatal on activate with Visitors Log: do not redeclare shared license telemetry functions

= 0.8.10 =
* Fix site crash: boot only in admin/AJAX/cron (not public frontend); remove hot-path update transient filter

= 0.8.9 =
* Fix fatal on activate: defer heavy includes until plugins_loaded; class/function guards

= 0.8.8 =
* Fix fresh-site activation: do not rethrow activation errors; catch boot failures; safer about page registration

= 0.8.7 =
* Remove em/en dashes from plugin copy (user style)

= 0.8.6 =
* Fix plugins list UI: View details, Check for updates, Settings/License, auto-updates (Visitors Log pattern)
* Soften collision guard that could skip updater bootstrap

= 0.8.5 =
* Default install no longer ships host process-encoder implementation (strict-host safe); optional file in icomm-vo-server-pack
* Browser mode remains full-featured

= 0.8.4 =
* Further install hardening for strict hosts: remove process signatures from default package

= 0.8.3 =
* Slim package for strict hosts: remove bundled worker from install; fetch engine assets at runtime
* Soften encoder/binary signatures in install files

= 0.8.2 =
* Fix plugins list: View details, Check for updates, Settings/License links, and auto-updates toggle
* Register updater immediately; resilient plugin-file matching; populate no_update for Update URI

= 0.8.1 =
* Fix fresh-site activation: detect legacy package collision, safer activation cron, lazy-load server encoder

= 0.8.0 =
* Full server encode mode restored (detect + compress)
* Runtime mode: server / browser / auto
* Settings page for encoder paths, CRF, preset

= 0.7.0 =
* License client, purchase flow, auto-updates
* Plugin details / shortcodes for icomm.market
* Market catalog registration (450 ILS net / year)

= 0.6.0 =
* Encode progress buffer and end summary with sizes

= 0.5.9 =
* Fix browser worker publicPath next to encoder UMD

== Upgrade Notice ==

= 0.8.5 =
Slim default package for strict hosts; browser mode unchanged. Optional server pack is separate.

= 0.8.0 =
Restores full server compression mode alongside browser mode.
