Skip to content

Commit 17b7e04

Browse files
committed
show wishin ads on imglab
1 parent 282037b commit 17b7e04

File tree

1 file changed

+130
-60
lines changed

1 file changed

+130
-60
lines changed

imglab/js/prompt.js

Lines changed: 130 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,127 @@
1+
// Add this array at the top of your prompt.js file
2+
const ads = [
3+
{
4+
image: 'https://solothought.com/products/assets/images/wishin/YouTubeThumbnail.png',
5+
url: 'https://play.google.com/store/apps/details?id=com.solothought.wishin',
6+
alt: 'Wishin Product'
7+
},
8+
{
9+
image: 'https://solothought.com/products/assets/images/wishin/self-doubt-evidence.png',
10+
url: 'https://play.google.com/store/apps/details?id=com.solothought.wishin',
11+
alt: 'Wishin Product'
12+
},
13+
{
14+
image: 'https://solothought.com/products/assets/images/wishin/WishIn_ad_banner.png',
15+
url: 'https://play.google.com/store/apps/details?id=com.solothought.wishin',
16+
alt: 'Wishin Product'
17+
},
18+
];
19+
20+
// Function to get random ad
21+
function getRandomAd() {
22+
return ads[Math.floor(Math.random() * ads.length)];
23+
}
24+
25+
// Function to check if ad should be shown today
26+
function shouldShowAd() {
27+
const lastShown = localStorage.getItem('adLastShown');
28+
const today = new Date().toDateString();
29+
return lastShown !== today;
30+
}
31+
32+
// Modified feature popup with ad on the left
133
$(function () {
34+
const showAd = shouldShowAd();
35+
const selectedAd = showAd ? getRandomAd() : null;
36+
37+
const adColumn = showAd ? `
38+
<div class="col-md-4" style="padding-right: 20px; border-right: 2px solid #eee;">
39+
<a href="${selectedAd.url}" target="_blank" onclick="logAdClick('${selectedAd.url}')">
40+
<img src="${selectedAd.image}"
41+
alt="${selectedAd.alt}"
42+
style="width: 100%; height: auto; cursor: pointer; border-radius: 8px; margin-top: 10px;" />
43+
</a>
44+
</div>
45+
` : '';
46+
47+
const featureColClass = showAd ? 'col-md-8' : 'col-md-12';
48+
249
$.confirm({
350
title: "",
451
content: `
552
<div id="featurepopup">
6-
<div class="row text-center">
7-
<div class="col-md-3">
8-
<i class="icon-github-circled featureicon"></i>
9-
<div class="summary">
10-
Free & Open source
11-
<a class="github-button" href="https://github.com/NaturalIntelligence/imglab" data-size="large" data-show-count="true" aria-label="Star NaturalIntelligence/imglab on GitHub">Star</a>
12-
</div>
13-
</div>
14-
<div class="col-md-3">
15-
<i class="icon-user-secret featureicon"></i>
16-
<div class="summary">Your images and data are safe, they are saved locally</div>
17-
</div>
18-
<div class="col-md-3">
19-
<i class="icon-object-group featureicon"></i>
20-
<div class="summary">Multiple label types: point, circle, boundary box, polygon</div>
21-
</div>
22-
<div class="col-md-3">
23-
<i class="icon-laptop featureicon"></i>
24-
<div class="summary">Basic IDE features: zoom in/out, light, move, image thumbnails, drag ...</div>
25-
</div>
26-
</div>
27-
<div class="row text-center">
28-
<div class="col-md-3">
29-
<i class="icon-mouse-pointer featureicon"></i>
30-
<div class="summary">1 click face landmarking</div>
31-
</div>
32-
<div class="col-md-3">
33-
<i class="icon-firefox featureicon"></i>
34-
<div class="summary">No installation, works in your browser</div>
35-
</div>
36-
<div class="col-md-3">
37-
<i class="icon-doc-text featureicon"></i>
38-
<div class="summary">Multiple supported formats: dlib XML, dlib pts, Pascal VOC, COCO ..</div>
39-
</div>
40-
<div class="col-md-3">
41-
<div class="featureicon">
42-
<img src="img/icons/Offline_logo.svg" width="96px" />
43-
</div>
44-
<div class="summary">Works offline</div>
45-
</div>
46-
</div>
47-
<div class="row text-center">
48-
<div class="col-md-3">
49-
<i class="icon-tags featureicon"></i>
50-
<div class="summary">Multiple label types including name, category, tags</div>
51-
</div>
52-
<div class="col-md-3">
53-
<i class="icon-emo-thumbsup featureicon"></i>
54-
<div class="summary">Better user experience with features like autofill, hotkeys, cut & paste labels...</div>
55-
</div>
56-
<div class="col-md-3">
57-
<i class="icon-globe featureicon"></i>
58-
<div class="summary">Trusted by users from 45+ countries</div>
59-
</div>
60-
<div class="col-md-3">
61-
<i class="icon-picture featureicon"></i>
62-
<div class="summary">0.5 millions images annotated monthly</div>
63-
</div>
53+
<div class="row">
54+
${adColumn}
55+
<div class="${featureColClass}">
56+
<div class="row text-center">
57+
<div class="col-md-4 col-sm-6">
58+
<i class="icon-github-circled featureicon" style="font-size: 48px;"></i>
59+
<div class="summary" style="font-size: 13px;">
60+
Free & Open source
61+
<a class="github-button" href="https://github.com/NaturalIntelligence/imglab" data-size="large" data-show-count="true" aria-label="Star NaturalIntelligence/imglab on GitHub">Star</a>
62+
</div>
63+
</div>
64+
<div class="col-md-4 col-sm-6">
65+
<i class="icon-user-secret featureicon" style="font-size: 48px;"></i>
66+
<div class="summary" style="font-size: 13px;">Your images and data are safe, they are saved locally</div>
67+
</div>
68+
<div class="col-md-4 col-sm-6">
69+
<i class="icon-object-group featureicon" style="font-size: 48px;"></i>
70+
<div class="summary" style="font-size: 13px;">Multiple label types: point, circle, boundary box, polygon</div>
71+
</div>
72+
</div>
73+
<div class="row text-center">
74+
<div class="col-md-4 col-sm-6">
75+
<i class="icon-mouse-pointer featureicon" style="font-size: 48px;"></i>
76+
<div class="summary" style="font-size: 13px;">1 click face landmarking</div>
77+
</div>
78+
<div class="col-md-4 col-sm-6">
79+
<i class="icon-firefox featureicon" style="font-size: 48px;"></i>
80+
<div class="summary" style="font-size: 13px;">No installation, works in your browser</div>
81+
</div>
82+
<div class="col-md-4 col-sm-6">
83+
<i class="icon-doc-text featureicon" style="font-size: 48px;"></i>
84+
<div class="summary" style="font-size: 13px;">Multiple supported formats: dlib XML, dlib pts, Pascal VOC, COCO ..</div>
85+
</div>
86+
</div>
87+
<div class="row text-center">
88+
<div class="col-md-4 col-sm-6">
89+
<i class="icon-tags featureicon" style="font-size: 48px;"></i>
90+
<div class="summary" style="font-size: 13px;">Multiple label types including name, category, tags</div>
91+
</div>
92+
<div class="col-md-4 col-sm-6">
93+
<i class="icon-emo-thumbsup featureicon" style="font-size: 48px;"></i>
94+
<div class="summary" style="font-size: 13px;">Better user experience with features like autofill, hotkeys, cut & paste labels...</div>
95+
</div>
96+
<div class="col-md-4 col-sm-6">
97+
<i class="icon-globe featureicon" style="font-size: 48px;"></i>
98+
<div class="summary" style="font-size: 13px;">Trusted by users from 45+ countries</div>
99+
</div>
100+
</div>
101+
<div class="row text-center">
102+
<div class="col-md-4 col-sm-6">
103+
<i class="icon-laptop featureicon" style="font-size: 48px;"></i>
104+
<div class="summary" style="font-size: 13px;">Basic IDE features: zoom in/out, light, move, image thumbnails, drag ...</div>
105+
</div>
106+
<div class="col-md-4 col-sm-6">
107+
<div class="featureicon">
108+
<img src="img/icons/Offline_logo.svg" width="48px" />
109+
</div>
110+
<div class="summary" style="font-size: 13px;">Works offline</div>
111+
</div>
112+
<div class="col-md-4 col-sm-6">
113+
<i class="icon-picture featureicon" style="font-size: 48px;"></i>
114+
<div class="summary" style="font-size: 13px;">0.5 millions images annotated monthly</div>
115+
</div>
116+
</div>
64117
</div>
118+
</div>
65119
</div>
66120
`,
67121
escapeKey: true,
68122
backgroundDismiss: true,
69123
useBootstrap: false,
70-
boxWidth: 900,
124+
boxWidth: showAd ? 1100 : 900,
71125
buttons: {
72126
confirm: {
73127
text: "Donate",
@@ -80,8 +134,24 @@ $(function () {
80134
},
81135
},
82136
});
137+
138+
// Save that ad was shown today
139+
if (showAd) {
140+
localStorage.setItem('adLastShown', new Date().toDateString());
141+
}
83142
});
84143

144+
// Optional: Track ad clicks
145+
function logAdClick(url) {
146+
if (typeof gtag !== 'undefined') {
147+
gtag('event', 'click', {
148+
event_category: 'ad',
149+
event_label: url,
150+
transport_type: 'beacon'
151+
});
152+
}
153+
}
154+
85155
function displayDonationPrompt() {
86156
$.dialog({
87157
title: "Donate",
@@ -101,4 +171,4 @@ function logPaypal() {
101171
event_label: "paypal",
102172
transport_type: "beacon",
103173
});
104-
}
174+
}

0 commit comments

Comments
 (0)