Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
638 commits
Select commit Hold shift + click to select a range
c503948
Merge pull request #85 from cloudinary/v1.14.7
Mar 1, 2021
acf870a
v1.14.8: Added CLD-ENV-VAR header to productGallery API and fixed pat…
Mar 8, 2021
ee15c12
v1.14.8: Moved appConfig->reinit() under try{} on config observer
Mar 18, 2021
0592673
v1.14.8: Added enabled condition to plugins and synchronization process
Mar 22, 2021
1818c82
v1.14.8: Wrapped more cache cleans with try-catch
Apr 1, 2021
dd970f9
v1.14.8:CLOUDINARY-314: Fixed deprecation error on ApiClient.php
Apr 4, 2021
1d4d7aa
v1.14.8: Removed try catch from programatically cache-clears
Apr 4, 2021
60032b1
v1.14.8,CLOUDINARY-318: Fix error on CLI when installing with Magento
Apr 5, 2021
fd0e1dc
v1.14.8: Added url encode & regex escape to ML and video scripts in o…
Apr 5, 2021
fe21383
v1.14.8: Added a fallback for missing video thumbnail
Apr 25, 2021
bef17b3
v1.14.8: Fixed empty ajaxUrl on product free transformations form
Apr 26, 2021
494ed3b
v1.14.8: Added a fallback for missing video thumbnail [FIX]
Apr 26, 2021
2c6680c
Merge pull request #86 from cloudinary/v1.14.8
Apr 28, 2021
c2d39ce
v1.14.8: minor fix
Apr 28, 2021
75ca002
v1.14.8: minor fix
Apr 28, 2021
916ffc6
Merge pull request #88 from cloudinary/v1.14.8
Apr 28, 2021
6aadeea
v1.14.8: minor fix
Apr 28, 2021
d5c34a0
Merge pull request #89 from cloudinary/v1.14.8
Apr 28, 2021
8069fa8
v1.14.9: Queries optimization for synchronization table
May 9, 2021
b300712
v1.14.9: Added registry cache to SynchronizationChecker
May 10, 2021
4ff0035
v1.14.9: Added registry cache to SynchronizationChecker
May 10, 2021
1021bcc
v1.14.9: Queries optimization for synchronization table
May 10, 2021
17bb87d
v1.14.9: Added registry cache to transformation queries
May 10, 2021
7085d89
v1.14.9: Removed registry cache from transformation queries - needs i…
May 10, 2021
576d216
v1.14.9: Added registry cache to transformation queries
May 10, 2021
4197855
Merge pull request #90 from cloudinary/v1.14.9
May 10, 2021
5a97ad7
v1.14.9: Removed registry cache from transformation queries - needs i…
May 10, 2021
cd23e6f
Merge pull request #91 from cloudinary/v1.14.9
May 10, 2021
9bbf32b
v1.14.9: Fixed an issue on BulkUpload
May 11, 2021
9c6ae51
Merge pull request #92 from cloudinary/v1.14.9
May 11, 2021
14e2113
v1.14.10: Added jpeg to ImageRepository (for BulkUpload)
May 13, 2021
1808085
Merge pull request #93 from cloudinary/v1.14.10
May 13, 2021
bbcccab
v1.14.11: Added registry cache on free transformation in order to red…
May 19, 2021
8f61236
Merge pull request #94 from cloudinary/v1.14.11
May 20, 2021
5f5106d
v1.14.12: Removed AutomaticLoginUser
Jun 2, 2021
ea3c2cf
v1.14.13: Added API endpoints for getting product CLD media URLs
Jun 9, 2021
2d74305
v1.14.13: Added a note to the product gallery configuration
Jun 9, 2021
be2f817
Merge pull request #96 from cloudinary/v1.14.13
Jun 17, 2021
c8adf00
v1.14.13: Added a note to the product gallery configuration
Jun 9, 2021
9e55f92
Merge branch 'master' into v1.14.13
Jun 27, 2021
526d519
Merge pull request #97 from cloudinary/v1.14.13
Jun 27, 2021
7f69819
v1.15.1: Bumped version to 1.15.1
Jun 30, 2021
4f83fa4
Merge pull request #98 from cloudinary/v1.15.1
Jun 30, 2021
ec7b515
v1.15.2: Added default image global transformation
Jul 7, 2021
ea9e82e
v1.15.2: Fixed import error when the CSV has multiple CLD video URLs
Jul 8, 2021
858be21
Merge pull request #99 from cloudinary/v1.15.2
Jul 12, 2021
b497be3
v1.15.3,CLOUDINARY-329: Trigger auto-upload dir mapping using a butto…
Jul 25, 2021
1a23509
Bumped version to 1.16.0
Aug 1, 2021
8ee2420
Merge pull request #101 from cloudinary/v1.16.0
Aug 1, 2021
b0a392b
v1.17.0: Improved URL encoding on JS video thumbnail generation
Aug 12, 2021
b3e260d
Bounced version to 1.16.1 [hotfix for JS encoding on video thumbnail …
Sep 13, 2021
5b52107
Merge pull request #104 from cloudinary/v1.16.1
Sep 13, 2021
84733e9
v1.17.0,CLOUDINARY-332: Added analytics param to PG asset URLs
Aug 5, 2021
35f597b
v1.17.0: Updated CLD Logos
Aug 12, 2021
d8c224e
v1.17.0:CLOUDINARY-209: Allow applying products-global transformation
Sep 9, 2021
9c91124
v1.17.0:CLOUDINARY-209: Allow applying products-global transformation
Sep 9, 2021
efe12c4
CLOUDINARY-347: Fix for Transformations keep_frame is not working (GH…
pniel-cohen Oct 4, 2021
0dccae7
add: GraphQL support for query Cld images
mayashavin Dec 8, 2021
9478bed
CLOUDINARY-332: Added analytics query param to all CLD URLs
pniel-cohen Dec 7, 2021
6f54a7e
MAG-431,CLOUDINARY-356: Added a note to the auto-upload-mapping confi…
pniel-cohen Dec 9, 2021
9a877ef
MAG-773,CLOUDINARY-358: Fixed video URL validation on page-builder to…
pniel-cohen Dec 9, 2021
f866985
Merge pull request #108 from mayashavin/master
Dec 13, 2021
23b75ca
MAG-777: Improved URL encoding-decoding on admin JS
pniel-cohen Dec 16, 2021
167c4fb
MAG-777: Updated js parts for get-video-information after Magento cor…
pniel-cohen Dec 19, 2021
5001a8a
Merge pull request #106 from cloudinary/v1.17.0
Jan 10, 2022
f63665c
CLOUDINARY-368
Jan 10, 2022
9f65275
Merge pull request #257 from GiritInteractive/CLOUDINARY-368
zach1988 Jan 10, 2022
2f340e7
CLOUDINARY-370 - Change on file 'loadplayer.js'. require scope change…
arielien Apr 3, 2022
8ac2ed0
CLOUDINARY-381 504 when using froogaloop2.min.js
MarynaZhezhel Apr 14, 2022
75c1d53
CLOUDINARY-377 MAgento Cloudinary Credentials incorrect on config:imp…
MarynaZhezhel Apr 18, 2022
53319dd
Merge pull request #258 from GiritInteractive/CLOUDINARY-381-504-when…
raananblo Apr 18, 2022
e3ff82e
Merge pull request #259 from GiritInteractive/CLOUDINARY-377-magento-…
raananblo Apr 18, 2022
b573d18
CLOUDINARY-381 504 when using froogaloop2.min.js
MarynaZhezhel Apr 14, 2022
9ae2978
CLOUDINARY-377 MAgento Cloudinary Credentials incorrect on config:imp…
MarynaZhezhel Apr 18, 2022
3b3b297
CLOUDINARY-370 - Change on file 'loadplayer.js'. require scope change…
arielien Apr 3, 2022
3f0aa73
v1.18.0
adamonsoon Apr 25, 2022
999d7c4
Merge pull request #260 from GiritInteractive/v1.18.0
adamonsoon Apr 25, 2022
b394bc9
CLOUDINARY-384 Error when trying to insert any asset from the MLW
MarynaZhezhel Apr 27, 2022
2417f90
Merge pull request #261 from GiritInteractive/CLOUDINARY-384-error-wh…
raananblo Apr 27, 2022
6a87b14
Merge pull request #112 from cloudinary/v.1.18.0
RonenGirit May 12, 2022
d0d2040
CLOUDINARY-390 - add ACL file
arielien May 30, 2022
06ceac6
CLOUDINARY-395 - DB - convert Setup to XML db schema
arielien Aug 8, 2022
818743f
CLOUDINARY-395 - DB - convert Setup to XML db schema
arielien Aug 8, 2022
cc6c742
Cloudinary 1.19.0
arielien Sep 5, 2022
491f25d
hide gallery button if version below (serverside version validation)
arielien Sep 5, 2022
fdf26c6
fix get cloudinary config method
arielien Sep 5, 2022
674981a
mediaLibraryModal widget remove dep jstree
arielien Sep 6, 2022
8e4ea51
revert media template
arielien Sep 6, 2022
dfc0f19
Fix mapping and spinset
arielien Sep 8, 2022
cf2b031
CLOUDINARY-403, CLOUDINARY-407 - fix
arielien Sep 14, 2022
6a82c3a
Cloudinary-402 system.xml update
arielien Sep 14, 2022
f8879a0
CLOUDINARY-396 - change composer versions constraint
arielien Sep 15, 2022
b90828e
CLOUDINARY-408 added new CSP policy - media-src
arielien Sep 20, 2022
bce53d4
Merge pull request #262 from GiritInteractive/v1.19.0
RonenGirit Sep 28, 2022
f61c5a3
Merge tag 'v.1.19.0'
RonenGirit Sep 28, 2022
f8ed67f
Merge tag 'v.1.19.0' into v1.19.0
RonenGirit Sep 28, 2022
4e98cd0
Merge pull request #118 from cloudinary/v1.19.0
RonenGirit Sep 28, 2022
06faac1
Magento marketplace standards - remove setup files
arielien Sep 29, 2022
e995894
Merge tag 'v1.19.0' of https://github.com/cloudinary/cloudinary_magen…
RonenGirit Sep 29, 2022
bdae1ae
remove setup upgrade schema + changes for composer php version
RonenGirit Oct 2, 2022
a6d4d0f
Merge pull request #119 from cloudinary/v1.19.0
RonenGirit Oct 2, 2022
d23a850
change version to 1.19.1 on composer
RonenGirit Oct 2, 2022
9adecba
Merge pull request #120 from cloudinary/v1.19.0
RonenGirit Oct 2, 2022
c45bd23
add repositories to composer
RonenGirit Oct 2, 2022
f074367
Merge pull request #121 from cloudinary/v1.19.0
RonenGirit Oct 2, 2022
9aa64ef
CLOUDINARY-412 - fix CMS block multiselect bug
arielien Oct 16, 2022
6ab597e
CLOUDINARY-413 [Feature] Add delete method for product catalog API
arielien Oct 19, 2022
dc6f049
Update README.md
bruckercloud Oct 25, 2022
fd998e7
Update README.md
bruckercloud Oct 25, 2022
db0b229
Update README.md
bruckercloud Oct 25, 2022
c142a8f
fix merge conflict
adamonsoon Oct 25, 2022
c198e23
Merge pull request #123 from cloudinary/v1.19.2
adamonsoon Oct 25, 2022
949f88c
CLOUDINARY-412 - chage getLazyloadIgnoredCmsBlocksArray method to ret…
arielien Nov 10, 2022
8d27c09
change version to v1.19.3
arielien Nov 10, 2022
2d759ab
CLOUDINARY-417
arielien Nov 20, 2022
41ef62e
CLOUDINARY-416 - disable preview btn on no transformation rules confi…
arielien Nov 20, 2022
d333d55
Merge branches 'CLOUDINARY-416' and 'CLOUDINARY-417' into v1.19.3
arielien Nov 23, 2022
e69bc91
Merge branch 'v1.19.3' of https://github.com/GiritInteractive/magento…
RonenGirit Dec 12, 2022
707d7c0
CLOUDINARY-425 add image context marking
arielien Jan 18, 2023
ea137b0
CLOUDINARY-427 - fix variable validation at afterPrepare function
arielien Jan 31, 2023
48dc7fb
Merge branch 'v0.19.4' of https://github.com/GiritInteractive/magento…
RonenGirit Feb 7, 2023
94ca7b2
CLOUDINARY-433 - replace old froogaloop URL with vimeo new URL
arielien Mar 7, 2023
884f4c4
Merge branch 'v1.19.5' of https://github.com/GiritInteractive/magento…
Ronen-Michaeli-22 Mar 20, 2023
2706058
CLOUDINARY-437 - Fix issue credentials not returning query params
arielien Apr 16, 2023
1c1dcf2
CLOUDINARY-437 - Remove comment
arielien Apr 16, 2023
b6c6d2f
CLOUDINARY-437 - Fix issue credentials not returning query params
arielien Apr 16, 2023
9e4505a
CLOUDINARY-437 - Update module version
arielien Apr 16, 2023
b3aba5a
CLOUDINARY-437 - Fix issue credentials not returning query params
arielien Apr 16, 2023
ec06390
CLOUDINARY-438 - fix image duplications
arielien Apr 25, 2023
22b6c03
CLOUDINARY-439 - replace ZendClient class to LaminasClient
arielien May 1, 2023
402ebf1
UP-164 fix fedex batch instuction page not displaying all item / disp…
arielien May 2, 2023
fa6ef41
CLOUDINARY-437 - change configuration builder - added 'url' params array
arielien May 3, 2023
35a11ff
CLOUDINARY-437 - minor fixes for Magento 2.4.6 support
arielien May 8, 2023
49bd673
CLOUDINARY-437 - fix formatError expecting to Laminas Class
arielien May 8, 2023
ddec50b
CLOUDINARY-437 - fix formatError expecting to Laminas Class
arielien May 8, 2023
80cc49f
CLOUDINARY-437 - fix formatError expecting to Laminas Class
arielien May 8, 2023
dafba59
CLOUDINARY-437 - fix formatError expecting to Laminas Class
arielien May 8, 2023
0e8fc19
CLOUDINARY-443 - Fixes for Cloudinary version 1.19.5 and Magento vers…
arielien May 15, 2023
7d1ea97
CLOUDINARY-443 - minor fix for helper
arielien May 15, 2023
638de8f
replace incorrect Exception class
adamonsoon May 16, 2023
29b7da3
revert to original product video functionality when the cloudflare mo…
adamonsoon May 16, 2023
d85a2f6
return null cname when credentials are not available
adamonsoon May 16, 2023
c28daa2
composer update for version 1.19.5
Ronen-Michaeli-22 May 18, 2023
32b6e1d
Merge branch 'v1.19.5'
Ronen-Michaeli-22 May 18, 2023
957314c
merge Adams changes
arielien Jun 7, 2023
183668d
CLOUDINARY-449 - Error when syncing assets - MAG-837
arielien Jun 7, 2023
278dd90
CLOUDINARY-450 - fix enable / disable issue
arielien Jun 12, 2023
f5ce015
minor changes for version v1.19.6
arielien Aug 1, 2023
eee27e8
fix: credentials accessed before they exist by the scripts block
adamonsoon Aug 6, 2023
0250528
fix composer conflict
Ronen-Michaeli-22 Aug 7, 2023
c084d1f
change composer php version
Ronen-Michaeli-22 Aug 7, 2023
f8a3444
CLOUDINARY-459 - show cloudinary image on admins cms preview
arielien Aug 17, 2023
010c540
CLOUDINARY-459 - show cloudinary image on admins cms preview - added …
arielien Aug 17, 2023
f0f6891
update version number
arielien Aug 24, 2023
8f680c9
make sure cloudinary module is enabled before attempting to get cname…
adamonsoon Aug 28, 2023
762a793
Merge remote-tracking branch 'upstream/v1.19.7'
Ronen-Michaeli-22 Aug 29, 2023
343249e
CLOUDINARY-463 - Upgrade cloudinary_php Dependency - MAG-844
arielien Sep 5, 2023
7d91aa7
Merge branch 'v1.19.7' of github.com:GiritInteractive/magento2-module…
arielien Sep 5, 2023
98dc481
Version upgrade only -> v1.19.8
arielien Sep 21, 2023
6eab18d
fix composer merge conflict
Ronen-Michaeli-22 Sep 26, 2023
b1c1f0d
CLOUDINARY-468 - change cloudinary sdk support version
arielien Oct 1, 2023
4330ad1
update composer.json file
Ronen-Michaeli-22 Oct 1, 2023
f197e0a
update to version 1.19.9
Ronen-Michaeli-22 Oct 1, 2023
a48b325
update to version 1.19.90
Ronen-Michaeli-22 Oct 1, 2023
7e9d617
CLOUDINARY-469 - change version pattern to v1.19.90
arielien Oct 1, 2023
35fd112
CLOUDINARY-476 - fix bug: Product Videos (Vimeo) - MAG-847
arielien Nov 27, 2023
4164ce6
CLOUDINARY-479 - Queue not processing videos - The Cloudname is null …
arielien Dec 6, 2023
bb94992
Updating module.xml + composer.json version signature
arielien Dec 11, 2023
cd520d2
new version 1.19.92
Ronen-Michaeli-22 Dec 24, 2023
f235ca1
CLOUDINARY-484 - add cloudinary player support using cloudinary media…
arielien Jan 21, 2024
95149ad
new version update
arielien Jan 22, 2024
8085ca0
CLOUDINARY-485 - fix error on UpdateAdminImage controller action
arielien Jan 22, 2024
e74bd51
CLOUDINARY-484 - minor fix on ProductGalleryHelper
arielien Jan 22, 2024
4e976a2
CLOUDINARY-487 - add video player to default Magento gallery
arielien Feb 1, 2024
aeccd6d
CLOUDINARY-487 - add video player to default Magento gallery
arielien Feb 1, 2024
f0cd0d3
version v1.20.0
arielien Feb 5, 2024
f7651df
fix cld videosettings case when cld in disabled
arielien Feb 5, 2024
5dcdd4f
minor fix for settings.xml
arielien Feb 5, 2024
2c6eaea
minor fix for settings.xml
arielien Feb 5, 2024
825c75a
fix cld video styles
arielien Feb 5, 2024
5fa6c9c
fix cld video styles
arielien Feb 5, 2024
25c98d3
fix cld video styles
arielien Feb 5, 2024
7fd7b9b
fix cld video sound for media gallery
arielien Feb 5, 2024
22e431c
fix cld video sound for media gallery
arielien Feb 5, 2024
370874d
CLOUDINARY-491 - Changes for video player into Magento integration …
arielien Mar 13, 2024
1cf05e9
CLOUDINARY-491 - version upgrade
arielien Mar 27, 2024
c54eb16
CLOUDINARY-494 - Magento CLD Video Player Microcopy + change default …
arielien Apr 2, 2024
7891d0a
CLOUDINARY-494 - Magento CLD Video Player Microcopy + change default …
arielien Apr 2, 2024
9db5eeb
CLOUDINARY-494 - Magento CLD Video Player Microcopy + change default …
arielien Apr 2, 2024
926d07d
CLOUDINARY-494 - Magento CLD Video Player Microcopy + change default …
arielien Apr 2, 2024
e5f8f35
CLOUDINARY-494 - Magento CLD Video Player Microcopy + change default …
arielien Apr 3, 2024
a120a63
CLOUDINARY-499 - Add new settings field to override the defualt settings
arielien Apr 14, 2024
55bbf47
CLOUDINARY-501 - Changes for video settings texts
arielien Apr 18, 2024
76d359f
CLOUDINARY-501 - Changes for video settings texts - added multiselect
arielien Apr 18, 2024
015817b
CLOUDINARY-502 - Change the value to false as default for 'Image Deli…
arielien Apr 18, 2024
962007f
CLOUDINARY-501 - minor fix for settings
arielien Apr 21, 2024
bf7ce69
CLOUDINARY-504 - fix OutputLogger class php bugs (strict types compat…
arielien May 2, 2024
76bf514
CLOUDINARY-506 - minor fixes for cld admin settings
arielien May 2, 2024
6c4522c
fix bug on VideoSettings.php (adams request)
arielien May 2, 2024
7b6a695
fix bug on VideoSettings.php (adams request) - p2
arielien May 2, 2024
234e40f
CLOUDINARY-507 - minor fix for ProductGalleryHelper
arielien May 6, 2024
9c792d5
CLOUDINARY-507 - fix video free params json save logics
arielien May 7, 2024
d07f0c3
CLOUDINARY-507 - fix video params json to support urls
arielien May 9, 2024
cfce47d
Merge branch 'v1.20.0' of https://github.com/GiritInteractive/magento…
Ronen-Michaeli-22 May 15, 2024
8eae893
fix for video script
Ronen-Michaeli-22 May 20, 2024
596f2de
CLOUDINARY-511 - Change the text for the Cloudinary account section t…
arielien Jun 10, 2024
33c708b
CLOUDINARY-511 - Change the text for the Cloudinary account section t…
arielien Jun 10, 2024
e88b788
CLOUDINARY-511 - Change the text for the Cloudinary account section t…
arielien Jun 10, 2024
a822ad2
CLOUDINARY-512 - HOTFIX for clodinary CNAME for product gallery widget
arielien Jun 13, 2024
048441f
CLOUDINARY-512 - HOTFIX for clodinary CNAME for product gallery widget
arielien Jun 13, 2024
ecbea28
CLOUDINARY-512 - HOTFIX for clodinary CNAME for product gallery widget
arielien Jun 13, 2024
4ce6d50
CLOUDINARY-511 - update info for Cloundinary env key input - admin ar…
arielien Jun 16, 2024
0114124
Merge branch 'v1.20.1' of https://github.com/GiritInteractive/magento…
Ronen-Michaeli-22 Jun 16, 2024
e0376a8
CLOUDINARY-493 - Add the media gallery params fields to Magento's gra…
arielien Jul 2, 2024
9a0c79f
CLOUDINARY-493 - change param name to 'gallery_widget_parameterrs'
arielien Jul 7, 2024
08b02c5
Merge branch 'v1.20.1' of https://github.com/GiritInteractive/magento…
Ronen-Michaeli-22 Jul 10, 2024
6cc8d05
New version v1.20.2
arielien Jul 10, 2024
a21195a
Merge branch 'v1.20.2' of https://github.com/GiritInteractive/magento…
Ronen-Michaeli-22 Jul 10, 2024
3678332
CLOUDINARY-517 - fix bug with controls
arielien Jul 31, 2024
4b4876c
CLOUDINARY-478 - Add support for Magento swatch - Cloudinary v1.19.91…
arielien Aug 14, 2024
2e3dbbb
CLOUDINARY-478 - Add support for Magento swatch - Cloudinary v1.19.91…
arielien Aug 14, 2024
98711e9
CLOUDINARY-519 - return to version v1.20.3 + change settings text
arielien Aug 18, 2024
262aa7d
CLOUDINARY-519 - fix image proportions when loading the swatch image
arielien Aug 18, 2024
7ef16ec
Merge branch 'v1.20.3a' of https://github.com/GiritInteractive/magent…
RonenGiritCloudinary Aug 20, 2024
bf00e08
add capitalisation for settings label
RonenGiritCloudinary Aug 20, 2024
6707727
fix php deprecated functionality for PHP 8.x
arielien Sep 3, 2024
7a926a4
Merge branch 'v1.20.3a' of github.com:GiritInteractive/magento2-modul…
arielien Sep 3, 2024
cfdb904
fix deprecated functionality
arielien Sep 4, 2024
25ad35b
fix deprecated functionality
arielien Sep 4, 2024
6e32225
CLOUDINARY-522 - update cld media gallery with swatch images
arielien Sep 11, 2024
86c38ac
CLOUDINARY-522 - update cld media gallery with swatch images
arielien Sep 11, 2024
ff9b016
CLOUDINARY-522 - update cld media gallery with swatch images
arielien Sep 11, 2024
6fd3a43
CLOUDINARY-522 - update cld media gallery with swatch images
arielien Sep 11, 2024
15bc796
CLOUDINARY-522 - js code changes + autoselect last updated thumb
arielien Sep 12, 2024
feac058
CLOUDINARY-522 - new thumbnail click approach
arielien Sep 12, 2024
2859688
CLOUDINARY-522 - new thumbnail click approach
arielien Sep 12, 2024
827185c
CLOUDINARY-523 - version update before QA on UAT
arielien Sep 15, 2024
3bd144c
CLOUDINARY-523 - fix condition if cloudinary MGW if not activated
arielien Sep 15, 2024
fdcf526
CLOUDINARY-523 - fix rollback to default behavior if cloudinary MGW i…
arielien Sep 15, 2024
1ced5ab
CLOUDINARY-523 - fix rollback to default behavior if cloudinary MGW i…
arielien Sep 15, 2024
46822bd
CLOUDINARY-523 - fix rollback to default behavior if cloudinary MGW i…
arielien Sep 15, 2024
5de8d23
CLOUDINARY-523 - fix rollback to default behavior if cloudinary MGW i…
arielien Sep 15, 2024
761125a
CLOUDINARY-523 - trial to fix bug on cloudinary mediaGalleryWidget: p…
arielien Sep 15, 2024
3e7c748
CLOUDINARY-523 - fix bug when cloudinary mgw set to false
arielien Sep 15, 2024
50d8385
CLOUDINARY-525 - Additional graphql media enhancements
arielien Nov 11, 2024
af8b9b4
CLOUDINARY-526 - remove auto select first image
arielien Nov 18, 2024
674f840
new release version 1.20.52
RonenGiritCloudinary Jan 14, 2025
b133a55
CLOUDINARY-541 - new version 2.0.0 - support for Hyva theme and updat…
arielien Feb 16, 2025
48ebebb
version 2.0.0
RonenGiritCloudinary Feb 25, 2025
44baadb
Refactor: Use DesignInterface for Hyvä Theme Detection in ProductGall…
itaymesh Mar 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 64 additions & 0 deletions Api/ProductGalleryManagementInterface.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
<?php

namespace Cloudinary\Cloudinary\Api;

interface ProductGalleryManagementInterface
{

/**
* [!] DEPRECATED, please use addProductMedia() instead.
* Add product gallery item from Cloudinary URL.
* @method addItem
* @param string $url
* @param string $sku
* @param string|null $publicId
* @param string|null $roles
* @param string|null $label
* @param bool|int|null $disabled
* @param string $cldspinset
* @return string
*/
public function addItem($url = null, $sku = null, $publicId = null, $roles = null, $label = null, $disabled = 0, $cldspinset = null);

/**
* Add multiple gallery items to one or more products from Cloudinary URLs.
* @method addItems
* @param mixed $items
* @return string
*/
public function addItems($items);

/**
* Add product gallery items from Cloudinary URLs.
* @method addItem
* @param string $sku
* @param mixed $urls
* @return string
*/
public function addProductMedia($sku, $urls);

/**
* Get product gallery items as Cloudinary URLs.
* @method getProductMedia
* @param string $sku
* @return string
*/
public function getProductMedia($sku);

/**
* Get products gallery items as Cloudinary URLs.
* @method getProductsMedia
* @param mixed $skus
* @return string
*/
public function getProductsMedia($skus);


/** Remove Product images by publicIds
* @param string $sku
* @param mixed $urls
* @param bool | int | null $delete_all_gallery
* @return string
*/
public function removeProductMedia($sku, $urls, $delete_all_gallery = 0);
}
9 changes: 9 additions & 0 deletions Api/ResourcesManagementInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,22 @@ interface ResourcesManagementInterface

/**
* GET for getImage api
*
* @return string
*/
public function getImage();

/**
* GET for getVideo api
*
* @return string
*/
public function getVideo();

/**
* GET for getSpinestFirstImage api
*
* @return string
*/
public function getResourcesByTag();
}
4 changes: 2 additions & 2 deletions Api/SynchronisationRepositoryInterface.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,13 @@
interface SynchronisationRepositoryInterface
{
/**
* @param SearchCriteriaInterface $searchCriteria
* @param SearchCriteriaInterface $searchCriteria
* @return SearchResultsInterface
*/
public function getList(SearchCriteriaInterface $searchCriteria);

/**
* @param string $imagePath
* @param string $imagePath
*
* @return SearchResultsInterface
*/
Expand Down
97 changes: 97 additions & 0 deletions Block/Adminhtml/Cms/Wysiwyg/Images/Content.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
<?php

namespace Cloudinary\Cloudinary\Block\Adminhtml\Cms\Wysiwyg\Images;

use Cloudinary\Cloudinary\Helper\MediaLibraryHelper;
use Magento\Backend\Block\Widget\Context;
use Magento\Framework\Json\EncoderInterface;
use Magento\Framework\App\ProductMetadataInterface;

/**
* Wysiwyg Images content block
*
* @api
* @since 100.0.2
*/
class Content extends \Magento\Cms\Block\Adminhtml\Wysiwyg\Images\Content
{
/**
* MediaLibraryHelper
* @var array|null
*/
protected $mediaLibraryHelper;


protected $productMetadata;

/**
* @param Context $context
* @param EncoderInterface $jsonEncoder
* @param MediaLibraryHelper $mediaLibraryHelper
* @param array $data
*/
public function __construct(
Context $context,
EncoderInterface $jsonEncoder,
MediaLibraryHelper $mediaLibraryHelper,
ProductMetadataInterface $productMetadata,
array $data = []
) {
parent::__construct($context, $jsonEncoder, $data);
$this->mediaLibraryHelper = $mediaLibraryHelper;
$this->productMetadata = $productMetadata;
}

/**
* Get Cloudinary media library widget options
*
* @param bool $multiple Allow multiple
* @param bool $refresh Refresh options
* @return string
*/
public function getCloudinaryMediaLibraryWidgetOptions($multiple = false, $refresh = false)
{
if (!($cloudinaryMLoptions = $this->mediaLibraryHelper->getCloudinaryMLOptions($multiple, $refresh))) {
return null;
}

try {
if (version_compare($this->productMetadata->getVersion(), '2.3.5', '<=')) {
$imageUploadUrl = $this->_urlBuilder->addSessionParam()->getUrl('cloudinary/cms_wysiwyg_images/upload', ['type' => $this->_getMediaType()]);
} else {
$imageUploadUrl = $this->_urlBuilder->getUrl('cloudinary/cms_wysiwyg_images/upload', ['type' => $this->_getMediaType()]);
}

//Try to add session param on Magento versions prior to 2.3.5

} catch (\Exception $e) {
//Catch deprecation error on Magento 2.3.5 and above
throw new \Exception($e->getMessage());
}

return $this->_jsonEncoder->encode(
[
'cldMLid' => 'wysiwyg_media_gallery',
'imageUploaderUrl' => $imageUploadUrl,
'triggerSelector' => '.media-gallery-modal',
'triggerEvent' => 'fileuploaddone',
'cloudinaryMLoptions' => $cloudinaryMLoptions,
'addTmpExtension' => false,
'cloudinaryMLshowOptions' => $this->mediaLibraryHelper->getCloudinaryMLshowOptions("image"),
]
);
}

/**
* Return current media type based on request or data
*
* @return string
*/
protected function _getMediaType()
{
if ($this->hasData('media_type')) {
return $this->_getData('media_type');
}
return $this->getRequest()->getParam('type');
}
}
13 changes: 9 additions & 4 deletions Block/Adminhtml/Form/Field/Free.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@

class Free extends Field
{
const XML_PATH_GLOBAL_TRANSFORMATION = 'cloudinary/transformations/cloudinary_free_transform_global';
/**
* @var ConfigurationInterface
*/
Expand All @@ -21,10 +22,10 @@ class Free extends Field
private $model;

/**
* @param Context $context
* @param Context $context
* @param ConfigurationInterface $configuration
* @param FreeBackendModel $model
* @param array $data
* @param FreeBackendModel $model
* @param array $data
*/
public function __construct(
Context $context,
Expand All @@ -47,8 +48,12 @@ protected function _beforeToHtml()
return $this;
}

public function isCanPreviewTransformations() {
return $this->_scopeConfig->getValue(self::XML_PATH_GLOBAL_TRANSFORMATION);
}

/**
* @param AbstractElement $element
* @param AbstractElement $element
* @return string
*/
protected function _getElementHtml(AbstractElement $element)
Expand Down
93 changes: 74 additions & 19 deletions Block/Adminhtml/Product/Edit/NewVideo.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,51 +5,80 @@
*/
namespace Cloudinary\Cloudinary\Block\Adminhtml\Product\Edit;

use Cloudinary\Cloudinary\Core\ConfigurationBuilder;
use Cloudinary\Cloudinary\Core\ConfigurationInterface;
use Magento\Backend\Block\Template\Context;
use Magento\Framework\Data\FormFactory;
use Magento\Framework\Json\EncoderInterface;
use Magento\Framework\Registry;
use Magento\Framework\UrlInterface;
use Magento\ProductVideo\Helper\Media;

/**
* @SuppressWarnings(PHPMD.DepthOfInheritance)
*/
class NewVideo extends \Magento\ProductVideo\Block\Adminhtml\Product\Edit\NewVideo
{
/**
* @var array|null
*/
protected $_cloudinaryConfig;

/**
* @var \Cloudinary\Cloudinary\Core\ConfigurationBuilder
* @var ConfigurationInterface
*/
private $configuration;

/**
* @var ConfigurationBuilder
*/
protected $_cloudinaryConfigurationBuilder;

/**
* @param \Magento\Backend\Block\Template\Context $context
* @param \Magento\Framework\Registry $registry
* @param \Magento\Framework\Data\FormFactory $formFactory
* @param \Magento\ProductVideo\Helper\Media $mediaHelper
* @param \Magento\Framework\Json\EncoderInterface $jsonEncoder
* @param \Cloudinary\Cloudinary\Core\ConfigurationBuilder $cloudinaryConfigurationBuilder
* @param array $data
* @method __construct
* @param Context $context
* @param Registry $registry
* @param FormFactory $formFactory
* @param Media $mediaHelper
* @param EncoderInterface $jsonEncoder
* @param ConfigurationInterface $configuration
* @param ConfigurationBuilder $cloudinaryConfigurationBuilder
* @param array $data
*/
public function __construct(
\Magento\Backend\Block\Template\Context $context,
\Magento\Framework\Registry $registry,
\Magento\Framework\Data\FormFactory $formFactory,
\Magento\ProductVideo\Helper\Media $mediaHelper,
\Magento\Framework\Json\EncoderInterface $jsonEncoder,
\Cloudinary\Cloudinary\Core\ConfigurationBuilder $cloudinaryConfigurationBuilder,
Context $context,
Registry $registry,
FormFactory $formFactory,
Media $mediaHelper,
EncoderInterface $jsonEncoder,
ConfigurationInterface $configuration,
ConfigurationBuilder $cloudinaryConfigurationBuilder,
array $data = []
) {
parent::__construct($context, $registry, $formFactory, $mediaHelper, $jsonEncoder, $data);
parent::__construct(
$context,
$registry,
$formFactory,
$mediaHelper,
$jsonEncoder,
$data
);
$this->configuration = $configuration;
$this->_cloudinaryConfigurationBuilder = $cloudinaryConfigurationBuilder;
}

protected function getCloudinaryConfig()
{
if (is_null($this->_cloudinaryConfig)) {
$this->_cloudinaryConfig = $this->_cloudinaryConfigurationBuilder->build();
if (!$this->_cloudinaryConfig['api_key'] || !$this->_cloudinaryConfig['api_secret'] || !$this->_cloudinaryConfig['cloud_name']) {
if (!$this->_cloudinaryConfig['cloud']['api_key'] || !$this->_cloudinaryConfig['cloud']['api_secret'] || !$this->_cloudinaryConfig['cloud']['cloud_name']) {
$this->_cloudinaryConfig = false;
} else {
$this->_cloudinaryConfig['api_url'] = "https://api.cloudinary.com/v1_1/{$this->_cloudinaryConfig['cloud_name']}/";
$this->_cloudinaryConfig['cloud']['api_url'] = "https://api.cloudinary.com/v1_1/{$this->_cloudinaryConfig['cloud']['cloud_name']}/";
}
}
return $this->_cloudinaryConfig;

return $this->_cloudinaryConfig['cloud'];
}

/**
Expand All @@ -66,7 +95,7 @@ public function getWidgetOptions()
'htmlId' => $this->getHtmlId(),
'youTubeApiKey' => $this->mediaHelper->getYouTubeApiKey(),
'videoSelector' => $this->videoSelector,
'cloudinaryPlaceholder' => $this->getViewFileUrl('Cloudinary_Cloudinary::images/cloudinary_logo_for_white_bg.jpg')
'cloudinaryPlaceholder' => $this->getPlaceholderUrl(),
]
);
}
Expand All @@ -78,18 +107,24 @@ public function getWidgetOptions()
*/
protected function getNoteVideoUrl()
{
if (!$this->configuration->isModuleEnabled()) {
return parent::getNoteVideoUrl();
}

$result = __('Supported: Vimeo');
$messages = "";
if ($this->mediaHelper->getYouTubeApiKey() === null) {
$messages .= __('<br>*To add YouTube video, please <a href="%1">enter YouTube API Key</a> first.', $this->getConfigApiKeyUrl());
} else {
$result .= __(', YouTube');
}

if (!$this->getCloudinaryConfig()) {
$messages .= __('<br>*To add Cloudinary video, please <a href="%1">enter your Cloudinary Account Credentials</a> first.', $this->getCloudinaryConfigUrl());
} else {
$result .= __(', Cloudinary');
}

return $result . $messages;
}

Expand All @@ -107,4 +142,24 @@ protected function getCloudinaryConfigUrl()
]
);
}

/**
* @return string
*/
protected function getPlaceholderUrl()
{
$storeManager = $this->configuration->getStoreManager();
$configPaths = [
'catalog/placeholder/image_placeholder',
'catalog/placeholder/small_image_placeholder',
'catalog/placeholder/thumbnail_placeholder',
];
foreach ($configPaths as $configPath) {
if (($path = $storeManager->getStore()->getConfig($configPath))) {
return $storeManager->getStore()->getBaseUrl(UrlInterface::URL_TYPE_MEDIA) . 'catalog/product/placeholder/' . $path;
break;
}
}
return $this->getViewFileUrl('Cloudinary_Cloudinary::images/cloudinary_cloud_glyph_blue.png');
}
}
Loading