Changeset 3147978
- Timestamp:
- 09/07/2024 12:03:10 PM (19 months ago)
- Location:
- image-type-converter/trunk
- Files:
-
- 79 added
- 26 edited
-
assets/dist/js/admin/img-converter-metabox.min.js (modified) (1 diff)
-
assets/dist/js/admin/quick-image-converter.min.js.LICENSE.txt (added)
-
assets/libs/notice.min.css (modified) (1 diff)
-
gpls-wicor-image-converter.php (modified) (1 diff)
-
includes/ImageConverter.php (modified) (1 diff)
-
includes/ImageOptimizer.php (added)
-
includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php (added)
-
includes/MetaBoxes/ImgConverterMetaBox.php (modified) (9 diffs)
-
includes/MetaBoxes/ImgOptimizerMetaBox.php (added)
-
includes/MetaBoxes/ImgSubsizesMetaBox.php (modified) (3 diffs)
-
includes/MetaBoxes/MetaBoxesBase/metaboxesList.php (modified) (2 diffs)
-
includes/OptimizerLogger.php (added)
-
includes/Pages/PagesBase/AdminPage.php (modified) (1 diff)
-
includes/Pages/SettingsPage.php (modified) (2 diffs)
-
includes/Plugin.php (modified) (2 diffs)
-
includes/QuickImageConverter.php (modified) (8 diffs)
-
includes/Settings/Fields/settings-fields.php (modified) (2 diffs)
-
includes/Templates/metaboxes/img-optimization-history-metabox-template.php (added)
-
includes/Templates/metaboxes/img-optimizer-metabox-template.php (added)
-
includes/Templates/metaboxes/img-subsizes-list-metabox-template.php (modified) (2 diffs)
-
includes/Templates/pages/auto-optimize-template.php (added)
-
includes/Templates/pages/bulk-optimize-template.php (added)
-
includes/Templates/pages/status-template.php (modified) (3 diffs)
-
includes/Utils/GeneralUtilsTrait.php (modified) (1 diff)
-
includes/Utils/Img/ImgUtilsTrait.php (modified) (3 diffs)
-
languages/image-type-converter.pot (modified) (9 diffs)
-
readme.txt (modified) (2 diffs)
-
vendor/autoload.php (modified) (1 diff)
-
vendor/composer/ClassLoader.php (modified) (24 diffs)
-
vendor/composer/InstalledVersions.php (added)
-
vendor/composer/autoload_classmap.php (modified) (3 diffs)
-
vendor/composer/autoload_files.php (modified) (1 diff)
-
vendor/composer/autoload_namespaces.php (modified) (1 diff)
-
vendor/composer/autoload_psr4.php (modified) (1 diff)
-
vendor/composer/autoload_real.php (modified) (2 diffs)
-
vendor/composer/autoload_static.php (modified) (4 diffs)
-
vendor/composer/installed.json (added)
-
vendor/composer/installed.php (added)
-
vendor/psr (added)
-
vendor/psr/log (added)
-
vendor/psr/log/LICENSE (added)
-
vendor/psr/log/README.md (added)
-
vendor/psr/log/composer.json (added)
-
vendor/psr/log/src (added)
-
vendor/psr/log/src/AbstractLogger.php (added)
-
vendor/psr/log/src/InvalidArgumentException.php (added)
-
vendor/psr/log/src/LogLevel.php (added)
-
vendor/psr/log/src/LoggerAwareInterface.php (added)
-
vendor/psr/log/src/LoggerAwareTrait.php (added)
-
vendor/psr/log/src/LoggerInterface.php (added)
-
vendor/psr/log/src/LoggerTrait.php (added)
-
vendor/psr/log/src/NullLogger.php (added)
-
vendor/spatie (added)
-
vendor/spatie/image-optimizer (added)
-
vendor/spatie/image-optimizer/CHANGELOG.md (added)
-
vendor/spatie/image-optimizer/LICENSE (added)
-
vendor/spatie/image-optimizer/README.md (added)
-
vendor/spatie/image-optimizer/composer.json (added)
-
vendor/spatie/image-optimizer/src (added)
-
vendor/spatie/image-optimizer/src/DummyLogger.php (added)
-
vendor/spatie/image-optimizer/src/Image.php (added)
-
vendor/spatie/image-optimizer/src/Optimizer.php (added)
-
vendor/spatie/image-optimizer/src/OptimizerChain.php (added)
-
vendor/spatie/image-optimizer/src/OptimizerChainFactory.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Avifenc.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/BaseOptimizer.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Cwebp.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Gifsicle.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Jpegoptim.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Optipng.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Pngquant.php (added)
-
vendor/spatie/image-optimizer/src/Optimizers/Svgo.php (added)
-
vendor/spatie/image-optimizer/svgo.config.js (added)
-
vendor/symfony (added)
-
vendor/symfony/process (added)
-
vendor/symfony/process/CHANGELOG.md (added)
-
vendor/symfony/process/Exception (added)
-
vendor/symfony/process/Exception/ExceptionInterface.php (added)
-
vendor/symfony/process/Exception/InvalidArgumentException.php (added)
-
vendor/symfony/process/Exception/LogicException.php (added)
-
vendor/symfony/process/Exception/ProcessFailedException.php (added)
-
vendor/symfony/process/Exception/ProcessSignaledException.php (added)
-
vendor/symfony/process/Exception/ProcessTimedOutException.php (added)
-
vendor/symfony/process/Exception/RunProcessFailedException.php (added)
-
vendor/symfony/process/Exception/RuntimeException.php (added)
-
vendor/symfony/process/ExecutableFinder.php (added)
-
vendor/symfony/process/InputStream.php (added)
-
vendor/symfony/process/LICENSE (added)
-
vendor/symfony/process/Messenger (added)
-
vendor/symfony/process/Messenger/RunProcessContext.php (added)
-
vendor/symfony/process/Messenger/RunProcessMessage.php (added)
-
vendor/symfony/process/Messenger/RunProcessMessageHandler.php (added)
-
vendor/symfony/process/PhpExecutableFinder.php (added)
-
vendor/symfony/process/PhpProcess.php (added)
-
vendor/symfony/process/PhpSubprocess.php (added)
-
vendor/symfony/process/Pipes (added)
-
vendor/symfony/process/Pipes/AbstractPipes.php (added)
-
vendor/symfony/process/Pipes/PipesInterface.php (added)
-
vendor/symfony/process/Pipes/UnixPipes.php (added)
-
vendor/symfony/process/Pipes/WindowsPipes.php (added)
-
vendor/symfony/process/Process.php (added)
-
vendor/symfony/process/ProcessUtils.php (added)
-
vendor/symfony/process/README.md (added)
-
vendor/symfony/process/composer.json (added)
Legend:
- Unmodified
- Added
- Removed
-
image-type-converter/trunk/assets/dist/js/admin/img-converter-metabox.min.js
r2923240 r3147978 1 (()=>{"use strict";function n(){var e=[" 2284288AIPUPQ","2131155cjldoq","bg-primary","32cVLJNL","bg-danger",".loader","-toast","26764atMgoE",".btn-close","startsWith","addClass","18AMVPSe","1056070wegQyH","append","bg-warning","453185untByQ","show","bg-","removeClass","gpls-general","remove","click","137473QyHKBe","bg-info","html","89972kjzsqw","-notice","39WwSLjj","none","hide","length","block",".toast-msg","find","collapse"];return(n=function(){return e})()}var e=a;function t(n,t){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:1e3,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:e(241),s=e,c=jQuery.parseHTML(n);t instanceof jQuery==0&&(t=jQuery(t)),r?t[s(235)](c):t.prepend(c),a&&setTimeout((function(){var n=s;t[n(220)]("."+o+n(213)).remove()}),i);var u=jQuery(c)[s(220)](s(230));u[s(217)]&&u.on("click",(function(){var n=s;t[n(220)]("."+o+n(213))[n(242)]()}))}function r(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e(224),r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3e3,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:e(241),i=e,o={success:"bg-primary",error:i(226),warning:i(236),info:i(210)},s=jQuery("."+a+i(228)),c=s[i(220)](i(230));t=t[i(231)](i(239))?t:t in o?o[t]:t,s[i(240)]("bg-primary bg-danger")[i(232)](t),s[i(220)](i(219))[i(211)](n),s[i(221)](i(238)),r&&setTimeout((function(){var n=i;s[n(221)](n(216))}),r),c.on(i(243),(function(){s.collapse("hide")}))}function a(e,t){var r=n();return(a=function(n,e){return r[n-=210]})(e,t)}function i(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e(238),t=e;n===t(238)?jQuery(t(227)).css("display",t(218)):jQuery(".loader").css("display",t(215))}function o(n,e){if(!(n instanceof e))throw new TypeError("Cannot call a class as a function")}function s(n,e){for(var t=0;t<e.length;t++){var r=e[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(n,r.key,r)}}!function(n,e){for(var t=a,r=n();;)try{if(239851==parseInt(t(225))/1*(-parseInt(t(229))/2)+parseInt(t(214))/3*(parseInt(t(212))/4)+-parseInt(t(237))/5*(parseInt(t(233))/6)+parseInt(t(244))/7+parseInt(t(222))/8+parseInt(t(223))/9+parseInt(t(234))/10)break;r.push(r.shift())}catch(n){r.push(r.shift())}}(n);var c=h;!function(n,e){for(var t=h,r=n();;)try{if(207711==parseInt(t(505))/1*(-parseInt(t(500))/2)+-parseInt(t(493))/3*(-parseInt(t(494))/4)+parseInt(t(511))/5+parseInt(t(503))/6*(-parseInt(t(510))/7)+parseInt(t(496))/8+-parseInt(t(513))/9*(-parseInt(t(504))/10)+parseInt(t(499))/11*(-parseInt(t(489))/12))break;r.push(r.shift())}catch(n){r.push(r.shift())}}(v),c(506);var u,l,p,f=function(n){function e(n,t,r,a,i,s){var u=!(arguments.length>6&&void 0!==arguments[6])||arguments[6];o(this,e);var l=c;this[l(498)]=n,this[l(512)]=t,this[l(486)]=r,this[l(507)]=a,this[l(508)]=i,this[l(491)]=s,this.showToast=u,this[l(502)]()}return t=e,(a=[{key:n,value:function(){var n=this,e=c;jQuery[e(501)]({method:this[e(512)],url:this[e(498)],data:this[e(486)],success:function(t){var a,i=e;n.successCallback(t),(null==t||null===(a=t[i(486)])||void 0===a?void 0:a[i(488)])&&n[i(515)]&&r(t[i(486)][i(488)],t[i(486)][i(492)],2e3)},error:function(t){var a,i,o=e;n.errorCallback(t),(null==t||null===(a=t[o(497)])||void 0===a||null===(i=a.data)||void 0===i?void 0:i[o(488)])&&n[o(515)]&&r(t.responseJSON[o(486)][o(488)],t[o(497)][o(486)][o(492)],2e3)},complete:function(){n[e(491)]()}})}}])&&s(t.prototype,a),i&&s(t,i),Object.defineProperty(t,"prototype",{writable:!1}),e;var t,a,i}(c(502));function v(){var n=["data","params","message","24cRFXPJ","success","completeCallback","status","816465GbnnvN","4FrwXLI","POST","1201944cwfCzm","responseJSON","ajaxUrl","82379BjJzfw","10HMcHbe","ajax","fire","6wuJBYu","32150cUTayT","47157fROMme","fireAjax","successCallback","errorCallback","error","1827413FSUOSV","1357075ejHKAY","method","72QDeVnz","complete","showToast"];return(v=function(){return n})()}function h(n,e){var t=v();return(h=function(n,e){return t[n-=486]})(n,e)}function d(n,e){var t=g();return(d=function(n,e){return t[n-=456]})(n,e)}function g(){var n=["3434312BVlwrc","click","-conversion-history-new-type","text","8687529EDanKL","-convert-img-submit","labels","message","success","data","reload","convertAction","nonce","5010XxncPN","-new-img-type","11uCncjh","-attachment-id","preventDefault","-new-img-quality",".misc-pub-filetype strong","show","val","2682YZXSCy","POST","hide","20538920oDXfwp","-img-converter-container","first","3010376GenvFl","330734mwmEaO","7tcnPhc","10BttqaL","682989dsVaev"];return(g=function(){return n})()}!function(n,e){for(var t=d,r=n();;)try{if(619949==-parseInt(t(488))/1+parseInt(t(457))/2*(-parseInt(t(458))/3)+-parseInt(t(459))/4+parseInt(t(472))/5*(-parseInt(t(481))/6)+-parseInt(t(456))/7*(-parseInt(t(487))/8)+parseInt(t(463))/9+parseInt(t(484))/10*(parseInt(t(474))/11))break;r.push(r.shift())}catch(n){r.push(r.shift())}}(g),u=jQuery,l=gpls_wicor_image_converter,p="."+l.prefix,u((function(n){var e,r,a=d;u(document).on(a(460),p+a(464),(function(n){var e=a;if(n[e(476)](),confirm(l[e(465)].confirmConvert)){var r=u(p+e(475))[e(480)](),o=u(p+e(473)).val(),s=u(p+e(477)).val(),c=u(p+"-keep-img-extension").is(":checked");i(e(479)),new f(l.ajaxUrl,e(482),{action:l[e(470)],nonce:l[e(471)],attachmentID:r,imgType:o,imgQuality:s,keepExt:c},(function(n){var r,a=e;null!=n&&null!==(r=n[a(468)])&&void 0!==r&&r[a(466)]&&t(n[a(468)][a(466)],p+"-img-converter-container",!0,!0,2e3),(null==n?void 0:n[a(467)])&&n[a(467)]&&location[a(469)]()}),(function(n){var r,a=e;(null==n||null===(r=n.data)||void 0===r?void 0:r[a(466)])&&t(n[a(468)][a(466)],p+a(485),!0,!0,2e3)}),(function(){i(e(483))}),!1)}})),(r=u(p+(e=d)(461))[e(486)]()).length&&u(e(478))[e(462)](r[e(462)]())}))})();1 (()=>{"use strict";function n(){var e=[".toast-msg","length","9092412ciXfkx","bg-primary bg-danger","show","512728IsUjWs","addClass","collapse","hide","bg-primary","36ipsCQE","none","remove",".btn-close",".loader","1350463rUJtGv","551760fZgskm","6730ZCtqmk","bg-info","8bZiHNm","bg-warning","find","13619133BOkXYA","bg-","-toast","gpls-general","block","-notice","prepend","bg-danger","4228075RBRGEV","parseHTML"];return(n=function(){return e})()}var e=i;function t(n,e){var t=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:1e3,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"gpls-general",s=i,c=jQuery[s(144)](n);e instanceof jQuery==0&&(e=jQuery(e)),t?e.append(c):e[s(141)](c),r&&setTimeout((function(){var n=s;e[n(134)]("."+o+n(140))[n(125)]()}),a);var u=jQuery(c)[s(134)](s(126));u[s(146)]&&u.on("click",(function(){var n=s;e[n(134)]("."+o+"-notice")[n(125)]()}))}function r(n){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e(122),r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:3e3,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:e(138),i=e,o={success:"bg-primary",error:i(142),warning:i(133),info:i(131)},s=jQuery("."+a+i(137)),c=s[i(134)](i(126));t=t.startsWith(i(136))?t:t in o?o[t]:t,s.removeClass(i(116))[i(119)](t),s[i(134)](i(145)).html(n),s[i(120)](i(117)),r&&setTimeout((function(){var n=i;s.collapse(n(121))}),r),c.on("click",(function(){var n=i;s[n(120)](n(121))}))}function a(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e(117),t=e;n===t(117)?jQuery(t(127)).css("display",t(139)):jQuery(".loader").css("display",t(124))}function i(e,t){var r=n();return(i=function(n,e){return r[n-=115]})(e,t)}function o(n,e){if(!(n instanceof e))throw new TypeError("Cannot call a class as a function")}function s(n,e){for(var t=0;t<e.length;t++){var r=e[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(n,r.key,r)}}!function(n,e){for(var t=i,r=n();;)try{if(826784==parseInt(t(128))/1+-parseInt(t(130))/2+-parseInt(t(123))/3*(-parseInt(t(118))/4)+parseInt(t(143))/5+-parseInt(t(129))/6+-parseInt(t(115))/7+-parseInt(t(132))/8*(parseInt(t(135))/9))break;r.push(r.shift())}catch(n){r.push(r.shift())}}(n);var c=u;function u(n,e){var t=l();return(u=function(n,e){return t[n-=179]})(n,e)}function l(){var n=["complete","showToast","4876832uzmOgB","2067768Hlluwk","data","status","params","fire","ajaxUrl","9jIRdHs","errorCallback","POST","12003250iqFspE","successCallback","8wrYKii","completeCallback","2364UZiQti","method","success","fireAjax","responseJSON","ajax","644576wvitxC","error","1278410RHunBS","916336JbfmxQ","1792QGuVvP","message"];return(l=function(){return n})()}!function(n,e){for(var t=u,r=n();;)try{if(434995==parseInt(t(188))/1+parseInt(t(191))/2+-parseInt(t(197))/3+-parseInt(t(180))/4*(-parseInt(t(190))/5)+parseInt(t(182))/6*(parseInt(t(192))/7)+parseInt(t(196))/8+-parseInt(t(203))/9*(parseInt(t(206))/10))break;r.push(r.shift())}catch(n){r.push(r.shift())}}(l);var p,f,v,m,h=function(n){function e(n,t,r,a,i,s){var c=!(arguments.length>6&&void 0!==arguments[6])||arguments[6];o(this,e);var l=u;this[l(202)]=n,this.method=t,this[l(198)]=r,this.successCallback=a,this[l(204)]=i,this[l(181)]=s,this[l(195)]=c,this.fire()}return t=e,(a=[{key:n,value:function(){var n=this,e=c;jQuery[e(187)]({method:this[e(183)],url:this[e(202)],data:this[e(198)],success:function(t){var a,i=e;n[i(179)](t),(null==t||null===(a=t.data)||void 0===a?void 0:a[i(193)])&&n[i(195)]&&r(t[i(198)].message,t.data.status,2e3)},error:function(t){var a,i,o=e;n[o(204)](t),(null==t||null===(a=t.responseJSON)||void 0===a||null===(i=a[o(198)])||void 0===i?void 0:i.message)&&n.showToast&&r(t[o(186)].data.message,t[o(186)][o(198)][o(199)],2e3)},complete:function(){n.completeCallback()}})}}])&&s(t.prototype,a),i&&s(t,i),Object.defineProperty(t,"prototype",{writable:!1}),e;var t,a,i}(c(201));function g(n,e){var t=d();return(g=function(n,e){return t[n-=104]})(n,e)}function d(){var n=["labels","responseJSON","2851848iwxUIf","preventDefault","data","-conversion-history-new-type","-keep-img-extension","click","18842pCuMHY","12252oPGVga","-convert-img-submit","2541jJbQMs","1749932LKKpAt","ajaxUrl","-attachment-id","confirmOptimize","25kDYGuX","success","convertAction","10QlecZg","-img-converter-container","-img-optimizer-container","confirmConvert","text","val","optimizeAction","reload","prefix","-optimize-img-submit","show","1099323uKevls","2702585LGzLiK","8043352RAMyRB","length","nonce","message","-new-img-type","hide","POST"];return(d=function(){return n})()}!function(n,e){for(var t=g,r=n();;)try{if(754083==-parseInt(t(120))/1*(parseInt(t(112))/2)+parseInt(t(106))/3+parseInt(t(116))/4+-parseInt(t(135))/5+-parseInt(t(113))/6*(parseInt(t(115))/7)+parseInt(t(136))/8+parseInt(t(134))/9*(-parseInt(t(123))/10))break;r.push(r.shift())}catch(n){r.push(r.shift())}}(d),p=jQuery,f=g,v=gpls_wicor_image_converter,m="."+v[f(131)],p((function(n){var e,r,i=f;p(document).on(i(111),m+i(114),(function(n){var e=i;if(n[e(107)](),confirm(v[e(104)][e(126)])){var r=p(m+e(118))[e(128)](),o=p(m+e(140))[e(128)](),s=p(m+"-new-img-quality").val(),c=p(m+e(110)).is(":checked");a(e(133)),new h(v[e(117)],e(142),{action:v[e(122)],nonce:v[e(138)],attachmentID:r,imgType:o,imgQuality:s,keepExt:c},(function(n){var r,a=e;null!=n&&null!==(r=n.data)&&void 0!==r&&r.message&&t(n[a(108)][a(139)],m+"-img-converter-container",!0,!0,2e3),(null==n?void 0:n[a(121)])&&n[a(121)]&&location[a(130)]()}),(function(n){var r,a=e;(null==n||null===(r=n[a(108)])||void 0===r?void 0:r[a(139)])&&t(n.data.message,m+a(124),!0,!0,2e3)}),(function(){a(e(141))}),!1)}})),p(document).on(i(111),m+i(132),(function(n){var e=i;if(n[e(107)](),confirm(v.labels[e(119)])){var r=p(m+e(118))[e(128)](),o=p(m+"-new-img-quality")[e(128)]();a(e(133)),new h(v.ajaxUrl,e(142),{action:v[e(129)],nonce:v.nonce,attachmentID:r,imgQuality:o},(function(n){var r,a=e;null!=n&&null!==(r=n[a(108)])&&void 0!==r&&r[a(139)]&&t(n[a(108)][a(139)],m+a(125),!0,!0,2e3),(null==n?void 0:n[a(121)])&&n[a(121)]&&location[a(130)]()}),(function(n){var r=e;(null==n?void 0:n[r(105)])&&t(n[r(105)][r(108)][r(139)],m+r(125),!0,!0,2e3)}),(function(){a("hide")}),!1)}})),(r=p(m+(e=f)(109)).first())[e(137)]&&p(".misc-pub-filetype strong")[e(127)](r.text())}))})(); -
image-type-converter/trunk/assets/libs/notice.min.css
r2923240 r3147978 1 .gpls-general-notice{margin-left:0;border-radius:2px;color:#fff;clear:both;border-left:.61805em solid rgba(0,0,0,0.15);padding:1em .5em 1em .6em;position:relative;list-style:none;margin-bottom:15px}.gpls-general-notice .notices-list{ padding-left:0;padding-right:5px;margin-right:5px;line-height:1.2;font-family:sans-serif;margin:10px 0 20px 0}.gpls-general-notice .notices-list li{margin-bottom:0}.gpls-general-notice .notices-list a{color:#FFF;text-decoration:none;font-weight:bolder}.gpls-general-notice .errors-list a{color:#9bedff}.gpls-general-notice .warnings-list{color:#000}.gpls-general-notice .notice-buttons-wrapper{display:block}.gpls-general-notice .notice-buttons-wrapper .notice-button{position:relative;margin:0 2px 10px;background-color:rgba(0,0,0,0.25);box-shadow:0 3px black;border:0;padding:10px 15px;font-size:16px;font-family:"Source Sans Pro";color:#fff;outline:0;cursor:pointer;text-decoration:none;display:inline-block}.gpls-general-notice .notice-buttons-wrapper .notice-button:hover{background:rgba(0,0,0,0.3)}.gpls-general-notice .btn-close-wrapper{display:block;overflow:hidden}.gpls-general-notice .btn-close-wrapper .btn-close{float:right}.gpls-general-warning-notice{background-color:#e6de48}.gpls-general-error-notice{background-color:#e2401c}.gpls-general-success-notice{background-color:#52c35f}.gpls-general-info-notice{background-color:#0074d9}1 .gpls-general-notice{margin-left:0;border-radius:2px;color:#fff;clear:both;border-left:.61805em solid rgba(0,0,0,0.15);padding:1em .5em 1em .6em;position:relative;list-style:none;margin-bottom:15px}.gpls-general-notice .notices-list{color:#FFF;padding-left:0;padding-right:5px;margin-right:5px;line-height:1.2;font-family:sans-serif;margin:10px 0 20px 0}.gpls-general-notice .notices-list li{margin-bottom:0}.gpls-general-notice .notices-list a{color:#FFF;text-decoration:none;font-weight:bolder}.gpls-general-notice .notices-list a{color:#9bedff}.gpls-general-notice .notice-buttons-wrapper{display:block}.gpls-general-notice .notice-buttons-wrapper .notice-button{position:relative;margin:0 2px 10px;background-color:rgba(0,0,0,0.25);box-shadow:0 3px black;border:0;padding:10px 15px;font-size:16px;font-family:"Source Sans Pro";color:#fff;outline:0;cursor:pointer;text-decoration:none;display:inline-block}.gpls-general-notice .notice-buttons-wrapper .notice-button:hover{background:rgba(0,0,0,0.3)}.gpls-general-notice .btn-close-wrapper{display:block;overflow:hidden}.gpls-general-notice .btn-close-wrapper .btn-close{float:right;width:30px !important;height: 30px !important;line-height: 21px !important;}.gpls-general-warning-notice{background-color:#e6de48}.gpls-general-danger-notice{background-color:#e2401c}.gpls-general-success-notice{background-color:#52c35f;}.gpls-general-info-notice{background-color:#0074d9} -
image-type-converter/trunk/gpls-wicor-image-converter.php
r3087171 r3147978 3 3 4 4 /** 5 * Plugin Name: Image Type Converter [[GrandPlugins]] 6 * Description: Convert Image Types easily in WP. 7 * Author: GrandPlugins 8 * Author URI: https://grandplugins.com 9 * Text Domain: image-type-converter 10 * Std Name: gpls-wicor-image-converter 11 * Version: 1.0.2 5 * Plugin Name: Image Converter & Optimizer [[GrandPlugins]] 6 * Description: Convert Image Types and optimize it easily in WP. 7 * Author: GrandPlugins 8 * Author URI: https://grandplugins.com 9 * Text Domain: image-type-converter 10 * Std Name: gpls-wicor-image-converter 11 * Version: 1.0.3 12 * Requires at least: 5.3.0 13 * Requires PHP: 7.1.0 12 14 */ 13 15 -
image-type-converter/trunk/includes/ImageConverter.php
r3081496 r3147978 497 497 * @param int $attachemnt_id 498 498 * @param string $mime_type 499 * @return void499 * @return mixed 500 500 */ 501 501 private static function update_attachment_mime_type( $attachemnt_id, $mime_type ) { -
image-type-converter/trunk/includes/MetaBoxes/ImgConverterMetaBox.php
r3081496 r3147978 2 2 namespace GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes; 3 3 4 defined( 'ABSPATH' ) || exit; 5 4 6 use GPLSCore\GPLS_PLUGIN_WICOR\ImageConverter; 7 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\NoticeUtilsTrait; 8 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\Img\ImgUtilsTrait; 5 9 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\MetaBoxesBase\MetaBox; 6 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\Img\ImgUtilsTrait;7 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\NoticeUtilsTrait;8 9 defined( 'ABSPATH' ) || exit;10 10 11 11 /** … … 14 14 class ImgConverterMetaBox extends MetaBox { 15 15 16 use NoticeUtilsTrait, ImgUtilsTrait; 16 use NoticeUtilsTrait; 17 use ImgUtilsTrait; 17 18 18 19 /** … … 29 30 */ 30 31 protected $id; 31 32 /**33 * Converter Libs.34 *35 * @var array36 */37 protected $convert_libs = array( 'imagick', 'gd' );38 32 39 33 /** … … 69 63 'name' => str_replace( '-', '_', self::$plugin_info['name'] ), 70 64 'data' => array( 71 'ajaxUrl' => admin_url( 'admin-ajax.php' ), 72 'prefix' => self::$plugin_info['classes_prefix'], 73 'convertAction' => self::$plugin_info['name'] . '-convert-img-type', 74 'nonce' => wp_create_nonce( $this->id ), 75 'labels' => array( 76 'confirmConvert' => esc_html__( 'You are about to convert the image type, proceed?', 'image-type-converter' ), 65 'ajaxUrl' => admin_url( 'admin-ajax.php' ), 66 'prefix' => self::$plugin_info['classes_prefix'], 67 'convertAction' => self::$plugin_info['name'] . '-convert-img-type', 68 'optimizeAction' => self::$plugin_info['name'] . '-optimize-img', 69 'nonce' => wp_create_nonce( $this->id ), 70 'labels' => array( 71 'confirmConvert' => esc_html__( 'You are about to convert the image type, proceed?', 'image-type-converter' ), 72 'confirmOptimize' => esc_html__( 'The image will be optimized, proceed?', 'image-type-converter' ), 77 73 ), 78 74 ), … … 80 76 ), 81 77 ); 78 } 79 80 /** 81 * Convert To Select field. 82 * 83 * @return void 84 */ 85 public static function convert_to_select( $image_id, $check_for_ext = true ) { 86 ?> 87 <select class="my-2 <?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-new-img-type' ); ?>" name="<?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-new-img-type' ); ?>"> 88 <?php 89 $supported_types = ImageConverter::get_supported_types(); 90 if ( $check_for_ext ) { 91 $img_details = ImageConverter::get_image_file_details( $image_id ); 92 } 93 94 foreach ( $supported_types as $img_type ) : 95 if ( $check_for_ext && ( $img_details['ext'] === $img_type ) ) { 96 continue; 97 } 98 ?> 99 <option value="<?php echo esc_attr( $img_type ); ?>"><?php echo esc_html( $img_type ); ?></option> 100 <?php endforeach; ?> 101 </select> 102 <?php 82 103 } 83 104 … … 121 142 } 122 143 123 $img_type = ! empty( $_POST['imgType'] ) ? sanitize_text_field( wp_unslash( $_POST['imgType'] ) ) : ''; 124 $attachment_id = ! empty( $_POST['attachmentID'] ) ? absint( sanitize_text_field( wp_unslash( $_POST['attachmentID'] ) ) ) : 0; 125 $quality = ! empty( $_POST['imgQuality'] ) ? absint( sanitize_text_field( wp_unslash( $_POST['imgQuality'] ) ) ) : 85; 144 $img_type = ! empty( $_POST['imgType'] ) ? sanitize_text_field( wp_unslash( $_POST['imgType'] ) ) : ''; 145 $attachment_id = ! empty( $_POST['attachmentID'] ) ? absint( sanitize_text_field( wp_unslash( $_POST['attachmentID'] ) ) ) : 0; 146 $keep_file_extension = ( ! empty( $_POST['keepExt'] ) && filter_var( sanitize_text_field( wp_unslash( $_POST['keepExt'] ) ), \FILTER_VALIDATE_BOOLEAN, \FILTER_NULL_ON_FAILURE ) ) ? true : false; 147 $quality = ! empty( $_POST['imgQuality'] ) ? absint( sanitize_text_field( wp_unslash( $_POST['imgQuality'] ) ) ) : 85; 126 148 127 149 if ( empty( $img_type ) || empty( $attachment_id ) ) { … … 143 165 144 166 $options = array( 145 'keep_ext' => false,146 167 'quality' => $quality, 168 'keep_ext' => $keep_file_extension, 147 169 ); 148 170 … … 159 181 160 182 self::ajax_response( 161 'Image is converted successfully',183 esc_html__( 'Image type has been converted successfully', 'image-type-converter' ), 162 184 'success', 163 185 200, … … 165 187 ); 166 188 } 167 168 /**169 * Convert To Select field.170 *171 * @return void172 */173 public static function convert_to_select( $image_id, $check_for_ext = true ) {174 ?>175 <select class="my-2 <?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-new-img-type' ); ?>" name="<?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-new-img-type' ); ?>">176 <?php177 $supported_types = ImageConverter::get_supported_types();178 if ( $check_for_ext ) {179 $img_details = ImageConverter::get_image_file_details( $image_id );180 }181 182 foreach ( $supported_types as $img_type ) :183 if ( $check_for_ext && ( $img_details['ext'] === $img_type ) ) {184 continue;185 }186 ?>187 <option value="<?php echo esc_attr( $img_type ); ?>"><?php echo esc_html( $img_type ); ?></option>188 <?php endforeach; ?>189 </select>190 <?php191 }192 189 } -
image-type-converter/trunk/includes/MetaBoxes/ImgSubsizesMetaBox.php
r3081496 r3147978 60 60 * @return void 61 61 */ 62 public function generated_subsize_html( $attachment_id, $size_name, $size_arr, $conversion_history = array() ) {62 public function generated_subsize_html( $attachment_id, $size_name, $size_arr, $conversion_history = array(), $optimization_history = array() ) { 63 63 $img_url = wp_get_attachment_url( $attachment_id ); 64 64 $size_url = str_replace( wp_basename( $img_url ), $size_arr['file'], $img_url ); 65 65 $size_title = $size_name; 66 $size_path = self::convert_url_to_path( $size_url ); 66 67 $size_url = add_query_arg( 67 68 array( … … 70 71 $size_url 71 72 ); 72 if ( ! empty( $img_sizes[ $size_name ]) ) {73 $size_title = $img_sizes[ $size_name ]['title'];73 if ( ! file_exists( $size_path ) ) { 74 return; 74 75 } 75 76 ?> … … 86 87 <div class="subsize-image-details"> 87 88 <div class="d-flex justify-content-center flex-lg-row mx-auto flex-md-column flex-wrap"> 88 <span class="badge bg-light text-dark shadow-sm p-3 fs-6 text-left"><?php esc_html_e( 'Dimensions', 'image- sizes-controller' ); ?> : <?php echo esc_html( $size_arr['width'] . 'x' . $size_arr['height'] ); ?></span>89 <span class="badge bg-light text-dark shadow-sm p-3 fs-6 text-left"><?php esc_html_e( 'Dimensions', 'image-type-converter' ); ?> : <?php echo esc_html( $size_arr['width'] . 'x' . $size_arr['height'] ); ?></span> 89 90 <span class="badge bg-light text-dark shadow-sm p-3 fs-6 text-left"> 90 <span><?php esc_html_e( 'Size', 'image-sizes-controller' ); ?> : <?php echo esc_html( size_format( $size_arr['filesize'], 1 ) ); ?></span> 91 <?php 92 if ( ! empty( $conversion_history ) ) { 93 ?> 94 <span style="background: #<?php echo esc_attr( $conversion_history['new_size'] > $conversion_history['old_size'] ? 'f76e6e' : '00ffb8' ); ?>;padding: 5px;border-radius: 5px;font-weight: bolder;"><?php echo esc_html( '%' . number_format( ( abs( $conversion_history['old_size'] - $conversion_history['new_size'] ) / $conversion_history['old_size'] ) * 100 ) ); ?><?php echo esc_attr( $conversion_history['new_size'] > $conversion_history['old_size'] ? '⬆' : '⬇' ); ?></span> 95 <?php 96 } 97 ?> 91 <span><?php esc_html_e( 'Size', 'image-type-converter' ); ?> : <?php echo esc_html( size_format( ! empty( $size_arr['filesize'] ) ? $size_arr['filesize'] : wp_filesize( $size_path ), 1 ) ); ?></span> 98 92 </span> 99 <?php 100 if ( ! empty( $conversion_history ) ) { 101 ?> 102 <span class="mt-1 badge bg-light text-dark shadow-sm p-3 fs-6 text-left w-100 flex-grow-1"><?php esc_html_e( 'Old Size', 'image-sizes-controller' ); ?> : <?php echo esc_html( size_format( $conversion_history['old_size'], 1 ) ); ?></span> 103 <?php 104 } 93 </div> 94 <!-- Optimization history --> 95 <?php 96 if ( ! empty( $optimization_history ) ) : 105 97 ?> 106 </div> 98 <div class="subsize-conversion-history d-flex flex-column justify-content-center align-items-center border my-4 p-3"> 99 <h6><?php esc_html_e( 'Optimization history', 'image-type-converter' ); ?><?php self::$core->new_keyword( 'New', false ); ?></h6> 100 <div class="d-flex justify-content-start flex-lg-row mx-auto flex-md-column flex-wrap"> 101 <span class="mt-1 badge bg-light text-dark shadow-sm p-3 fs-6 text-start w-100 flex-grow-1"><?php esc_html_e( 'Old Size', 'image-type-converter' ); ?> : <?php echo esc_html( size_format( $optimization_history['old_size'], 1 ) ); ?></span> 102 <span class="mt-1 badge bg-light text-dark shadow-sm p-3 fs-6 text-start w-100 flex-grow-1 d-flex justify-content-between"> 103 <?php esc_html_e( 'New Size', 'image-type-converter' ); ?> : <?php echo esc_html( size_format( $optimization_history['new_size'], 1 ) ); ?> 104 <span style="background: #<?php echo esc_attr( $optimization_history['new_size'] > $optimization_history['old_size'] ? 'f76e6e' : '00ffb8' ); ?>;padding: 5px;border-radius: 5px;font-weight: bolder;"><?php echo esc_html( '%' . number_format( ( abs( $optimization_history['old_size'] - $optimization_history['new_size'] ) / $optimization_history['old_size'] ) * 100, 1 ) ); ?><?php echo esc_attr( $optimization_history['new_size'] > $optimization_history['old_size'] ? '⬆' : '⬇' ); ?></span> 105 </span> 106 </div> 107 </div> 108 <?php endif; ?> 109 <!-- Conversion history --> 110 <?php 111 if ( ! empty( $conversion_history ) ) : 112 ?> 113 <div class="subsize-conversion-history d-flex flex-column justify-content-center align-items-center border my-4 p-3"> 114 <h6><?php esc_html_e( 'Conversion history', 'image-type-converter' ); ?></h6> 115 <div class="d-flex justify-content-start flex-lg-row mx-auto flex-md-column flex-wrap"> 116 <span class="mt-1 badge bg-light text-dark shadow-sm p-3 fs-6 text-start w-100 flex-grow-1"><?php esc_html_e( 'Old Size', 'image-type-converter' ); ?> : <?php echo esc_html( size_format( $conversion_history['old_size'], 1 ) ); ?></span> 117 <span class="mt-1 badge bg-light text-dark shadow-sm p-3 fs-6 text-start w-100 flex-grow-1 d-flex justify-content-between"> 118 <?php esc_html_e( 'New Size', 'image-type-converter' ); ?> : <?php echo esc_html( size_format( $conversion_history['new_size'], 1 ) ); ?> 119 <span style="background: #<?php echo esc_attr( $conversion_history['new_size'] > $conversion_history['old_size'] ? 'f76e6e' : '00ffb8' ); ?>;padding: 5px;border-radius: 5px;font-weight: bolder;"><?php echo esc_html( '%' . number_format( ( abs( $conversion_history['old_size'] - $conversion_history['new_size'] ) / $conversion_history['old_size'] ) * 100, 1 ) ); ?><?php echo esc_attr( $conversion_history['new_size'] > $conversion_history['old_size'] ? '⬆' : '⬇' ); ?></span> 120 </span> 121 </div> 122 </div> 123 <?php endif; ?> 107 124 </div> 108 125 </div> -
image-type-converter/trunk/includes/MetaBoxes/MetaBoxesBase/metaboxesList.php
r2923240 r3147978 2 2 namespace GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\MetaBoxesBase; 3 3 4 defined( 'ABSPATH' ) || exit; 5 6 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\ImageOptimizationHistoryMetaBox; 4 7 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\ImgConversionHistoryMetaBox; 5 8 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\ImgConverterMetaBox; 9 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\ImgOptimizerMetaBox; 6 10 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\ImgSubsizesMetaBox; 7 8 defined( 'ABSPATH' ) || exit;9 11 10 12 /** … … 16 18 ImgConverterMetaBox::init(); 17 19 ImgConversionHistoryMetaBox::init(); 20 ImgOptimizerMetaBox::init(); 21 ImageOptimizationHistoryMetaBox::init(); 18 22 ImgSubsizesMetaBox::init(); 19 23 } -
image-type-converter/trunk/includes/Pages/PagesBase/AdminPage.php
r2923240 r3147978 359 359 <!-- Template Title --> 360 360 <?php if ( empty( $tab['hide_title'] ) && ! empty( $tab['title'] ) ) : ?> 361 <h1 class="wp-heading-inline mb-4 shadow-sm p-2 bg-white"><?php echo esc_html( $tab['title'] ); ?></h1>361 <h1 class="wp-heading-inline mb-4 shadow-sm p-2 bg-white"><?php echo wp_kses_post( $tab['title'] ); ?></h1> 362 362 <?php endif; ?> 363 363 -
image-type-converter/trunk/includes/Pages/SettingsPage.php
r2923240 r3147978 56 56 protected function prepare() { 57 57 $this->page_props = array( 58 'menu_title' => esc_html__( 'Image Converter ', 'image-type-converter' ),58 'menu_title' => esc_html__( 'Image Converter & Optimizer [GrandPlugins]', 'image-type-converter' ), 59 59 'page_title' => '', 60 60 'parent_slug' => 'upload.php', … … 78 78 'title' => esc_html__( 'Convert images type in bulk', 'image-type-converter' ), 79 79 'template' => 'bulk-convert-template.php', 80 ), 81 'auto_optimize' => array( 82 'tab_title' => esc_html__( 'Auto Optimize', 'image-type-converter' ) . self::$core->new_keyword() . self::$core->new_keyword( 'Pro' ), 83 'title' => esc_html__( 'Optimize images automatically on upload', 'image-type-converter' ) . self::$core->pro_btn( '', 'Pro', '', '', true ), 84 'template' => 'auto-optimize-template.php', 85 ), 86 'bulk_optimize' => array( 87 'tab_title' => esc_html__( 'Bulk Optimize', 'image-type-converter' ) . self::$core->new_keyword() . self::$core->new_keyword( 'Pro' ), 88 'title' => esc_html__( 'Optimize images in bulk', 'image-type-converter' ), 89 'template' => 'bulk-optimize-template.php', 80 90 ), 81 91 ); -
image-type-converter/trunk/includes/Plugin.php
r3081496 r3147978 6 6 use GPLSCore\GPLS_PLUGIN_WICOR\Base; 7 7 use GPLSCore\GPLS_PLUGIN_WICOR\ImageConverter; 8 use GPLSCore\GPLS_PLUGIN_WICOR\ImageOptimizer; 8 9 use GPLSCore\GPLS_PLUGIN_WICOR\QuickImageConverter; 9 10 use GPLSCore\GPLS_PLUGIN_WICOR\TypesSupport; … … 26 27 setup_pages(); 27 28 ImageConverter::init(); 29 ImageOptimizer::init(); 28 30 TypesSupport::init(); 29 31 QuickImageConverter::init(); -
image-type-converter/trunk/includes/QuickImageConverter.php
r3087171 r3147978 4 4 defined( 'ABSPATH' ) || exit; 5 5 6 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\NoticeUtilsTrait; 7 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\Img\ImgUtilsTrait; 8 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\GeneralUtilsTrait; 6 9 use GPLSCore\GPLS_PLUGIN_WICOR\MetaBoxes\ImgConverterMetaBox; 7 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\GeneralUtilsTrait;8 use GPLSCore\GPLS_PLUGIN_WICOR\Utils\NoticeUtilsTrait;9 10 10 11 /** … … 17 18 use GeneralUtilsTrait; 18 19 use NoticeUtilsTrait; 20 use ImgUtilsTrait; 19 21 20 22 /** … … 89 91 <!-- Convert to --> 90 92 <div class="convert-to-wrapper" style="border: 1px solid #EEE;width:100%;display: flex;flex-direction: row;align-items: center;justify-content: space-between;padding: 10px;margin: 5px;"> 91 <span class="my-2" style="width:200px;text-align:left;"><?php esc_html_e( 'Convert To:', ' gpls-wicor-image-converter' ); ?></span>93 <span class="my-2" style="width:200px;text-align:left;"><?php esc_html_e( 'Convert To:', 'image-type-converter' ); ?></span> 92 94 <?php ImgConverterMetaBox::convert_to_select( 0, false ); ?> 93 95 </div> 94 96 <!-- Quality --> 95 97 <div class="quality-wrapper" style="border: 1px solid #EEE;width:100%;display: flex;flex-direction: row;align-items: center;justify-content: space-between;padding: 10px;margin: 5px;"> 96 <span class="my-2" style="width:200px;text-align:left;"><?php esc_html_e( 'Quality:', ' gpls-wicor-image-converter' ); ?></span>98 <span class="my-2" style="width:200px;text-align:left;"><?php esc_html_e( 'Quality:', 'image-type-converter' ); ?></span> 97 99 <input type="number" min="1" max="100" value="85" class="my-2 <?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-new-img-quality' ); ?>" name="<?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-new-img-quality' ); ?>"> 98 100 </div> 99 101 <!-- Keep Ext --> 100 102 <div class="keep-ext-wrapper" style="border: 1px solid #EEE;width:100%;display: flex;flex-direction: row;align-items: center;justify-content: space-between;padding: 10px;margin: 5px;"> 101 <span class="my-2" style="width:200px;text-align:left;"><?php esc_html_e( 'Keep file extension:', ' gpls-wicor-image-converter' ); ?> <?php echo wp_kses_post( self::$core->pro_btn( '', 'Pro', '', '', true ) ); ?></span>103 <span class="my-2" style="width:200px;text-align:left;"><?php esc_html_e( 'Keep file extension:', 'image-type-converter' ); ?> <?php echo wp_kses_post( self::$core->pro_btn( '', 'Pro', '', '', true ) ); ?></span> 102 104 <input disabled type="checkbox" class="my-2 <?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-keep-img-extension' ); ?>" > 103 105 </div> … … 126 128 127 129 if ( ! in_array( $type, $supported_types ) ) { 128 self::ajax_error_response( esc_html__( 'Invalid image type!', ' gpls-wicor-image-converter' ) );130 self::ajax_error_response( esc_html__( 'Invalid image type!', 'image-type-converter' ) ); 129 131 } 130 132 … … 141 143 142 144 self::ajax_response( 143 esc_html__( 'Image type has been converted successfully', ' gpls-wicor-image-converter' ),145 esc_html__( 'Image type has been converted successfully', 'image-type-converter' ), 144 146 'success', 145 147 200, … … 198 200 'quickConverterAction' => self::$plugin_info['prefix'] . '-quick-converter-action', 199 201 'labels' => array( 200 'convertBtn' => esc_html__( 'Convert', ' gpls-wicor-image-converter' ),202 'convertBtn' => esc_html__( 'Convert', 'image-type-converter' ), 201 203 ), 202 204 ) … … 212 214 */ 213 215 public function filter_media_table_columns( $columns ) { 214 $columns[ $this->converter_column_name ] = esc_html__( 'Quick Image type converter', ' gpls-wicor-image-converter' );216 $columns[ $this->converter_column_name ] = esc_html__( 'Quick Image type converter', 'image-type-converter' ); 215 217 return $columns; 216 218 } … … 247 249 <!-- Current Type --> 248 250 <div class="current-type-wrapper" style="display:flex;flex-direction:column;align-items:center; border:1px solid #EEE; margin-right:10px;padding:9px;"> 249 <span class="my-2" style="margin-bottom:10px;"><?php esc_html_e( 'Image type:', ' gpls-wicor-image-converter' ); ?></span>251 <span class="my-2" style="margin-bottom:10px;"><?php esc_html_e( 'Image type:', 'image-type-converter' ); ?></span> 250 252 <span><strong style="background:#000;color:#FFF;padding:6px;"><?php echo esc_html( $this->get_current_image_type( $attachment_id, true ) ); ?></strong></span> 251 253 </div> 252 <button data-image_id="<?php echo esc_attr( $attachment_id ); ?>" type="submit" class="button button-primary <?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-quick-converter-submit' ); ?>"><?php esc_html_e( 'Convert' ); ?></button> 254 <!-- Actions --> 255 <div class="img-actions" style="text-align:center;display:flex;flex-direction:column;"> 256 <?php 257 $img_details = self::get_image_file_details( $attachment_id ); 258 if ( is_array( $img_details ) ) { 259 ?> 260 <button data-image_id="<?php echo esc_attr( $attachment_id ); ?>" type="submit" class="button button-primary <?php echo esc_attr( self::$plugin_info['classes_prefix'] . '-quick-converter-submit' ); ?>"><?php esc_html_e( 'Convert' ); ?></button> 261 <?php 262 ImageOptimizer::optimize_btn( $attachment_id, $img_details['ext'] ); 263 } 264 ?> 265 </div> 253 266 </div> 254 267 <div class="notices-wrapper" style="margin-top:5px;"> -
image-type-converter/trunk/includes/Settings/Fields/settings-fields.php
r2923240 r3147978 3 3 4 4 use GPLSCore\GPLS_PLUGIN_WICOR\ImageConverter; 5 use GPLSCore\GPLS_PLUGIN_WICOR\ImageOptimizer; 5 6 6 7 defined( 'ABSPATH' ) || exit; … … 63 64 ), 64 65 ), 65 'custom_upload_type' => array( 66 'type' => 'repeater', 67 'repeat_add_label' => esc_html__( 'Add conversion Rule', 'gpls-wwclr-woo-cart-limiter' ), 68 'value' => array(), 69 'classes' => 'bg-light border shadow-sm', 70 'wrapper_classes' => 'bg-light shadow-sm', 71 'collapse' => array( 72 'collapse_source' => $plugin_info['classes_prefix'] . '-general-conversion-type', 73 'collapse_value' => 2, 66 ), 67 ), 68 ), 69 'auto_optimize' => array( 70 'main_optimization_type' => array( 71 'settings_list' => array( 72 'optimization_status' => array( 73 'input_label' => esc_html__( 'Enable', 'image-type-converter' ), 74 'value' => 'no', 75 'type' => 'checkbox', 76 'input_suffix' => esc_html__( 'Enable Auto Optimization', 'image-type-converter' ), 77 'wrapper_classes' => 'bg-light shadow-sm', 78 'attrs' => array( 79 'disabled' => 'disabled', 80 ), 81 ), 82 'optimization_type' => array( 83 'input_label' => esc_html__( 'Optimization Type', 'image-type-converter' ), 84 'type' => 'radio', 85 'value' => 'no', 86 'classes' => $plugin_info['classes_prefix'] . '-general-optimization-type', 87 'wrapper_classes' => 'bg-light shadow-sm', 88 'options' => array( 89 array( 90 'input_suffix' => esc_html__( 'General Optimization', 'image-type-converter' ), 91 'input_footer' => esc_html__( 'Optimize all images', 'image-type-converter' ), 92 'value' => 1, 93 ), 94 array( 95 'input_suffix' => esc_html__( 'Custom Optimization', 'image-type-converter' ), 96 'input_footer' => esc_html__( 'Make optimization to specific image types', 'image-type-converter' ), 97 'value' => 2, 98 ), 74 99 ), 75 100 'attrs' => array( 76 101 'disabled' => 'disabled', 77 102 ), 78 'default_subitem' => array( 79 'custom_source_type' => array( 80 'key' => 'custom_source_type', 81 'type' => 'select', 82 'input_footer' => esc_html__( 'Uploaded image type', 'image-type-converter' ), 83 'options' => ImageConverter::get_supported_types( true ), 84 'value' => '', 85 'wrapper_classes' => 'col-md-6', 86 ), 87 'custom_target_type' => array( 88 'key' => 'custom_target_type', 89 'type' => 'select', 90 'input_footer' => esc_html__( 'Target conversion type', 'image-type-converter' ), 91 'options' => ImageConverter::get_supported_types( true ), 92 'value' => '', 93 'wrapper_classes' => 'col-md-6', 94 ), 103 ), 104 'quality' => array( 105 'key' => 'quality', 106 'type' => 'number', 107 'input_footer' => esc_html__( 'Quality', 'image-type-converter' ), 108 'value' => 85, 109 'attrs' => array( 110 'min' => 0, 111 'max' => 100, 112 'disabled' => 'disabled', 95 113 ), 96 114 ), -
image-type-converter/trunk/includes/Templates/metaboxes/img-subsizes-list-metabox-template.php
r2923240 r3147978 1 1 <?php 2 2 use GPLSCore\GPLS_PLUGIN_WICOR\ImageConverter; 3 use GPLSCore\GPLS_PLUGIN_WICOR\ImageOptimizer; 3 4 defined( 'ABSPATH' ) || exit; 4 5 … … 14 15 $img_metadata = wp_get_attachment_metadata( $_post_id ); 15 16 if ( ! empty( $img_metadata['sizes'] ) ) : 16 $sizes = $img_metadata['sizes']; 17 $conversions_history = ImageConverter::get_img_conversion_history( $_post_id ); 18 $recent_conversion_history = ! empty( $conversions_history ) ? $conversions_history[ array_key_last( $conversions_history ) ] : array(); 17 $sizes = $img_metadata['sizes']; 18 $conversions_history = ImageConverter::get_img_conversion_history( $_post_id ); 19 $optimizations_history = ImageOptimizer::get_optimization_history( $_post_id ); 20 $recent_conversion_history = ! empty( $conversions_history ) ? $conversions_history[ array_key_last( $conversions_history ) ] : array(); 21 $recent_optimization_history = ! empty( $optimizations_history ) ? $optimizations_history[ array_key_last( $optimizations_history ) ] : array(); 19 22 foreach ( $sizes as $size_name => $size_arr ) : 20 $subsize_conversion_history = ( ! empty( $recent_conversion_history['sizes'] ) && ! empty( $recent_conversion_history['sizes'][ $size_name ] ) ) ? $recent_conversion_history['sizes'][ $size_name ] : array(); 23 $subsize_conversion_history = ( ! empty( $recent_conversion_history['sizes'] ) && ! empty( $recent_conversion_history['sizes'][ $size_name ] ) ) ? $recent_conversion_history['sizes'][ $size_name ] : array(); 24 $subsize_optimization_history = ( ! empty( $recent_optimization_history['sizes'] ) && ! empty( $recent_optimization_history['sizes'][ $size_name ] ) ) ? $recent_optimization_history['sizes'][ $size_name ] : array(); 21 25 // Subsize Item HTML. 22 $metabox->generated_subsize_html( $_post_id, $size_name, $size_arr, $subsize_conversion_history );26 $metabox->generated_subsize_html( $_post_id, $size_name, $size_arr, $subsize_conversion_history, $subsize_optimization_history ); 23 27 endforeach; 24 28 endif; -
image-type-converter/trunk/includes/Templates/pages/status-template.php
r2923240 r3147978 1 1 <?php 2 defined( 'ABSPATH' ) || exit; 2 3 3 4 use GPLSCore\GPLS_PLUGIN_WICOR\ImageConverter; 4 5 defined( 'ABSPATH' ) || exit; 5 use GPLSCore\GPLS_PLUGIN_WICOR\ImageOptimizer; 6 6 7 7 $core = $args['core']; … … 104 104 ?> 105 105 <div class="notice notice-error avif-reqs py-2 px-3"> 106 <span><?php printf( esc_html__( 'AVIF requires %1$s compiled with AVIF support OR %2$s at least. please contact your hosting support regarding that.', 'image-type-converter' ), '<strong>GD </strong>', '<strong>ImageMagick V 7.0.25</strong>' ); ?></span> 106 107 <span> 108 <?php 109 /* translators: 1: GD Library name 2: Imagemagick Library name. */ 110 printf( esc_html__( 'AVIF requires %1$s compiled with AVIF support OR %2$s at least. please contact your hosting support regarding that.', 'image-type-converter' ), '<strong>GD </strong>', '<strong>ImageMagick V 7.0.25</strong>' ); 111 ?> 112 </span> 107 113 </div> 108 114 <?php endif; ?> … … 110 116 <?php if ( ImageConverter::is_type_supported( 'avif' ) && ! ImageConverter::is_avif_allowed() ) : ?> 111 117 <div class="avif-allowed-notice notice notice-warning py-2 px-3"> 112 <span><?php printf( esc_html__( 'AVIF images are not allowed for upload. If you want to upload and use AVIF images, we recommend our plugin %s', 'image-type-converter' ), '<a href="https://wordpress.org/plugins/avif-support/" target="_blank" >AVIF Support</a>' ); ?></span> 118 <span> 119 <?php 120 /* translators: %s: AVIF support Plugin name */ 121 printf( esc_html__( 'AVIF images are not allowed for upload. If you want to upload and use AVIF images, we recommend our plugin %s', 'image-type-converter' ), '<a href="https://wordpress.org/plugins/avif-support/" target="_blank" >AVIF Support</a>' ); 122 ?> 123 </span> 113 124 </div> 114 125 <?php endif; ?> 126 </div> 127 128 <div class="container optimizers-status-wrapper accordion my-5" id="ImgOptimizersAccordion"> 129 <h3 class="mb-2 p-3 bg-white border shadow-sm"><?php esc_html_e( 'Optimizers status', 'image-type-converter' ); ?><span><?php $core->new_keyword( 'New', false ); ?></span></h3> 130 <?php 131 $optimizers = ImageOptimizer::get_optimizers(); 132 if ( ! $template_page::is_proc_open_available() ) { 133 ?> 134 <div id="message" class="error notice inline"> 135 <p><strong><?php esc_html_e( 'proc_open() function seems not available, Optimizers rely on this function. please contact your hosting support if it can be enabled or consider upgrading to a higher hosting plan', 'image-type-converter' ); ?></strong></p> 136 </div> 137 <?php 138 } 139 ?> 140 <ul class="list-group p-3"> 141 <?php foreach ( $optimizers as $optimizer_key => $optimizer_arr ) : ?> 142 <li class="list-group-item accordion-item pe-4"> 143 <h4 class="accordion-header"> 144 <div class="accordion-header-wrapper p-2 accordion-button collapsed" style="cursor:pointer;" data-bs-toggle="collapse" data-bs-target="#<?php echo esc_attr( $optimizer_key . '-optimizer' ); ?>" aria-expanded="false" aria-controls="<?php echo esc_attr( $optimizer_key . '-optimizer' ); ?>"> 145 <div class="col-md-6 border-end"> 146 <span class="item-key"><?php echo esc_html( $optimizer_arr['title'] ); ?></span> 147 </div> 148 <div class="col-md-6 text-end me-2"> 149 <span class="item-value text-bold"> 150 <?php 151 $is_optimizer_installed = ImageOptimizer::is_optimizer_installed( $optimizer_key, true ); 152 if ( $is_optimizer_installed && ! is_wp_error( $is_optimizer_installed ) ) { 153 $template_page::install_and_version_icon( 'green', $is_optimizer_installed ); 154 155 } else { 156 $template_page::install_and_version_icon( 'red' ); 157 } 158 ?> 159 </span> 160 </div> 161 </div> 162 </h4> 163 <div id="<?php echo esc_attr( $optimizer_key . '-optimizer' ); ?>" class="accordion-collapse collapse" data-bs-parent="#ImgOptimizersAccordion"> 164 <ul class="list-group p-3 my-3"> 165 <!-- Image Type Target --> 166 <li class="list-group-item"> 167 <div class="row"> 168 <div class="col-md-6 border-end"> 169 <span class="item-key"><?php esc_html_e( 'Image type Target', 'image-type-converter' ); ?></span> 170 </div> 171 <div class="col-md-6 text-end"> 172 <span class="item-value"> 173 <?php echo esc_html( $optimizer_arr['target'] ); ?> 174 </span> 175 </div> 176 </div> 177 </li> 178 <?php 179 $optimizter_installed_result = ImageOptimizer::is_optimizer_installed( $optimizer_key, true ); 180 if ( ! $optimizter_installed_result || is_wp_error( $optimizter_installed_result ) ) : 181 ?> 182 <!-- Install --> 183 <li class="list-group-item" style="cursor:pointer;"> 184 <?php esc_html_e( 'Install commands', 'image-type-converter' ); ?> 185 186 <ul class="list-group p-3"> 187 <?php foreach ( $optimizer_arr['install'] as $os_name => $os_command ) : ?> 188 <li class="list-group-item"> 189 <div class="row"> 190 <div class="col-md-6 border-end"> 191 <span class="item-key"><?php echo esc_html( $os_name ); ?></span> 192 </div> 193 <div class="col-md-6 text-end"> 194 <span class="item-value"> 195 <?php echo esc_html( $os_command ); ?> 196 </span> 197 </div> 198 </div> 199 </li> 200 <?php endforeach; ?> 201 </ul> 202 </li> 203 204 <?php endif; ?> 205 </ul> 206 </div> 207 </li> 208 <?php endforeach; ?> 209 </ul> 115 210 </div> 116 211 <div style="margin-top:150px;"> -
image-type-converter/trunk/includes/Utils/GeneralUtilsTrait.php
r2923240 r3147978 6 6 */ 7 7 trait GeneralUtilsTrait { 8 9 /** 10 * Check if proc_open available. 11 * @return bool 12 */ 13 public static function is_proc_open_available() { 14 return ( \function_exists( 'proc_open' ) && ! in_array( 'proc_open', explode( ',', ini_get( 'disable_functions' ) ) ) ); 15 } 8 16 9 17 /** -
image-type-converter/trunk/includes/Utils/Img/ImgUtilsTrait.php
r2923240 r3147978 54 54 * @param string $image_path 55 55 * @return array|false 56 */ 56 */ 57 57 public static function get_image_specs( $image_path ) { 58 58 $img_details = self::get_imagesize( $image_path ); … … 339 339 $img_size = wp_getimagesize( $img_path ); 340 340 341 if ( is_array( $img_size ) && ( 0 !== $img_size[0] ) && ( 0 !== $img_size[1] ) ) {341 if ( is_array( $img_size ) && ( 0 !== $img_size[0] ) && ( 0 !== $img_size[1] ) && ! empty( $img_size['mime'] ) ) { 342 342 return $img_size; 343 343 } 344 344 345 345 346 // Failed, fallback to Imagick. 346 347 if ( self::is_imagick_enabled() ) { 347 348 try { 348 $imgick = new \Imagick( $img_path ); 349 $img_dim = $imgick->getImageGeometry(); 350 $img_size[0] = $img_dim['width']; 351 $img_size[1] = $img_dim['height']; 349 $img_size = array(); 350 $imgick = new \Imagick( $img_path ); 351 $img_dim = $imgick->getImageGeometry(); 352 $img_size[0] = $img_dim['width']; 353 $img_size[1] = $img_dim['height']; 354 $img_size['mime'] = $imgick->getImageMimeType(); 352 355 353 356 $imgick->clear(); 354 return $img_size;355 357 } catch ( \Exception $e ) { 356 358 // Do nothing for now. … … 368 370 private static function get_mimes() { 369 371 return array( 370 'jpg|jpeg|jpe' => 'image/jpeg', 371 'gif' => 'image/gif', 372 'png' => 'image/png', 373 'bmp' => 'image/bmp', 374 'tiff|tif' => 'image/tiff', 375 'webp' => 'image/webp', 376 'ico' => 'image/x-icon', 377 'heic' => 'image/heic', 378 'avif' => 'image/avif', 372 'jpg|jpeg|jpe' => 'image/jpeg', 373 'gif' => 'image/gif', 374 'png' => 'image/png', 375 'bmp' => 'image/bmp', 376 'tiff|tif' => 'image/tiff', 377 'webp' => 'image/webp', 378 'ico' => 'image/x-icon', 379 'heic' => 'image/heic', 380 'avif' => 'image/avif', 381 'svg' => 'image/svg+xml', 379 382 ); 380 383 } 384 385 /** 386 * Get New Table Row. 387 * 388 * @param int $image_id 389 * @return string 390 */ 391 private function get_new_table_row( $image_id ) { 392 require_once \ABSPATH . 'wp-admin/includes/class-wp-media-list-table.php'; 393 394 $GLOBALS['typenow'] = 'attachment'; // compatibility with https://wordpress.org/plugins/folders/ plugin media Quick Convert. 395 $media_table = new \WP_Media_List_Table(); 396 $post = get_post( $image_id ); 397 $post_owner = ( get_current_user_id() === (int) $post->post_author ) ? 'self' : 'other'; 398 setup_postdata( $post ); 399 $GLOBALS['post'] = $post; 400 setup_postdata( $post ); 401 ob_start(); 402 ?> 403 <tr id="post-<?php echo esc_attr( $post->ID ); ?>" class="<?php echo esc_attr( trim( ' author-' . $post_owner . ' status-' . $post->post_status ) ); ?>"> 404 <?php $media_table->single_row_columns( $post ); ?> 405 </tr> 406 <?php 407 wp_reset_postdata(); 408 return ob_get_clean(); 409 } 381 410 } -
image-type-converter/trunk/languages/image-type-converter.pot
r2923240 r3147978 1 # Copyright (C) 202 3GrandPlugins2 # This file is distributed under the same license as the Image Type Converter[[GrandPlugins]] plugin.1 # Copyright (C) 2024 GrandPlugins 2 # This file is distributed under the same license as the Image Converter & Optimizer [[GrandPlugins]] plugin. 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: Image Type Converter [[GrandPlugins]] 1.0.0\n"5 "Project-Id-Version: Image Converter & Optimizer [[GrandPlugins]] 1.0.3\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/gpls-wicor-image-converter\n" 7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 10 10 "Content-Type: text/plain; charset=UTF-8\n" 11 11 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 202 3-04-18T15:14:28+00:00\n"12 "POT-Creation-Date: 2024-09-07T11:36:14+00:00\n" 13 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 "X-Generator: WP-CLI 2. 6.0\n"14 "X-Generator: WP-CLI 2.10.0\n" 15 15 "X-Domain: image-type-converter\n" 16 16 17 17 #. Plugin Name of the plugin 18 msgid "Image Type Converter [[GrandPlugins]]" 18 #: C:\laragon\www\WPImageConverter\wp-content\plugins\gpls-wicor-image-converter\gpls-wicor-image-converter.php 19 msgid "Image Converter & Optimizer [[GrandPlugins]]" 19 20 msgstr "" 20 21 21 22 #. Description of the plugin 22 msgid "Convert Image Types easily in WP." 23 #: C:\laragon\www\WPImageConverter\wp-content\plugins\gpls-wicor-image-converter\gpls-wicor-image-converter.php 24 msgid "Convert Image Types and optimize it easily in WP." 23 25 msgstr "" 24 26 25 27 #. Author of the plugin 28 #: C:\laragon\www\WPImageConverter\wp-content\plugins\gpls-wicor-image-converter\gpls-wicor-image-converter.php 26 29 msgid "GrandPlugins" 27 30 msgstr "" 28 31 29 32 #. Author URI of the plugin 33 #: C:\laragon\www\WPImageConverter\wp-content\plugins\gpls-wicor-image-converter\gpls-wicor-image-converter.php 30 34 msgid "https://grandplugins.com" 31 35 msgstr "" 32 36 33 #: includes/ImageConverter.php:2 1337 #: includes/ImageConverter.php:239 34 38 msgid "Animated images are not supported yet." 35 39 msgstr "" 36 40 37 #: includes/ImageConverter.php:227 41 #: includes/ImageConverter.php:254 42 #: includes/ImageOptimizer.php:385 38 43 msgid "Image not found" 39 44 msgstr "" 40 45 41 #: includes/ImageConverter.php:2 6446 #: includes/ImageConverter.php:293 42 47 msgid "The image file doesn't exist!" 43 48 msgstr "" 44 49 45 #: includes/ImageConverter.php:376 46 msgid "Image type is not supported" 50 #: includes/ImageConverter.php:397 51 msgid "Target image type is unsupported" 52 msgstr "" 53 54 #: includes/ImageConverter.php:417 55 msgid "Image type is not supported. new extension: %s, image path: %s" 56 msgstr "" 57 58 #: includes/ImageOptimizer.php:362 59 msgid "Optimized" 60 msgstr "" 61 62 #: includes/ImageOptimizer.php:398 63 msgid "Optimization resulted in bigger image" 64 msgstr "" 65 66 #: includes/ImageOptimizer.php:433 67 msgid "No optimizer for image type" 68 msgstr "" 69 70 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:42 71 msgid "Image Optimizations History [GrandPlugins]" 72 msgstr "" 73 74 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:81 75 msgid "Optimization History" 76 msgstr "" 77 78 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:95 79 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:94 80 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:91 81 msgid "Size" 82 msgstr "" 83 84 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:109 85 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:126 86 msgid "Date" 87 msgstr "" 88 89 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:120 90 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:137 91 msgid "Context" 92 msgstr "" 93 94 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:123 95 msgid " optimize" 96 msgstr "" 97 98 #: includes/MetaBoxes/ImageOptimizationHistoryMetaBox.php:135 99 msgid "No optimizations yet!" 47 100 msgstr "" 48 101 … … 55 108 msgstr "" 56 109 57 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:9458 msgid "Size"59 msgstr ""60 61 110 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:102 62 111 msgid "Type" … … 67 116 msgstr "" 68 117 69 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:12670 msgid "Date"71 msgstr ""72 73 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:13774 msgid "Context"75 msgstr ""76 77 118 #: includes/MetaBoxes/ImgConversionHistoryMetaBox.php:140 78 119 msgid " convert" … … 83 124 msgstr "" 84 125 85 #: includes/MetaBoxes/ImgConverterMetaBox.php:4 1126 #: includes/MetaBoxes/ImgConverterMetaBox.php:42 86 127 msgid "Image Type Converter [GrandPlugins]" 87 128 msgstr "" 88 129 89 #: includes/MetaBoxes/ImgConverterMetaBox.php: 69130 #: includes/MetaBoxes/ImgConverterMetaBox.php:71 90 131 msgid "You are about to convert the image type, proceed?" 132 msgstr "" 133 134 #: includes/MetaBoxes/ImgConverterMetaBox.php:72 135 msgid "The image will be optimized, proceed?" 136 msgstr "" 137 138 #: includes/MetaBoxes/ImgConverterMetaBox.php:183 139 #: includes/QuickImageConverter.php:145 140 msgid "Image type has been converted successfully" 141 msgstr "" 142 143 #: includes/MetaBoxes/ImgOptimizerMetaBox.php:42 144 msgid "Image Optimizer [GrandPlugins]" 145 msgstr "" 146 147 #: includes/MetaBoxes/ImgOptimizerMetaBox.php:109 148 msgid "Failed to fetch image details" 149 msgstr "" 150 151 #: includes/MetaBoxes/ImgOptimizerMetaBox.php:119 152 msgid "Image type optimizer is not installed" 153 msgstr "" 154 155 #: includes/MetaBoxes/ImgOptimizerMetaBox.php:138 156 msgid "Image has been optimized successfully" 91 157 msgstr "" 92 158 … … 95 161 msgstr "" 96 162 163 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:89 164 msgid "Dimensions" 165 msgstr "" 166 167 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:99 168 msgid "Optimization history" 169 msgstr "" 170 171 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:101 172 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:116 173 msgid "Old Size" 174 msgstr "" 175 176 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:103 177 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:118 178 msgid "New Size" 179 msgstr "" 180 181 #: includes/MetaBoxes/ImgSubsizesMetaBox.php:114 182 msgid "Conversion history" 183 msgstr "" 184 97 185 #: includes/Modules/SelectImages/SelectImagesModule.php:84 98 186 msgid "Select images" … … 148 236 149 237 #: includes/Pages/SettingsPage.php:67 238 #: includes/Templates/metaboxes/img-optimizer-metabox-template.php:29 150 239 msgid "Status" 151 240 msgstr "" … … 167 256 msgstr "" 168 257 169 #: includes/Settings/Fields/settings-fields.php:19 170 msgid "Enable" 171 msgstr "" 172 173 #: includes/Settings/Fields/settings-fields.php:22 174 msgid "Enable Auto Conversion" 175 msgstr "" 176 177 #: includes/Settings/Fields/settings-fields.php:29 178 msgid "Conversion Type" 179 msgstr "" 180 181 #: includes/Settings/Fields/settings-fields.php:36 182 msgid "General Conversion" 183 msgstr "" 184 185 #: includes/Settings/Fields/settings-fields.php:37 186 msgid "Convert all images to single image type" 187 msgstr "" 188 189 #: includes/Settings/Fields/settings-fields.php:41 190 msgid "Custom Conversion" 191 msgstr "" 192 193 #: includes/Settings/Fields/settings-fields.php:42 194 msgid "Make custom conversions" 195 msgstr "" 196 197 #: includes/Settings/Fields/settings-fields.php:52 198 msgid "Target Type to convert all uploaded images to" 199 msgstr "" 200 201 #: includes/Settings/Fields/settings-fields.php:82 202 msgid "Uploaded image type" 203 msgstr "" 204 205 #: includes/Settings/Fields/settings-fields.php:90 206 msgid "Target conversion type" 207 msgstr "" 208 258 #: includes/Pages/SettingsPage.php:82 259 msgid "Auto Optimize" 260 msgstr "" 261 262 #: includes/Pages/SettingsPage.php:83 263 msgid "Optimize images automatically on upload" 264 msgstr "" 265 266 #: includes/Pages/SettingsPage.php:87 267 msgid "Bulk Optimize" 268 msgstr "" 269 270 #: includes/Pages/SettingsPage.php:88 271 msgid "Optimize images in bulk" 272 msgstr "" 273 274 #: includes/QuickImageConverter.php:93 209 275 #: includes/Templates/metaboxes/img-converter-metabox-template.php:36 210 276 msgid "Convert To:" 211 277 msgstr "" 212 278 213 #: includes/Templates/metaboxes/img-converter-metabox-template.php:58 279 #: includes/QuickImageConverter.php:98 280 #: includes/Templates/metaboxes/img-converter-metabox-template.php:57 281 #: includes/Templates/metaboxes/img-optimizer-metabox-template.php:46 282 msgid "Quality:" 283 msgstr "" 284 285 #: includes/QuickImageConverter.php:103 286 msgid "Keep file extension:" 287 msgstr "" 288 289 #: includes/QuickImageConverter.php:130 290 msgid "Invalid image type!" 291 msgstr "" 292 293 #: includes/QuickImageConverter.php:202 294 msgid "Convert" 295 msgstr "" 296 297 #: includes/QuickImageConverter.php:216 298 msgid "Quick Image type converter" 299 msgstr "" 300 301 #: includes/QuickImageConverter.php:251 302 msgid "Image type:" 303 msgstr "" 304 305 #: includes/Settings/Fields/settings-fields.php:20 306 #: includes/Settings/Fields/settings-fields.php:73 307 msgid "Enable" 308 msgstr "" 309 310 #: includes/Settings/Fields/settings-fields.php:23 311 msgid "Enable Auto Conversion" 312 msgstr "" 313 314 #: includes/Settings/Fields/settings-fields.php:30 315 msgid "Conversion Type" 316 msgstr "" 317 318 #: includes/Settings/Fields/settings-fields.php:37 319 msgid "General Conversion" 320 msgstr "" 321 322 #: includes/Settings/Fields/settings-fields.php:38 323 msgid "Convert all images to single image type" 324 msgstr "" 325 326 #: includes/Settings/Fields/settings-fields.php:42 327 msgid "Custom Conversion" 328 msgstr "" 329 330 #: includes/Settings/Fields/settings-fields.php:43 331 msgid "Make custom conversions" 332 msgstr "" 333 334 #: includes/Settings/Fields/settings-fields.php:53 335 msgid "Target Type to convert all uploaded images to" 336 msgstr "" 337 338 #: includes/Settings/Fields/settings-fields.php:76 339 msgid "Enable Auto Optimization" 340 msgstr "" 341 342 #: includes/Settings/Fields/settings-fields.php:83 343 msgid "Optimization Type" 344 msgstr "" 345 346 #: includes/Settings/Fields/settings-fields.php:90 347 msgid "General Optimization" 348 msgstr "" 349 350 #: includes/Settings/Fields/settings-fields.php:91 351 msgid "Optimize all images" 352 msgstr "" 353 354 #: includes/Settings/Fields/settings-fields.php:95 355 msgid "Custom Optimization" 356 msgstr "" 357 358 #: includes/Settings/Fields/settings-fields.php:96 359 msgid "Make optimization to specific image types" 360 msgstr "" 361 362 #: includes/Settings/Fields/settings-fields.php:107 363 msgid "Quality" 364 msgstr "" 365 366 #: includes/Templates/metaboxes/img-converter-metabox-template.php:63 367 #: includes/Templates/metaboxes/img-optimizer-metabox-template.php:52 368 msgid "note: setting high quality near to 100 may result in a bigger image size." 369 msgstr "" 370 371 #: includes/Templates/metaboxes/img-converter-metabox-template.php:72 214 372 msgid "Keep file extension?" 215 373 msgstr "" 216 374 217 #: includes/Templates/metaboxes/img-converter-metabox-template.php: 65375 #: includes/Templates/metaboxes/img-converter-metabox-template.php:79 218 376 msgid "This option will keep the same old image file extension after conversion. This will keep the same image URL without change." 377 msgstr "" 378 379 #. translators: %s Status Page link 380 #: includes/Templates/metaboxes/img-optimizer-metabox-template.php:28 381 msgid "Image type optimizer is not installed, Please check %s page for more details!" 219 382 msgstr "" 220 383 … … 239 402 msgstr "" 240 403 241 #: includes/Templates/pages/status-template.php:106 404 #. translators: 1: GD Library name 2: Imagemagick Library name. 405 #: includes/Templates/pages/status-template.php:110 242 406 msgid "AVIF requires %1$s compiled with AVIF support OR %2$s at least. please contact your hosting support regarding that." 243 407 msgstr "" 244 408 245 #: includes/Templates/pages/status-template.php:112 409 #. translators: %s: AVIF support Plugin name 410 #: includes/Templates/pages/status-template.php:121 246 411 msgid "AVIF images are not allowed for upload. If you want to upload and use AVIF images, we recommend our plugin %s" 247 412 msgstr "" 413 414 #: includes/Templates/pages/status-template.php:129 415 msgid "Optimizers status" 416 msgstr "" 417 418 #: includes/Templates/pages/status-template.php:135 419 msgid "proc_open() function seems not available, Optimizers rely on this function. please contact your hosting support if it can be enabled or consider upgrading to a higher hosting plan" 420 msgstr "" 421 422 #: includes/Templates/pages/status-template.php:169 423 msgid "Image type Target" 424 msgstr "" 425 426 #: includes/Templates/pages/status-template.php:184 427 msgid "Install commands" 428 msgstr "" -
image-type-converter/trunk/readme.txt
r3087171 r3147978 1 === Image Type Converter ===2 Tags: image converter, image type, image subsizes, png, jpg, gif, webp, avif3 Tested up to: 6. 51 === Image Converter & Optimizer === 2 Tags: image converter, optimize image, image type, image subsizes, png, jpg, gif, webp, avif 3 Tested up to: 6.6 4 4 Requires at least: 5.3.0 5 5 Requires PHP: 7.1.0 6 Stable Tag: 1.0. 27 Version: 1.0. 26 Stable Tag: 1.0.3 7 Version: 1.0.3 8 8 Contributors: grandplugins 9 9 Author: GrandPlugins … … 56 56 == Check Our other plugins == 57 57 58 [Woo instock Notifier](https://grandplugins.com/product/woo-instock-notifier/)59 58 60 [Woo Gift Cards](https://grandplugins.com/product/woo-gift-cards/?utm_source=free&utm_medium=gpls-avfstw-avif-support)59 [Woo Order Splitter](https://grandplugins.com/product/woo-order-splitter/?utm_source=free&utm_medium=wp-image-converter) 61 60 62 [Woo Restrict Orders](https://grandplugins.com/product/woo-restrict-orders/?utm_source=free&utm_medium=gpls-avfstw-avif-support)61 [Woo User Orders Limit](https://grandplugins.com/product/woo-user-orders-limit/?utm_source=free&utm_medium=wp-image-converter) 63 62 64 [Woo Bulk Price & Stock Manager](https://grandplugins.com/product/woo-bulk-price-change/?utm_source=free&utm_medium=gpls-avfstw-avif-support)63 [Woo Conditional Gateway](https://grandplugins.com/product/woo-conditional-gateways/?utm_source=free&utm_medium=wp-image-converter) 65 64 66 [W oo Variation Sold individually](https://grandplugins.com/product/woo-variation-sold-individually/?utm_source=free&utm_medium=gpls-avfstw-avif-support)65 [WP DB Controller](https://grandplugins.com/product/wp-db-controller/?utm_source=free&utm_medium=wp-image-converter) 67 66 68 [Woo Paddle Checkout](https://grandplugins.com/product/woo-paddle-checkout/?utm_source=free&utm_medium=gpls-avfstw-avif-support)67 [Woo Lemonsqueezy Gateway](https://grandplugins.com/product/woo-lemonsqueezy-gateway/?utm_source=free&utm_medium=wp-image-converter) 69 68 70 [Woo Sales notifications](https://grandplugins.com/product/woo-sales-notification/?utm_source=free&utm_medium=gpls-avfstw-avif-support)69 [Woo instock Notifier](https://grandplugins.com/product/woo-instock-notifier/?utm_source=free&utm_medium=wp-image-converter) 71 70 72 [Woo Real time Cart Tracker](https://grandplugins.com/product/woo-cart-tracker/?utm_source=free&utm_medium=gpls-avfstw-avif-support)71 [Woo Gift Cards](https://grandplugins.com/product/woo-gift-cards/?utm_source=free&utm_medium=wp-image-converter) 73 72 74 [Woo Best Sellers](https://grandplugins.com/product/woo-best-seller/?utm_source=free&utm_medium=gpls-avfstw-avif-support)73 [Woo Restrict Orders](https://grandplugins.com/product/woo-restrict-orders/?utm_source=free&utm_medium=wp-image-converter) 75 74 76 [ Advanced Captcha](https://grandplugins.com/product/woo-advanced-captcha/?utm_source=free&utm_medium=gpls-avfstw-avif-support)75 [Woo Bulk Price & Stock Manager](https://grandplugins.com/product/woo-bulk-price-change/?utm_source=free&utm_medium=wp-image-converter) 77 76 78 [Woo Commerce Advanced Bundles](https://grandplugins.com/product/woo-advanced-add-to-cart/?utm_source=free&utm_medium=gpls-avfstw-avif-support)77 [Woo Variation Sold individually](https://grandplugins.com/product/woo-variation-sold-individually/?utm_source=free&utm_medium=wp-image-converter) 79 78 80 [Woo Commerce Advanced Pricing - Discounts & Quantity Swatches](https://grandplugins.com/product/woo-advanced-pricing/?utm_source=free&utm_medium=gpls-avfstw-avif-support)79 [Woo Paddle Checkout](https://grandplugins.com/product/woo-paddle-checkout/?utm_source=free&utm_medium=wp-image-converter) 81 80 82 [ Image Sizes Controller](https://wordpress.org/plugins/image-sizes-controller/)81 [Woo Sales notifications](https://grandplugins.com/product/woo-sales-notification/?utm_source=free&utm_medium=wp-image-converter) 83 82 84 [Woo Commerce Cart Limiter](https://wordpress.org/plugins/cart-limiter/)83 [Woo Real time Cart Tracker](https://grandplugins.com/product/woo-cart-tracker/?utm_source=free&utm_medium=wp-image-converter) 85 84 86 [W P Watermark Images](https://wordpress.org/plugins/watermark-images-for-wp-and-woo-grandpluginswp/)85 [Woo Best Sellers](https://grandplugins.com/product/woo-best-seller/?utm_source=free&utm_medium=wp-image-converter) 87 86 88 [ Coming Soon Products for WooCommerce](https://wordpress.org/plugins/coming-soon-products-for-woocommerce)87 [Advanced Captcha](https://grandplugins.com/product/woo-advanced-captcha/?utm_source=free&utm_medium=wp-image-converter) 89 88 90 [WooCommerce Cart and Order Limiter](https://wordpress.org/plugins/cart-limiter/)89 [WooCommerce Advanced Bundles](https://grandplugins.com/product/woo-advanced-add-to-cart/?utm_source=free&utm_medium=wp-image-converter) 91 90 92 [W atermark PDF](https://wordpress.org/plugins/watermark-pdf/)91 [WooCommerce Advanced Pricing - Discounts & Quantity Swatches](https://grandplugins.com/product/woo-advanced-pricing/?utm_source=free&utm_medium=wp-image-converter) 93 92 94 [ Quick View and Buy Now for WooCommerce](https://wordpress.org/plugins/quick-view-and-buy-now-for-woocommerce/)93 [Image Sizes Controller](https://wordpress.org/plugins/image-sizes-controller/?utm_source=free&utm_medium=wp-image-converter) 95 94 96 [WooCommerce Maintenance Mode](https://wordpress.org/plugins/ultimate-maintenance-mode-for-woocommerce/)95 [WooCommerce Cart Limiter](https://wordpress.org/plugins/cart-limiter/?utm_source=free&utm_medium=wp-image-converter) 97 96 98 [ Sidebars Gutenberg Blocks](https://wordpress.org/plugins/sidebars-blocks/)97 [WP Watermark Images](https://wordpress.org/plugins/watermark-images-for-wp-and-woo-grandpluginswp/?utm_source=free&utm_medium=wp-image-converter) 99 98 100 [ Large Images Uploader](https://wordpress.org/plugins/large-images-uploader/)99 [Coming Soon Products for WooCommerce](https://wordpress.org/plugins/coming-soon-products-for-woocommerce/?utm_source=free&utm_medium=wp-image-converter) 101 100 102 [ Maintenance Mode for WooCommerce](https://wordpress.org/plugins/ultimate-maintenance-mode-for-woocommerce/)101 [WooCommerce Cart and Order Limiter](https://wordpress.org/plugins/cart-limiter/?utm_source=free&utm_medium=wp-image-converter) 103 102 104 [ Single Ajax Add to Cart For WooCommerce](https://wordpress.org/plugins/ajax-single-add-to-cart-for-woocommerce/)103 [Watermark PDF](https://wordpress.org/plugins/watermark-pdf/?utm_source=free&utm_medium=wp-image-converter) 105 104 106 [ GIF Uploader](https://wordpress.org/plugins/gif-uploader-wp-grandplugins)105 [Quick View and Buy Now for WooCommerce](https://wordpress.org/plugins/quick-view-and-buy-now-for-woocommerce/?utm_source=free&utm_medium=wp-image-converter) 107 106 108 [ PDF Password Protect](https://wordpress.org/plugins/pdf-password-protect/)107 [WooCommerce Maintenance Mode](https://wordpress.org/plugins/ultimate-maintenance-mode-for-woocommerce/?utm_source=free&utm_medium=wp-image-converter) 109 108 110 [Paypal Subscriptions](https://wordpress.org/plugins/gpls-paypal-subscriptions/) 109 [Sidebars Gutenberg Blocks](https://wordpress.org/plugins/sidebars-blocks/?utm_source=free&utm_medium=wp-image-converter) 110 111 [Large Images Uploader](https://wordpress.org/plugins/large-images-uploader/?utm_source=free&utm_medium=wp-image-converter) 112 113 [Maintenance Mode for WooCommerce](https://wordpress.org/plugins/ultimate-maintenance-mode-for-woocommerce/?utm_source=free&utm_medium=wp-image-converter) 114 115 [Single Ajax Add to Cart For WooCommerce](https://wordpress.org/plugins/ajax-single-add-to-cart-for-woocommerce/?utm_source=free&utm_medium=wp-image-converter) 116 117 [GIF Uploader](https://wordpress.org/plugins/gif-uploader-wp-grandplugins/?utm_source=free&utm_medium=wp-image-converter) 118 119 [PDF Password Protect](https://wordpress.org/plugins/pdf-password-protect/?utm_source=free&utm_medium=wp-image-converter) 120 121 [Paypal Subscriptions](https://wordpress.org/plugins/gpls-paypal-subscriptions/?utm_source=free&utm_medium=wp-image-converter) 111 122 112 123 [WP Plugin Creator](https://wpplugincreator.com) -
image-type-converter/trunk/vendor/autoload.php
r2923240 r3147978 3 3 // autoload.php @generated by Composer 4 4 5 if (PHP_VERSION_ID < 50600) { 6 if (!headers_sent()) { 7 header('HTTP/1.1 500 Internal Server Error'); 8 } 9 $err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL; 10 if (!ini_get('display_errors')) { 11 if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') { 12 fwrite(STDERR, $err); 13 } elseif (!headers_sent()) { 14 echo $err; 15 } 16 } 17 trigger_error( 18 $err, 19 E_USER_ERROR 20 ); 21 } 22 5 23 require_once __DIR__ . '/composer/autoload_real.php'; 6 24 -
image-type-converter/trunk/vendor/composer/ClassLoader.php
r2923240 r3147978 43 43 class ClassLoader 44 44 { 45 /** @var \Closure(string):void */ 46 private static $includeFile; 47 48 /** @var string|null */ 49 private $vendorDir; 50 45 51 // PSR-4 52 /** 53 * @var array<string, array<string, int>> 54 */ 46 55 private $prefixLengthsPsr4 = array(); 56 /** 57 * @var array<string, list<string>> 58 */ 47 59 private $prefixDirsPsr4 = array(); 60 /** 61 * @var list<string> 62 */ 48 63 private $fallbackDirsPsr4 = array(); 49 64 50 65 // PSR-0 66 /** 67 * List of PSR-0 prefixes 68 * 69 * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) 70 * 71 * @var array<string, array<string, list<string>>> 72 */ 51 73 private $prefixesPsr0 = array(); 74 /** 75 * @var list<string> 76 */ 52 77 private $fallbackDirsPsr0 = array(); 53 78 79 /** @var bool */ 54 80 private $useIncludePath = false; 81 82 /** 83 * @var array<string, string> 84 */ 55 85 private $classMap = array(); 86 87 /** @var bool */ 56 88 private $classMapAuthoritative = false; 89 90 /** 91 * @var array<string, bool> 92 */ 57 93 private $missingClasses = array(); 94 95 /** @var string|null */ 58 96 private $apcuPrefix; 59 97 98 /** 99 * @var array<string, self> 100 */ 101 private static $registeredLoaders = array(); 102 103 /** 104 * @param string|null $vendorDir 105 */ 106 public function __construct($vendorDir = null) 107 { 108 $this->vendorDir = $vendorDir; 109 self::initializeIncludeClosure(); 110 } 111 112 /** 113 * @return array<string, list<string>> 114 */ 60 115 public function getPrefixes() 61 116 { … … 67 122 } 68 123 124 /** 125 * @return array<string, list<string>> 126 */ 69 127 public function getPrefixesPsr4() 70 128 { … … 72 130 } 73 131 132 /** 133 * @return list<string> 134 */ 74 135 public function getFallbackDirs() 75 136 { … … 77 138 } 78 139 140 /** 141 * @return list<string> 142 */ 79 143 public function getFallbackDirsPsr4() 80 144 { … … 82 146 } 83 147 148 /** 149 * @return array<string, string> Array of classname => path 150 */ 84 151 public function getClassMap() 85 152 { … … 88 155 89 156 /** 90 * @param array $classMap Class to filename map 157 * @param array<string, string> $classMap Class to filename map 158 * 159 * @return void 91 160 */ 92 161 public function addClassMap(array $classMap) … … 103 172 * appending or prepending to the ones previously set for this prefix. 104 173 * 105 * @param string $prefix The prefix 106 * @param array|string $paths The PSR-0 root directories 107 * @param bool $prepend Whether to prepend the directories 174 * @param string $prefix The prefix 175 * @param list<string>|string $paths The PSR-0 root directories 176 * @param bool $prepend Whether to prepend the directories 177 * 178 * @return void 108 179 */ 109 180 public function add($prefix, $paths, $prepend = false) 110 181 { 182 $paths = (array) $paths; 111 183 if (!$prefix) { 112 184 if ($prepend) { 113 185 $this->fallbackDirsPsr0 = array_merge( 114 (array)$paths,186 $paths, 115 187 $this->fallbackDirsPsr0 116 188 ); … … 118 190 $this->fallbackDirsPsr0 = array_merge( 119 191 $this->fallbackDirsPsr0, 120 (array)$paths192 $paths 121 193 ); 122 194 } … … 127 199 $first = $prefix[0]; 128 200 if (!isset($this->prefixesPsr0[$first][$prefix])) { 129 $this->prefixesPsr0[$first][$prefix] = (array)$paths;201 $this->prefixesPsr0[$first][$prefix] = $paths; 130 202 131 203 return; … … 133 205 if ($prepend) { 134 206 $this->prefixesPsr0[$first][$prefix] = array_merge( 135 (array)$paths,207 $paths, 136 208 $this->prefixesPsr0[$first][$prefix] 137 209 ); … … 139 211 $this->prefixesPsr0[$first][$prefix] = array_merge( 140 212 $this->prefixesPsr0[$first][$prefix], 141 (array)$paths213 $paths 142 214 ); 143 215 } … … 148 220 * appending or prepending to the ones previously set for this namespace. 149 221 * 150 * @param string $prefix The prefix/namespace, with trailing '\\'151 * @param array|string $paths The PSR-4 base directories152 * @param bool $prepend Whether to prepend the directories222 * @param string $prefix The prefix/namespace, with trailing '\\' 223 * @param list<string>|string $paths The PSR-4 base directories 224 * @param bool $prepend Whether to prepend the directories 153 225 * 154 226 * @throws \InvalidArgumentException 227 * 228 * @return void 155 229 */ 156 230 public function addPsr4($prefix, $paths, $prepend = false) 157 231 { 232 $paths = (array) $paths; 158 233 if (!$prefix) { 159 234 // Register directories for the root namespace. 160 235 if ($prepend) { 161 236 $this->fallbackDirsPsr4 = array_merge( 162 (array)$paths,237 $paths, 163 238 $this->fallbackDirsPsr4 164 239 ); … … 166 241 $this->fallbackDirsPsr4 = array_merge( 167 242 $this->fallbackDirsPsr4, 168 (array)$paths243 $paths 169 244 ); 170 245 } … … 176 251 } 177 252 $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; 178 $this->prefixDirsPsr4[$prefix] = (array)$paths;253 $this->prefixDirsPsr4[$prefix] = $paths; 179 254 } elseif ($prepend) { 180 255 // Prepend directories for an already registered namespace. 181 256 $this->prefixDirsPsr4[$prefix] = array_merge( 182 (array)$paths,257 $paths, 183 258 $this->prefixDirsPsr4[$prefix] 184 259 ); … … 187 262 $this->prefixDirsPsr4[$prefix] = array_merge( 188 263 $this->prefixDirsPsr4[$prefix], 189 (array)$paths264 $paths 190 265 ); 191 266 } … … 196 271 * replacing any others previously set for this prefix. 197 272 * 198 * @param string $prefix The prefix 199 * @param array|string $paths The PSR-0 base directories 273 * @param string $prefix The prefix 274 * @param list<string>|string $paths The PSR-0 base directories 275 * 276 * @return void 200 277 */ 201 278 public function set($prefix, $paths) … … 212 289 * replacing any others previously set for this namespace. 213 290 * 214 * @param string $prefix The prefix/namespace, with trailing '\\'215 * @param array|string $paths The PSR-4 base directories291 * @param string $prefix The prefix/namespace, with trailing '\\' 292 * @param list<string>|string $paths The PSR-4 base directories 216 293 * 217 294 * @throws \InvalidArgumentException 295 * 296 * @return void 218 297 */ 219 298 public function setPsr4($prefix, $paths) … … 235 314 * 236 315 * @param bool $useIncludePath 316 * 317 * @return void 237 318 */ 238 319 public function setUseIncludePath($useIncludePath) … … 257 338 * 258 339 * @param bool $classMapAuthoritative 340 * 341 * @return void 259 342 */ 260 343 public function setClassMapAuthoritative($classMapAuthoritative) … … 277 360 * 278 361 * @param string|null $apcuPrefix 362 * 363 * @return void 279 364 */ 280 365 public function setApcuPrefix($apcuPrefix) … … 297 382 * 298 383 * @param bool $prepend Whether to prepend the autoloader or not 384 * 385 * @return void 299 386 */ 300 387 public function register($prepend = false) 301 388 { 302 389 spl_autoload_register(array($this, 'loadClass'), true, $prepend); 390 391 if (null === $this->vendorDir) { 392 return; 393 } 394 395 if ($prepend) { 396 self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders; 397 } else { 398 unset(self::$registeredLoaders[$this->vendorDir]); 399 self::$registeredLoaders[$this->vendorDir] = $this; 400 } 303 401 } 304 402 305 403 /** 306 404 * Unregisters this instance as an autoloader. 405 * 406 * @return void 307 407 */ 308 408 public function unregister() 309 409 { 310 410 spl_autoload_unregister(array($this, 'loadClass')); 411 412 if (null !== $this->vendorDir) { 413 unset(self::$registeredLoaders[$this->vendorDir]); 414 } 311 415 } 312 416 … … 315 419 * 316 420 * @param string $class The name of the class 317 * @return bool|null True if loaded, null otherwise421 * @return true|null True if loaded, null otherwise 318 422 */ 319 423 public function loadClass($class) 320 424 { 321 425 if ($file = $this->findFile($class)) { 322 includeFile($file); 426 $includeFile = self::$includeFile; 427 $includeFile($file); 323 428 324 429 return true; 325 430 } 431 432 return null; 326 433 } 327 434 … … 368 475 } 369 476 477 /** 478 * Returns the currently registered loaders keyed by their corresponding vendor directories. 479 * 480 * @return array<string, self> 481 */ 482 public static function getRegisteredLoaders() 483 { 484 return self::$registeredLoaders; 485 } 486 487 /** 488 * @param string $class 489 * @param string $ext 490 * @return string|false 491 */ 370 492 private function findFileWithExtension($class, $ext) 371 493 { … … 433 555 return false; 434 556 } 557 558 /** 559 * @return void 560 */ 561 private static function initializeIncludeClosure() 562 { 563 if (self::$includeFile !== null) { 564 return; 565 } 566 567 /** 568 * Scope isolated include. 569 * 570 * Prevents access to $this/self from included files. 571 * 572 * @param string $file 573 * @return void 574 */ 575 self::$includeFile = \Closure::bind(static function($file) { 576 include $file; 577 }, null, null); 578 } 435 579 } 436 437 /**438 * Scope isolated include.439 *440 * Prevents access to $this/self from included files.441 */442 function includeFile($file)443 {444 include $file;445 } -
image-type-converter/trunk/vendor/composer/autoload_classmap.php
r2923240 r3147978 3 3 // autoload_classmap.php @generated by Composer 4 4 5 $vendorDir = dirname( dirname(__FILE__));5 $vendorDir = dirname(__DIR__); 6 6 $baseDir = dirname($vendorDir); 7 7 … … 11 11 'GPLSCore\\GPLS_PLUGIN_WICOR\\Core\\Core' => $baseDir . '/includes/Core/Core.php', 12 12 'GPLSCore\\GPLS_PLUGIN_WICOR\\ImageConverter' => $baseDir . '/includes/ImageConverter.php', 13 'GPLSCore\\GPLS_PLUGIN_WICOR\\ImageOptimizer' => $baseDir . '/includes/ImageOptimizer.php', 13 14 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\ImgConversionHistoryMetaBox' => $baseDir . '/includes/MetaBoxes/ImgConversionHistoryMetaBox.php', 14 15 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\ImgConverterMetaBox' => $baseDir . '/includes/MetaBoxes/ImgConverterMetaBox.php', 15 16 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\ImgSubsizesMetaBox' => $baseDir . '/includes/MetaBoxes/ImgSubsizesMetaBox.php', 16 17 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\MetaBoxesBase\\MetaBox' => $baseDir . '/includes/MetaBoxes/MetaBoxesBase/MetaBox.php', 17 'GPLSCore\\GPLS_PLUGIN_WICOR\\Modules\\SelectImages\\Queries' => $baseDir . '/includes/Modules/SelectImages/Queries.php',18 18 'GPLSCore\\GPLS_PLUGIN_WICOR\\Modules\\SelectImages\\SelectImagesModule' => $baseDir . '/includes/Modules/SelectImages/SelectImagesModule.php', 19 19 'GPLSCore\\GPLS_PLUGIN_WICOR\\Pages\\PagesBase\\AdminPage' => $baseDir . '/includes/Pages/PagesBase/AdminPage.php', 20 20 'GPLSCore\\GPLS_PLUGIN_WICOR\\Pages\\SettingsPage' => $baseDir . '/includes/Pages/SettingsPage.php', 21 21 'GPLSCore\\GPLS_PLUGIN_WICOR\\Plugin' => $baseDir . '/includes/Plugin.php', 22 'GPLSCore\\GPLS_PLUGIN_WICOR\\QuickImageConverter' => $baseDir . '/includes/QuickImageConverter.php', 22 23 'GPLSCore\\GPLS_PLUGIN_WICOR\\Settings\\MainSettings' => $baseDir . '/includes/Settings/MainSettings.php', 23 24 'GPLSCore\\GPLS_PLUGIN_WICOR\\Settings\\SettingsBase\\Settings' => $baseDir . '/includes/Settings/SettingsBase/Settings.php', … … 39 40 'GPLSCore\\GPLS_PLUGIN_WICOR\\Utils\\Img\\ImgUtilsTrait' => $baseDir . '/includes/Utils/Img/ImgUtilsTrait.php', 40 41 'GPLSCore\\GPLS_PLUGIN_WICOR\\Utils\\NoticeUtilsTrait' => $baseDir . '/includes/Utils/NoticeUtilsTrait.php', 42 'Psr\\Log\\AbstractLogger' => $vendorDir . '/psr/log/src/AbstractLogger.php', 43 'Psr\\Log\\InvalidArgumentException' => $vendorDir . '/psr/log/src/InvalidArgumentException.php', 44 'Psr\\Log\\LogLevel' => $vendorDir . '/psr/log/src/LogLevel.php', 45 'Psr\\Log\\LoggerAwareInterface' => $vendorDir . '/psr/log/src/LoggerAwareInterface.php', 46 'Psr\\Log\\LoggerAwareTrait' => $vendorDir . '/psr/log/src/LoggerAwareTrait.php', 47 'Psr\\Log\\LoggerInterface' => $vendorDir . '/psr/log/src/LoggerInterface.php', 48 'Psr\\Log\\LoggerTrait' => $vendorDir . '/psr/log/src/LoggerTrait.php', 49 'Psr\\Log\\NullLogger' => $vendorDir . '/psr/log/src/NullLogger.php', 50 'Spatie\\ImageOptimizer\\DummyLogger' => $vendorDir . '/spatie/image-optimizer/src/DummyLogger.php', 51 'Spatie\\ImageOptimizer\\Image' => $vendorDir . '/spatie/image-optimizer/src/Image.php', 52 'Spatie\\ImageOptimizer\\Optimizer' => $vendorDir . '/spatie/image-optimizer/src/Optimizer.php', 53 'Spatie\\ImageOptimizer\\OptimizerChain' => $vendorDir . '/spatie/image-optimizer/src/OptimizerChain.php', 54 'Spatie\\ImageOptimizer\\OptimizerChainFactory' => $vendorDir . '/spatie/image-optimizer/src/OptimizerChainFactory.php', 55 'Spatie\\ImageOptimizer\\Optimizers\\Avifenc' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Avifenc.php', 56 'Spatie\\ImageOptimizer\\Optimizers\\BaseOptimizer' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/BaseOptimizer.php', 57 'Spatie\\ImageOptimizer\\Optimizers\\Cwebp' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Cwebp.php', 58 'Spatie\\ImageOptimizer\\Optimizers\\Gifsicle' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Gifsicle.php', 59 'Spatie\\ImageOptimizer\\Optimizers\\Jpegoptim' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Jpegoptim.php', 60 'Spatie\\ImageOptimizer\\Optimizers\\Optipng' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Optipng.php', 61 'Spatie\\ImageOptimizer\\Optimizers\\Pngquant' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Pngquant.php', 62 'Spatie\\ImageOptimizer\\Optimizers\\Svgo' => $vendorDir . '/spatie/image-optimizer/src/Optimizers/Svgo.php', 63 'Symfony\\Component\\Process\\Exception\\ExceptionInterface' => $vendorDir . '/symfony/process/Exception/ExceptionInterface.php', 64 'Symfony\\Component\\Process\\Exception\\InvalidArgumentException' => $vendorDir . '/symfony/process/Exception/InvalidArgumentException.php', 65 'Symfony\\Component\\Process\\Exception\\LogicException' => $vendorDir . '/symfony/process/Exception/LogicException.php', 66 'Symfony\\Component\\Process\\Exception\\ProcessFailedException' => $vendorDir . '/symfony/process/Exception/ProcessFailedException.php', 67 'Symfony\\Component\\Process\\Exception\\ProcessSignaledException' => $vendorDir . '/symfony/process/Exception/ProcessSignaledException.php', 68 'Symfony\\Component\\Process\\Exception\\ProcessTimedOutException' => $vendorDir . '/symfony/process/Exception/ProcessTimedOutException.php', 69 'Symfony\\Component\\Process\\Exception\\RunProcessFailedException' => $vendorDir . '/symfony/process/Exception/RunProcessFailedException.php', 70 'Symfony\\Component\\Process\\Exception\\RuntimeException' => $vendorDir . '/symfony/process/Exception/RuntimeException.php', 71 'Symfony\\Component\\Process\\ExecutableFinder' => $vendorDir . '/symfony/process/ExecutableFinder.php', 72 'Symfony\\Component\\Process\\InputStream' => $vendorDir . '/symfony/process/InputStream.php', 73 'Symfony\\Component\\Process\\Messenger\\RunProcessContext' => $vendorDir . '/symfony/process/Messenger/RunProcessContext.php', 74 'Symfony\\Component\\Process\\Messenger\\RunProcessMessage' => $vendorDir . '/symfony/process/Messenger/RunProcessMessage.php', 75 'Symfony\\Component\\Process\\Messenger\\RunProcessMessageHandler' => $vendorDir . '/symfony/process/Messenger/RunProcessMessageHandler.php', 76 'Symfony\\Component\\Process\\PhpExecutableFinder' => $vendorDir . '/symfony/process/PhpExecutableFinder.php', 77 'Symfony\\Component\\Process\\PhpProcess' => $vendorDir . '/symfony/process/PhpProcess.php', 78 'Symfony\\Component\\Process\\PhpSubprocess' => $vendorDir . '/symfony/process/PhpSubprocess.php', 79 'Symfony\\Component\\Process\\Pipes\\AbstractPipes' => $vendorDir . '/symfony/process/Pipes/AbstractPipes.php', 80 'Symfony\\Component\\Process\\Pipes\\PipesInterface' => $vendorDir . '/symfony/process/Pipes/PipesInterface.php', 81 'Symfony\\Component\\Process\\Pipes\\UnixPipes' => $vendorDir . '/symfony/process/Pipes/UnixPipes.php', 82 'Symfony\\Component\\Process\\Pipes\\WindowsPipes' => $vendorDir . '/symfony/process/Pipes/WindowsPipes.php', 83 'Symfony\\Component\\Process\\Process' => $vendorDir . '/symfony/process/Process.php', 84 'Symfony\\Component\\Process\\ProcessUtils' => $vendorDir . '/symfony/process/ProcessUtils.php', 41 85 ); -
image-type-converter/trunk/vendor/composer/autoload_files.php
r2923240 r3147978 3 3 // autoload_files.php @generated by Composer 4 4 5 $vendorDir = dirname( dirname(__FILE__));5 $vendorDir = dirname(__DIR__); 6 6 $baseDir = dirname($vendorDir); 7 7 -
image-type-converter/trunk/vendor/composer/autoload_namespaces.php
r2923240 r3147978 3 3 // autoload_namespaces.php @generated by Composer 4 4 5 $vendorDir = dirname( dirname(__FILE__));5 $vendorDir = dirname(__DIR__); 6 6 $baseDir = dirname($vendorDir); 7 7 -
image-type-converter/trunk/vendor/composer/autoload_psr4.php
r2923240 r3147978 3 3 // autoload_psr4.php @generated by Composer 4 4 5 $vendorDir = dirname( dirname(__FILE__));5 $vendorDir = dirname(__DIR__); 6 6 $baseDir = dirname($vendorDir); 7 7 8 8 return array( 9 'Symfony\\Component\\Process\\' => array($vendorDir . '/symfony/process'), 10 'Spatie\\ImageOptimizer\\' => array($vendorDir . '/spatie/image-optimizer/src'), 11 'Psr\\Log\\' => array($vendorDir . '/psr/log/src'), 9 12 'GPLSCore\\GPLS_PLUGIN_WICOR\\' => array($baseDir . '/includes'), 10 13 ); -
image-type-converter/trunk/vendor/composer/autoload_real.php
r2923240 r3147978 24 24 25 25 spl_autoload_register(array('ComposerAutoloaderInit1c5999bf04890dab0722c6c1d2c45267', 'loadClassLoader'), true, true); 26 self::$loader = $loader = new \Composer\Autoload\ClassLoader( );26 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); 27 27 spl_autoload_unregister(array('ComposerAutoloaderInit1c5999bf04890dab0722c6c1d2c45267', 'loadClassLoader')); 28 28 29 $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded()); 30 if ($useStaticLoader) { 31 require __DIR__ . '/autoload_static.php'; 32 33 call_user_func(\Composer\Autoload\ComposerStaticInit1c5999bf04890dab0722c6c1d2c45267::getInitializer($loader)); 34 } else { 35 $map = require __DIR__ . '/autoload_namespaces.php'; 36 foreach ($map as $namespace => $path) { 37 $loader->set($namespace, $path); 38 } 39 40 $map = require __DIR__ . '/autoload_psr4.php'; 41 foreach ($map as $namespace => $path) { 42 $loader->setPsr4($namespace, $path); 43 } 44 45 $classMap = require __DIR__ . '/autoload_classmap.php'; 46 if ($classMap) { 47 $loader->addClassMap($classMap); 48 } 49 } 29 require __DIR__ . '/autoload_static.php'; 30 call_user_func(\Composer\Autoload\ComposerStaticInit1c5999bf04890dab0722c6c1d2c45267::getInitializer($loader)); 50 31 51 32 $loader->register(true); 52 33 53 if ($useStaticLoader) { 54 $includeFiles = Composer\Autoload\ComposerStaticInit1c5999bf04890dab0722c6c1d2c45267::$files; 55 } else { 56 $includeFiles = require __DIR__ . '/autoload_files.php'; 57 } 58 foreach ($includeFiles as $fileIdentifier => $file) { 59 composerRequire1c5999bf04890dab0722c6c1d2c45267($fileIdentifier, $file); 34 $filesToLoad = \Composer\Autoload\ComposerStaticInit1c5999bf04890dab0722c6c1d2c45267::$files; 35 $requireFile = \Closure::bind(static function ($fileIdentifier, $file) { 36 if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) { 37 $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true; 38 39 require $file; 40 } 41 }, null, null); 42 foreach ($filesToLoad as $fileIdentifier => $file) { 43 $requireFile($fileIdentifier, $file); 60 44 } 61 45 … … 63 47 } 64 48 } 65 66 function composerRequire1c5999bf04890dab0722c6c1d2c45267($fileIdentifier, $file)67 {68 if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {69 require $file;70 71 $GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;72 }73 } -
image-type-converter/trunk/vendor/composer/autoload_static.php
r2923240 r3147978 14 14 15 15 public static $prefixLengthsPsr4 = array ( 16 'S' => 17 array ( 18 'Symfony\\Component\\Process\\' => 26, 19 'Spatie\\ImageOptimizer\\' => 22, 20 ), 21 'P' => 22 array ( 23 'Psr\\Log\\' => 8, 24 ), 16 25 'G' => 17 26 array ( … … 21 30 22 31 public static $prefixDirsPsr4 = array ( 32 'Symfony\\Component\\Process\\' => 33 array ( 34 0 => __DIR__ . '/..' . '/symfony/process', 35 ), 36 'Spatie\\ImageOptimizer\\' => 37 array ( 38 0 => __DIR__ . '/..' . '/spatie/image-optimizer/src', 39 ), 40 'Psr\\Log\\' => 41 array ( 42 0 => __DIR__ . '/..' . '/psr/log/src', 43 ), 23 44 'GPLSCore\\GPLS_PLUGIN_WICOR\\' => 24 45 array ( … … 32 53 'GPLSCore\\GPLS_PLUGIN_WICOR\\Core\\Core' => __DIR__ . '/../..' . '/includes/Core/Core.php', 33 54 'GPLSCore\\GPLS_PLUGIN_WICOR\\ImageConverter' => __DIR__ . '/../..' . '/includes/ImageConverter.php', 55 'GPLSCore\\GPLS_PLUGIN_WICOR\\ImageOptimizer' => __DIR__ . '/../..' . '/includes/ImageOptimizer.php', 34 56 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\ImgConversionHistoryMetaBox' => __DIR__ . '/../..' . '/includes/MetaBoxes/ImgConversionHistoryMetaBox.php', 35 57 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\ImgConverterMetaBox' => __DIR__ . '/../..' . '/includes/MetaBoxes/ImgConverterMetaBox.php', 36 58 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\ImgSubsizesMetaBox' => __DIR__ . '/../..' . '/includes/MetaBoxes/ImgSubsizesMetaBox.php', 37 59 'GPLSCore\\GPLS_PLUGIN_WICOR\\MetaBoxes\\MetaBoxesBase\\MetaBox' => __DIR__ . '/../..' . '/includes/MetaBoxes/MetaBoxesBase/MetaBox.php', 38 'GPLSCore\\GPLS_PLUGIN_WICOR\\Modules\\SelectImages\\Queries' => __DIR__ . '/../..' . '/includes/Modules/SelectImages/Queries.php',39 60 'GPLSCore\\GPLS_PLUGIN_WICOR\\Modules\\SelectImages\\SelectImagesModule' => __DIR__ . '/../..' . '/includes/Modules/SelectImages/SelectImagesModule.php', 40 61 'GPLSCore\\GPLS_PLUGIN_WICOR\\Pages\\PagesBase\\AdminPage' => __DIR__ . '/../..' . '/includes/Pages/PagesBase/AdminPage.php', 41 62 'GPLSCore\\GPLS_PLUGIN_WICOR\\Pages\\SettingsPage' => __DIR__ . '/../..' . '/includes/Pages/SettingsPage.php', 42 63 'GPLSCore\\GPLS_PLUGIN_WICOR\\Plugin' => __DIR__ . '/../..' . '/includes/Plugin.php', 64 'GPLSCore\\GPLS_PLUGIN_WICOR\\QuickImageConverter' => __DIR__ . '/../..' . '/includes/QuickImageConverter.php', 43 65 'GPLSCore\\GPLS_PLUGIN_WICOR\\Settings\\MainSettings' => __DIR__ . '/../..' . '/includes/Settings/MainSettings.php', 44 66 'GPLSCore\\GPLS_PLUGIN_WICOR\\Settings\\SettingsBase\\Settings' => __DIR__ . '/../..' . '/includes/Settings/SettingsBase/Settings.php', … … 60 82 'GPLSCore\\GPLS_PLUGIN_WICOR\\Utils\\Img\\ImgUtilsTrait' => __DIR__ . '/../..' . '/includes/Utils/Img/ImgUtilsTrait.php', 61 83 'GPLSCore\\GPLS_PLUGIN_WICOR\\Utils\\NoticeUtilsTrait' => __DIR__ . '/../..' . '/includes/Utils/NoticeUtilsTrait.php', 84 'Psr\\Log\\AbstractLogger' => __DIR__ . '/..' . '/psr/log/src/AbstractLogger.php', 85 'Psr\\Log\\InvalidArgumentException' => __DIR__ . '/..' . '/psr/log/src/InvalidArgumentException.php', 86 'Psr\\Log\\LogLevel' => __DIR__ . '/..' . '/psr/log/src/LogLevel.php', 87 'Psr\\Log\\LoggerAwareInterface' => __DIR__ . '/..' . '/psr/log/src/LoggerAwareInterface.php', 88 'Psr\\Log\\LoggerAwareTrait' => __DIR__ . '/..' . '/psr/log/src/LoggerAwareTrait.php', 89 'Psr\\Log\\LoggerInterface' => __DIR__ . '/..' . '/psr/log/src/LoggerInterface.php', 90 'Psr\\Log\\LoggerTrait' => __DIR__ . '/..' . '/psr/log/src/LoggerTrait.php', 91 'Psr\\Log\\NullLogger' => __DIR__ . '/..' . '/psr/log/src/NullLogger.php', 92 'Spatie\\ImageOptimizer\\DummyLogger' => __DIR__ . '/..' . '/spatie/image-optimizer/src/DummyLogger.php', 93 'Spatie\\ImageOptimizer\\Image' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Image.php', 94 'Spatie\\ImageOptimizer\\Optimizer' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizer.php', 95 'Spatie\\ImageOptimizer\\OptimizerChain' => __DIR__ . '/..' . '/spatie/image-optimizer/src/OptimizerChain.php', 96 'Spatie\\ImageOptimizer\\OptimizerChainFactory' => __DIR__ . '/..' . '/spatie/image-optimizer/src/OptimizerChainFactory.php', 97 'Spatie\\ImageOptimizer\\Optimizers\\Avifenc' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Avifenc.php', 98 'Spatie\\ImageOptimizer\\Optimizers\\BaseOptimizer' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/BaseOptimizer.php', 99 'Spatie\\ImageOptimizer\\Optimizers\\Cwebp' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Cwebp.php', 100 'Spatie\\ImageOptimizer\\Optimizers\\Gifsicle' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Gifsicle.php', 101 'Spatie\\ImageOptimizer\\Optimizers\\Jpegoptim' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Jpegoptim.php', 102 'Spatie\\ImageOptimizer\\Optimizers\\Optipng' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Optipng.php', 103 'Spatie\\ImageOptimizer\\Optimizers\\Pngquant' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Pngquant.php', 104 'Spatie\\ImageOptimizer\\Optimizers\\Svgo' => __DIR__ . '/..' . '/spatie/image-optimizer/src/Optimizers/Svgo.php', 105 'Symfony\\Component\\Process\\Exception\\ExceptionInterface' => __DIR__ . '/..' . '/symfony/process/Exception/ExceptionInterface.php', 106 'Symfony\\Component\\Process\\Exception\\InvalidArgumentException' => __DIR__ . '/..' . '/symfony/process/Exception/InvalidArgumentException.php', 107 'Symfony\\Component\\Process\\Exception\\LogicException' => __DIR__ . '/..' . '/symfony/process/Exception/LogicException.php', 108 'Symfony\\Component\\Process\\Exception\\ProcessFailedException' => __DIR__ . '/..' . '/symfony/process/Exception/ProcessFailedException.php', 109 'Symfony\\Component\\Process\\Exception\\ProcessSignaledException' => __DIR__ . '/..' . '/symfony/process/Exception/ProcessSignaledException.php', 110 'Symfony\\Component\\Process\\Exception\\ProcessTimedOutException' => __DIR__ . '/..' . '/symfony/process/Exception/ProcessTimedOutException.php', 111 'Symfony\\Component\\Process\\Exception\\RunProcessFailedException' => __DIR__ . '/..' . '/symfony/process/Exception/RunProcessFailedException.php', 112 'Symfony\\Component\\Process\\Exception\\RuntimeException' => __DIR__ . '/..' . '/symfony/process/Exception/RuntimeException.php', 113 'Symfony\\Component\\Process\\ExecutableFinder' => __DIR__ . '/..' . '/symfony/process/ExecutableFinder.php', 114 'Symfony\\Component\\Process\\InputStream' => __DIR__ . '/..' . '/symfony/process/InputStream.php', 115 'Symfony\\Component\\Process\\Messenger\\RunProcessContext' => __DIR__ . '/..' . '/symfony/process/Messenger/RunProcessContext.php', 116 'Symfony\\Component\\Process\\Messenger\\RunProcessMessage' => __DIR__ . '/..' . '/symfony/process/Messenger/RunProcessMessage.php', 117 'Symfony\\Component\\Process\\Messenger\\RunProcessMessageHandler' => __DIR__ . '/..' . '/symfony/process/Messenger/RunProcessMessageHandler.php', 118 'Symfony\\Component\\Process\\PhpExecutableFinder' => __DIR__ . '/..' . '/symfony/process/PhpExecutableFinder.php', 119 'Symfony\\Component\\Process\\PhpProcess' => __DIR__ . '/..' . '/symfony/process/PhpProcess.php', 120 'Symfony\\Component\\Process\\PhpSubprocess' => __DIR__ . '/..' . '/symfony/process/PhpSubprocess.php', 121 'Symfony\\Component\\Process\\Pipes\\AbstractPipes' => __DIR__ . '/..' . '/symfony/process/Pipes/AbstractPipes.php', 122 'Symfony\\Component\\Process\\Pipes\\PipesInterface' => __DIR__ . '/..' . '/symfony/process/Pipes/PipesInterface.php', 123 'Symfony\\Component\\Process\\Pipes\\UnixPipes' => __DIR__ . '/..' . '/symfony/process/Pipes/UnixPipes.php', 124 'Symfony\\Component\\Process\\Pipes\\WindowsPipes' => __DIR__ . '/..' . '/symfony/process/Pipes/WindowsPipes.php', 125 'Symfony\\Component\\Process\\Process' => __DIR__ . '/..' . '/symfony/process/Process.php', 126 'Symfony\\Component\\Process\\ProcessUtils' => __DIR__ . '/..' . '/symfony/process/ProcessUtils.php', 62 127 ); 63 128
Note: See TracChangeset
for help on using the changeset viewer.