appscms-tools-theme 5.1.8 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/_data/.DS_Store +0 -0
- data/_data/aitools/en/ai-article-writer.json +184 -0
- data/_data/aitools/en/all-in-one-social-post.json +217 -0
- data/_data/aitools/en/amazon-product-bullet-points-generator.json +224 -0
- data/_data/aitools/en/amazon-product-description-generator.json +237 -0
- data/_data/aitools/en/blog-conclusion-generator.json +253 -0
- data/_data/aitools/en/blog-content-calendar.json +232 -0
- data/_data/aitools/en/blog-introduction-generator.json +246 -0
- data/_data/aitools/en/blog-outline-generator.json +232 -0
- data/_data/aitools/en/blog-section-generator.json +253 -0
- data/_data/aitools/en/blog-title-generator.json +232 -0
- data/_data/aitools/en/blog-topic-ideas.json +232 -0
- data/_data/aitools/en/brand-name-generator.json +215 -0
- data/_data/aitools/en/caption-generator.json +271 -0
- data/_data/aitools/en/engagement-post-generator.json +251 -0
- data/_data/aitools/en/facebook-post.json +232 -0
- data/_data/aitools/en/hidden-fact-finder.json +232 -0
- data/_data/aitools/en/human-written-blog-post.json +232 -0
- data/_data/aitools/en/instagram-bio-generator.json +246 -0
- data/_data/aitools/en/instagram-caption.json +232 -0
- data/_data/aitools/en/instagram-carousel.json +250 -0
- data/_data/aitools/en/instagram-hashtag-generator.json +246 -0
- data/_data/aitools/en/instagram-name-generator.json +239 -0
- data/_data/aitools/en/instagram-threads-generator.json +239 -0
- data/_data/aitools/en/interactive-content-creator.json +252 -0
- data/_data/aitools/en/linkedin-hashtag-generator.json +239 -0
- data/_data/aitools/en/linkedin-post.json +232 -0
- data/_data/aitools/en/motivational-posts.json +239 -0
- data/_data/aitools/en/pinterest-pin.json +217 -0
- data/_data/aitools/en/platform-specific-content-generator.json +246 -0
- data/_data/aitools/en/product-description.json +222 -0
- data/_data/aitools/en/quick-article-writer.json +253 -0
- data/_data/aitools/en/replies-for-facebook.json +239 -0
- data/_data/aitools/en/replies-for-instagram.json +239 -0
- data/_data/aitools/en/replies-for-linkedin.json +239 -0
- data/_data/aitools/en/replies-for-twitter.json +239 -0
- data/_data/aitools/en/rewrite-article-with-keywords.json +246 -0
- data/_data/aitools/en/script-for-instagram-reel.json +246 -0
- data/_data/aitools/en/script-for-tiktok-video.json +246 -0
- data/_data/aitools/en/seo-optimized-blog-post.json +239 -0
- data/_data/aitools/en/snapchat-caption-maker.json +245 -0
- data/_data/aitools/en/social-media-bio-creator.json +274 -0
- data/_data/aitools/en/social-media-bio-generator.json +246 -0
- data/_data/aitools/en/social-media-calendar.json +250 -0
- data/_data/aitools/en/tiktok-caption.json +232 -0
- data/_data/aitools/en/tiktok-username-generator.json +239 -0
- data/_data/aitools/en/twitter-poll-generator.json +250 -0
- data/_data/aitools/en/twitter-post.json +272 -0
- data/_data/contenttool/en/features.json +217 -10
- data/_includes/.DS_Store +0 -0
- data/_includes/appscms/.DS_Store +0 -0
- data/_includes/appscms/customblog/pageRelatedPosts.html +1 -1
- data/_layouts/appscms-feature.html +1 -1
- data/_layouts/content-tool-ai copy 2.html +6611 -0
- data/_layouts/content-tool-ai.html +305 -44
- data/assets/.DS_Store +0 -0
- data/assets/css/content-tool-ai.css +815 -11
- metadata +50 -67
- data/assets/js/.DS_Store +0 -0
- data/assets/js/TopScroll.js +0 -8
- data/assets/js/adBlocker.js +0 -68
- data/assets/js/ads.js +0 -8
- data/assets/js/append-div.js +0 -10
- data/assets/js/appscms-infographics.js +0 -0
- data/assets/js/appscms-login.js +0 -447
- data/assets/js/appscms-search-home1.js +0 -136
- data/assets/js/appscms-search.js +0 -133
- data/assets/js/appscms-theme.js +0 -459
- data/assets/js/batch.js +0 -219
- data/assets/js/blog-topic-ideas.js +0 -57
- data/assets/js/calculator-tooltip.js +0 -3
- data/assets/js/devtools.js +0 -82
- data/assets/js/face-api.js +0 -38064
- data/assets/js/face-detection.js +0 -303
- data/assets/js/faceSystem.js +0 -0
- data/assets/js/featureResult.js +0 -48
- data/assets/js/frame.js +0 -264
- data/assets/js/googledrive.js +0 -158
- data/assets/js/homeResult.js +0 -37
- data/assets/js/human-written-blog-post.js +0 -57
- data/assets/js/instagram-caption.js +0 -57
- data/assets/js/instagram-hashtag-generator.js +0 -10
- data/assets/js/instagram-name-generator.js +0 -61
- data/assets/js/manifest.json +0 -17
- data/assets/js/models/age_gender_model-shard1 +0 -0
- data/assets/js/models/age_gender_model-weights_manifest.json +0 -1
- data/assets/js/models/face_expression_model-shard1 +0 -0
- data/assets/js/models/face_expression_model-weights_manifest.json +0 -1
- data/assets/js/models/face_landmark_68_model-shard1 +0 -0
- data/assets/js/models/face_landmark_68_model-weights_manifest.json +0 -1
- data/assets/js/models/face_landmark_68_tiny_model-shard1 +0 -0
- data/assets/js/models/face_landmark_68_tiny_model-weights_manifest.json +0 -1
- data/assets/js/models/face_recognition_model-shard1 +0 -0
- data/assets/js/models/face_recognition_model-shard2 +0 -6
- data/assets/js/models/face_recognition_model-weights_manifest.json +0 -1
- data/assets/js/models/mtcnn_model-shard1 +0 -0
- data/assets/js/models/mtcnn_model-weights_manifest.json +0 -1
- data/assets/js/models/ssd_mobilenetv1_model-shard1 +0 -0
- data/assets/js/models/ssd_mobilenetv1_model-shard2 +8 -137
- data/assets/js/models/ssd_mobilenetv1_model-weights_manifest.json +0 -1
- data/assets/js/models/tiny_face_detector_model-shard1 +0 -0
- data/assets/js/models/tiny_face_detector_model-weights_manifest.json +0 -1
- data/assets/js/multiselect.js +0 -185
- data/assets/js/partytown/debug/partytown-atomics.js +0 -929
- data/assets/js/partytown/debug/partytown-media.js +0 -374
- data/assets/js/partytown/debug/partytown-sandbox-sw.js +0 -920
- data/assets/js/partytown/debug/partytown-sw.js +0 -59
- data/assets/js/partytown/debug/partytown-ww-atomics.js +0 -2699
- data/assets/js/partytown/debug/partytown-ww-sw.js +0 -2691
- data/assets/js/partytown/debug/partytown.js +0 -114
- data/assets/js/partytown/partytown-atomics.js +0 -600
- data/assets/js/partytown/partytown-media.js +0 -2
- data/assets/js/partytown/partytown-sw.js +0 -50
- data/assets/js/perspective.min.js +0 -182
- data/assets/js/photo-effects.json +0 -85
- data/assets/js/redirectResult.js +0 -10
- data/assets/js/sharePage.js +0 -65
- data/assets/js/testing-batch.js +0 -39
- data/assets/js/theme.js +0 -104
- data/assets/js/usageTracking.js +0 -143
- data/assets/js/usageTrackingEvents.js +0 -6
- data/assets/js/userUsageCount.js +0 -0
- data/assets/js/webvitals.js +0 -5
data/assets/js/usageTracking.js
DELETED
@@ -1,143 +0,0 @@
|
|
1
|
-
// Generate a unique ID for the user (if not already generated)
|
2
|
-
const generateUserID = () => {
|
3
|
-
// Check if the user ID is already stored in cookies or local storage
|
4
|
-
const storedUserID = getStoredUserID();
|
5
|
-
|
6
|
-
if (storedUserID) {
|
7
|
-
return storedUserID;
|
8
|
-
}
|
9
|
-
|
10
|
-
// Example: Generating a random string
|
11
|
-
const characters =
|
12
|
-
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
13
|
-
let id = "";
|
14
|
-
for (let i = 0; i < 10; i++) {
|
15
|
-
id += characters.charAt(Math.floor(Math.random() * characters.length));
|
16
|
-
}
|
17
|
-
|
18
|
-
// Store the generated user ID in cookies or local storage
|
19
|
-
storeUserID(id);
|
20
|
-
|
21
|
-
return id;
|
22
|
-
};
|
23
|
-
|
24
|
-
// Get the stored user ID from cookies or local storage
|
25
|
-
const getStoredUserID = () => {
|
26
|
-
return localStorage.getItem("userID");
|
27
|
-
};
|
28
|
-
|
29
|
-
// Store the user ID in cookies or local storage
|
30
|
-
const storeUserID = (userID) => {
|
31
|
-
localStorage.setItem("userID", userID);
|
32
|
-
};
|
33
|
-
|
34
|
-
// Get the current date in YYYY-MM-DD format
|
35
|
-
const getCurrentDate = () => {
|
36
|
-
const today = new Date();
|
37
|
-
const year = today.getFullYear();
|
38
|
-
const month = String(today.getMonth() + 1).padStart(2, "0");
|
39
|
-
const day = String(today.getDate()).padStart(2, "0");
|
40
|
-
return `${year}-${month}-${day}`;
|
41
|
-
};
|
42
|
-
|
43
|
-
let userTrackingCountLimit = "20";
|
44
|
-
const checkUsage = () => {
|
45
|
-
const today = new Date().toDateString();
|
46
|
-
const usageCount = getCookie("featureUsageCount");
|
47
|
-
|
48
|
-
if (usageCount) {
|
49
|
-
// User has already used the feature today
|
50
|
-
if (usageCount >= Number(userTrackingCountLimit)) {
|
51
|
-
showShareModal();
|
52
|
-
} else {
|
53
|
-
incrementUsageCount(usageCount);
|
54
|
-
}
|
55
|
-
} else {
|
56
|
-
// First usage of the day
|
57
|
-
setCookie("featureUsageCount", 1, getExpirationDate());
|
58
|
-
}
|
59
|
-
const userID = generateUserID();
|
60
|
-
try {
|
61
|
-
if ((usageCount + 1) % 5 === 0) {
|
62
|
-
gtag("event", `feature_used_${usageCount + 1}_times`, {
|
63
|
-
user_id: userID,
|
64
|
-
userID: userID,
|
65
|
-
feature: window.location.pathname + location.search,
|
66
|
-
});
|
67
|
-
}
|
68
|
-
} catch (error) {
|
69
|
-
console.log(error);
|
70
|
-
}
|
71
|
-
|
72
|
-
try {
|
73
|
-
gtag("event", "feature_used", {
|
74
|
-
user_id: userID,
|
75
|
-
userID: userID,
|
76
|
-
feature: window.location.pathname + location.search,
|
77
|
-
});
|
78
|
-
} catch (error) {
|
79
|
-
console.log(error);
|
80
|
-
}
|
81
|
-
};
|
82
|
-
const incrementUsageCount = (count) => {
|
83
|
-
const today = new Date().toDateString();
|
84
|
-
|
85
|
-
if (count >= Number(userTrackingCountLimit)) {
|
86
|
-
showShareModal();
|
87
|
-
} else {
|
88
|
-
count++;
|
89
|
-
setCookie("featureUsageCount", count, getExpirationDate());
|
90
|
-
}
|
91
|
-
};
|
92
|
-
|
93
|
-
const showShareModal = () => {
|
94
|
-
document.getElementById("shareModal").style.display = "block";
|
95
|
-
};
|
96
|
-
|
97
|
-
const handleShare = () => {
|
98
|
-
const usageCount = getCookie("featureUsageCount");
|
99
|
-
if (usageCount) {
|
100
|
-
setCookie("featureUsageCount", 0, getExpirationDate());
|
101
|
-
}
|
102
|
-
document.getElementById("shareModal").style.display = "none";
|
103
|
-
try {
|
104
|
-
const userID = generateUserID();
|
105
|
-
gtag("event", "feature_shared", {
|
106
|
-
user_id: userID,
|
107
|
-
userID: userID,
|
108
|
-
feature: window.location.pathname + location.search,
|
109
|
-
});
|
110
|
-
} catch (error) {
|
111
|
-
console.log(error);
|
112
|
-
}
|
113
|
-
};
|
114
|
-
|
115
|
-
const getCookie = (name) => {
|
116
|
-
const cookies = document.cookie.split(";");
|
117
|
-
for (let i = 0; i < cookies.length; i++) {
|
118
|
-
const cookie = cookies[i].trim();
|
119
|
-
if (cookie.indexOf(name + "=") === 0) {
|
120
|
-
return parseInt(cookie.substring((name + "=").length, cookie.length));
|
121
|
-
}
|
122
|
-
}
|
123
|
-
return null;
|
124
|
-
};
|
125
|
-
|
126
|
-
const setCookie = (name, value, expires) => {
|
127
|
-
document.cookie = `${name}=${value};expires=${expires};path=/`;
|
128
|
-
};
|
129
|
-
|
130
|
-
const getExpirationDate = () => {
|
131
|
-
const date = new Date();
|
132
|
-
date.setTime(date.getTime() + 24 * 60 * 60 * 1000); // 24 hours in milliseconds
|
133
|
-
return date.toUTCString();
|
134
|
-
};
|
135
|
-
const socialShare = document.querySelectorAll(".social-share");
|
136
|
-
|
137
|
-
if (socialShare) {
|
138
|
-
Array.from(socialShare).map((item) => {
|
139
|
-
item.addEventListener("click", () => {
|
140
|
-
handleShare();
|
141
|
-
});
|
142
|
-
});
|
143
|
-
}
|
data/assets/js/userUsageCount.js
DELETED
File without changes
|