summaryrefslogtreecommitdiff
path: root/addons/web_unsplash/static/src/js/unsplash_beacon.js
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/web_unsplash/static/src/js/unsplash_beacon.js
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/web_unsplash/static/src/js/unsplash_beacon.js')
-rw-r--r--addons/web_unsplash/static/src/js/unsplash_beacon.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/addons/web_unsplash/static/src/js/unsplash_beacon.js b/addons/web_unsplash/static/src/js/unsplash_beacon.js
new file mode 100644
index 00000000..c15ff027
--- /dev/null
+++ b/addons/web_unsplash/static/src/js/unsplash_beacon.js
@@ -0,0 +1,34 @@
+odoo.define('web_unsplash.beacon', function (require) {
+'use strict';
+
+var publicWidget = require('web.public.widget');
+
+publicWidget.registry.UnsplashBeacon = publicWidget.Widget.extend({
+ // /!\ To adapt the day the beacon makes sense for backend customizations
+ selector: '#wrapwrap',
+
+ /**
+ * @override
+ */
+ start: function () {
+ var unsplashImages = _.map(this.$('img[src*="/unsplash/"]'), function (img) {
+ // get image id from URL (`http://www.domain.com:1234/unsplash/xYdf5feoI/lion.jpg` -> `xYdf5feoI`)
+ return img.src.split('/unsplash/')[1].split('/')[0];
+ });
+ if (unsplashImages.length) {
+ this._rpc({
+ route: '/web_unsplash/get_app_id',
+ }).then(function (appID) {
+ if (!appID) {
+ return;
+ }
+ $.get('https://views.unsplash.com/v', {
+ 'photo_id': unsplashImages.join(','),
+ 'app_id': appID,
+ });
+ });
+ }
+ return this._super.apply(this, arguments);
+ },
+});
+});