Version Description
Download this release
Release Info
Developer | Narinder singh |
Plugin | Timeline Widget For Elementor (Elementor Timeline, Vertical & Horizontal Timeline) |
Version | 1.2.1 |
Comparing to | |
See all releases |
Code changes from version 1.1.3 to 1.2.1
- assets/css/twae-centered-timeline.css +13 -1
- assets/css/twae-centered-timeline.min.css +1 -1
- feedback/css/admin-feedback.css +118 -0
- feedback/images/cool-plugins-preloader.gif +0 -0
- feedback/js/admin-feedback.js +104 -0
- feedback/twae-admin-feedback-form.php +189 -0
- readme.txt +13 -1
- timeline-widget-addon-for-elementor.php +5 -5
- widgets/editor-layouts/horizontal-template.php +27 -6
- widgets/editor-layouts/vertical-template.php +27 -6
- widgets/frontend-layouts/twae-centered-timeline.php +25 -7
- widgets/frontend-layouts/twae-horizontal-timeline.php +23 -5
- widgets/twae-widget.php +3 -3
assets/css/twae-centered-timeline.css
CHANGED
@@ -159,7 +159,7 @@
|
|
159 |
-moz-border-radius: 6px;
|
160 |
border-radius: 6px;
|
161 |
box-shadow: 0px 2px 8px -2px rgba(0, 0, 0, 0.3);
|
162 |
-
border:
|
163 |
}
|
164 |
|
165 |
.twae-wrapper .twae-data-container:after {
|
@@ -350,3 +350,15 @@
|
|
350 |
|
351 |
}
|
352 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
-moz-border-radius: 6px;
|
160 |
border-radius: 6px;
|
161 |
box-shadow: 0px 2px 8px -2px rgba(0, 0, 0, 0.3);
|
162 |
+
border: 2px solid rgba(0, 0, 0, 0.05);
|
163 |
}
|
164 |
|
165 |
.twae-wrapper .twae-data-container:after {
|
350 |
|
351 |
}
|
352 |
|
353 |
+
.twae-wrapper .twae-right-aligned .twae-data-container{
|
354 |
+
border-left: 2px solid;
|
355 |
+
}
|
356 |
+
.twae-wrapper .twae-left-aligned .twae-data-container{
|
357 |
+
border-right: 2px solid,
|
358 |
+
}
|
359 |
+
|
360 |
+
@media only screen and (max-width: 769px) {
|
361 |
+
.twae-wrapper .twae-left-aligned .twae-data-container{
|
362 |
+
border-left: 2px solid;
|
363 |
+
}
|
364 |
+
}
|
assets/css/twae-centered-timeline.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.twae-vertical:after,.twae-vertical:before{content:"";width:20px;height:20px;background:#222;display:inline-block;border-radius:50%;position:absolute;left:calc(50% - 12px);z-index:9}.twae-vertical:before{top:-10px}.twae-vertical:after{bottom:20px}.twae-timeline-centered{position:relative;margin-bottom:30px;padding-top:20px}.twae-vertical span.twae-year-container:first-child{margin-top:0!important}.twae-timeline-centered.twae-timeline-sm .twae-timeline-entry{margin-bottom:20px!important}.twae-timeline-centered.twae-timeline-sm .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container{padding:.85em}.twae-timeline-centered:after,.twae-timeline-centered:before{content:" ";display:table}.twae-timeline-centered:after{clear:both}.twae-timeline-centered:before{content:'';position:absolute;display:block;width:4px;left:50%;top:0;bottom:0;margin-left:-4px}.twae-timeline-centered .twae-timeline-entry{position:relative;width:50%;float:right;margin-bottom:70px;clear:both}.twae-timeline-centered .twae-timeline-entry:after,.twae-timeline-centered .twae-timeline-entry:before{content:" ";display:table}.twae-timeline-centered .twae-timeline-entry:after{clear:both}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned{float:left}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner{margin-left:0;margin-right:-22px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-label-extra-label{left:auto;right:-100%;text-align:left}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-icon{float:right}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-data-container{margin-left:0;margin-right:70px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-data-container:after{left:auto;right:0;margin-left:0;margin-right:-9px;-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner{position:relative;margin-left:-27px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner:after,.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner:before{content:" ";display:table}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner:after{clear:both}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-label-extra-label{position:absolute;left:-100%;width:100%;text-align:right;padding:10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-label-extra-label>span{display:block}.twae-timeline-centered .twae-label-extra-label>span:first-child{font-size:1em;font-weight:700}.twae-timeline-centered .twae-label-extra-label>span:last-child{font-size:.75em;margin-top:5px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-icon{display:block;width:48px;height:48px;-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;border-radius:50%;text-align:center;border:4px solid;line-height:0;font-size:0;float:left;padding:0}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-icon i{line-height:38px;font-size:22px}.twae-vertical .twae-timeline-centered .twae-data-container{display:flow-root}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container{position:relative;padding:1.7em;margin-left:70px;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;box-shadow:0 2px 8px -2px rgba(0,0,0,.3);border:
|
1 |
+
.twae-vertical:after,.twae-vertical:before{content:"";width:20px;height:20px;background:#222;display:inline-block;border-radius:50%;position:absolute;left:calc(50% - 12px);z-index:9}.twae-vertical:before{top:-10px}.twae-vertical:after{bottom:20px}.twae-timeline-centered{position:relative;margin-bottom:30px;padding-top:20px}.twae-vertical span.twae-year-container:first-child{margin-top:0!important}.twae-timeline-centered.twae-timeline-sm .twae-timeline-entry{margin-bottom:20px!important}.twae-timeline-centered.twae-timeline-sm .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container{padding:.85em}.twae-timeline-centered:after,.twae-timeline-centered:before{content:" ";display:table}.twae-timeline-centered:after{clear:both}.twae-timeline-centered:before{content:'';position:absolute;display:block;width:4px;left:50%;top:0;bottom:0;margin-left:-4px}.twae-timeline-centered .twae-timeline-entry{position:relative;width:50%;float:right;margin-bottom:70px;clear:both}.twae-timeline-centered .twae-timeline-entry:after,.twae-timeline-centered .twae-timeline-entry:before{content:" ";display:table}.twae-timeline-centered .twae-timeline-entry:after{clear:both}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned{float:left}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner{margin-left:0;margin-right:-22px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-label-extra-label{left:auto;right:-100%;text-align:left}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-icon{float:right}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-data-container{margin-left:0;margin-right:70px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-data-container:after{left:auto;right:0;margin-left:0;margin-right:-9px;-moz-transform:rotate(180deg);-o-transform:rotate(180deg);-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner{position:relative;margin-left:-27px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner:after,.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner:before{content:" ";display:table}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner:after{clear:both}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-label-extra-label{position:absolute;left:-100%;width:100%;text-align:right;padding:10px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-label-extra-label>span{display:block}.twae-timeline-centered .twae-label-extra-label>span:first-child{font-size:1em;font-weight:700}.twae-timeline-centered .twae-label-extra-label>span:last-child{font-size:.75em;margin-top:5px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-icon{display:block;width:48px;height:48px;-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box;border-radius:50%;text-align:center;border:4px solid;line-height:0;font-size:0;float:left;padding:0}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-icon i{line-height:38px;font-size:22px}.twae-vertical .twae-timeline-centered .twae-data-container{display:flow-root}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container{position:relative;padding:1.7em;margin-left:70px;-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;box-shadow:0 2px 8px -2px rgba(0,0,0,.3);border:2px solid rgba(0,0,0,.05)}.twae-wrapper .twae-data-container:after{border-color:transparent #e9662c transparent transparent}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container:after{content:'';display:block;position:absolute;width:0;height:0;border-style:solid;border-width:9px 9px 9px 0;left:0;top:14px;margin-left:-9px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container .twae-title,.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container p{margin:0}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container p+p{margin-top:15px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container .twae-title{margin-bottom:10px;font-weight:700;display:inline-block;width:100%}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container .twae-title span{-webkit-opacity:.6;-moz-opacity:.6;opacity:.6}.twae-timeline-centered .twae-timeline-entry .twae-data-container .twae-timeline-img img{float:left;padding:0 5px 0 0}.twae-timeline-centered .twae-year-container .twae-year-label{border-radius:6px;display:inline-block;font-size:20px;font-weight:600;line-height:1;padding:7px 14px;text-align:center;vertical-align:baseline;white-space:nowrap}.twae-timeline-centered .twae-year-container{position:relative;float:left;clear:left;width:50%;margin-top:20px;margin-bottom:20px;top:1px;width:100%;margin-left:auto;margin-right:auto;padding:0;text-align:center}.twae-timeline-centered .twae-year-container:after,.twae-timeline-centered .twae-year-container:before{content:"";display:table}.twae-timeline-centered .twae-year-container:after{clear:both}.twae-vertical .twae-timeline-centered .twae-year{border:2px solid}@media only screen and (max-width:768px){.twae-vertical:after,.twae-vertical:before{left:10px}.twae-timeline-centered:before{left:22px}.twae-timeline-centered .twae-year-container{padding-left:54px;text-align:left;margin-bottom:5px;margin-top:20px}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner{margin-left:0}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner{margin-right:0}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-label-extra-label{position:relative;left:0;text-align:left;display:inline-block;width:100%;padding-left:54px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-label-extra-label{right:0}.twae-timeline-centered .twae-timeline-entry{width:100%}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-icon{width:40px;height:40px;line-height:28px;font-size:18px!important}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-icon i{font-size:18px!important;line-height:31px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-icon{float:left}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container,.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-data-container{margin-left:54px;margin-right:0;border-right:1px solid rgba(0,0,0,.05)!important}.twae-timeline-centered .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container:after{top:10px}.twae-timeline-centered .twae-timeline-entry.twae-left-aligned .twae-timeline-entry-inner .twae-data-container:after{left:0;right:auto;margin-left:-9px;margin-right:0;-moz-transform:rotate(360deg);-o-transform:rotate(360deg);-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg)}}@media only screen and (min-width:769px){.twae-timeline-centered.twae-one-sided-timeline:before{left:24%}.twae-timeline-centered.twae-one-sided-timeline .twae-year-container{text-align:right;padding-right:80%}.twae-timeline-centered.twae-one-sided-timeline .twae-timeline-entry{width:100%;float:left}.twae-timeline-centered.twae-one-sided-timeline .twae-timeline-entry .twae-timeline-entry-inner{margin-left:0}.twae-timeline-centered.twae-one-sided-timeline .twae-timeline-entry .twae-timeline-entry-inner .twae-data-container{margin-left:31%}.twae-timeline-centered.twae-one-sided-timeline .twae-timeline-entry .twae-timeline-entry-inner .twae-icon{margin-left:calc(24% - 25px)}.twae-timeline-centered.twae-one-sided-timeline .twae-timeline-entry .twae-timeline-entry-inner .twae-label-extra-label{left:-2%;width:22%}.twae-vertical.twae-one-sided-wrapper:after,.twae-vertical.twae-one-sided-wrapper:before{left:calc(23% - 4px)}}.twae-wrapper .twae-right-aligned .twae-data-container{border-left:2px solid}.twae-wrapper .twae-left-aligned .twae-data-container{border-right:2px solid,}@media only screen and (max-width:769px){.twae-wrapper .twae-left-aligned .twae-data-container{border-left:2px solid}}
|
feedback/css/admin-feedback.css
ADDED
@@ -0,0 +1,118 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
|------------------------------------------
|
3 |
+
| Deactivation feedback form
|
4 |
+
|------------------------------------------
|
5 |
+
*/
|
6 |
+
#cool-plugins-deactivate-feedback-dialog-wrapper.hide-feedback-popup{
|
7 |
+
opacity: 0;
|
8 |
+
}
|
9 |
+
.cool-plugins-deactivation-response{
|
10 |
+
position: fixed;
|
11 |
+
left: 35%;
|
12 |
+
top: 22%;
|
13 |
+
z-index: 9999;
|
14 |
+
color:white;
|
15 |
+
}
|
16 |
+
.cool-plugins-button{
|
17 |
+
border: none;
|
18 |
+
padding: 10px 10px;
|
19 |
+
text-align: center;
|
20 |
+
text-decoration: none;
|
21 |
+
display: inline-block;
|
22 |
+
font-size: 16px;
|
23 |
+
margin: 5px;
|
24 |
+
cursor: pointer;
|
25 |
+
background-color: #7bc6de;
|
26 |
+
color: white;
|
27 |
+
}
|
28 |
+
#cool-plugins-deactivate-feedback-dialog-form-body .cool-plugins-deactivate-feedback-dialog-input:not(:checked)~.cool-plugins-feedback-text {
|
29 |
+
display: none;
|
30 |
+
}
|
31 |
+
.cool-plugins-deactivation-response label{
|
32 |
+
display: block;
|
33 |
+
}
|
34 |
+
.cool-plugins-deactivation-response textarea {
|
35 |
+
margin: 10px;
|
36 |
+
width: -webkit-fill-available;
|
37 |
+
}
|
38 |
+
#cool-plugins-deactivate-feedback-dialog-form-body {
|
39 |
+
margin-top: 10px;
|
40 |
+
}
|
41 |
+
.cool-plugins-deactivation-response input[type=radio]{
|
42 |
+
float: left;
|
43 |
+
margin-right: 10px;
|
44 |
+
margin-top: 0px;
|
45 |
+
}
|
46 |
+
label.cool-plugins-deactivate-feedback-dialog-label {
|
47 |
+
margin-bottom: 10px;
|
48 |
+
}
|
49 |
+
span#cool-plugins-feedback-form-title {
|
50 |
+
font-weight: 700;
|
51 |
+
font-size: 20px;
|
52 |
+
margin-bottom: 10px;
|
53 |
+
}
|
54 |
+
.cool-plugin-popup-button-wrapper {
|
55 |
+
margin-top: 25px;
|
56 |
+
}
|
57 |
+
#cool-plugins-deactivate-feedback-dialog-form-caption {
|
58 |
+
font-weight: 600;
|
59 |
+
margin-bottom: 17px;
|
60 |
+
font-size: 15px;
|
61 |
+
}
|
62 |
+
|
63 |
+
/*
|
64 |
+
|-----------------------
|
65 |
+
| Preloader
|
66 |
+
|-----------------------
|
67 |
+
*/
|
68 |
+
.cool-plugins-deactivation-response #cool-plugins-loader-wrapper{
|
69 |
+
display: none;
|
70 |
+
float: left;
|
71 |
+
width: 100%;
|
72 |
+
height: 85%;
|
73 |
+
position: absolute;
|
74 |
+
text-align: center;
|
75 |
+
opacity: .9;
|
76 |
+
background: white;
|
77 |
+
}
|
78 |
+
.cool-plugins-deactivation-response .cool-plugins-loader-container {
|
79 |
+
display: block;
|
80 |
+
text-align: center;
|
81 |
+
top: 38%;
|
82 |
+
position: absolute;
|
83 |
+
left: 42%;
|
84 |
+
text-align: center;
|
85 |
+
}
|
86 |
+
.cool-plugins-deactivation-response img.cool-plugins-preloader {
|
87 |
+
width: 40px;
|
88 |
+
height: 40px;
|
89 |
+
}
|
90 |
+
|
91 |
+
/*
|
92 |
+
|----------------------
|
93 |
+
| Colors
|
94 |
+
|----------------------
|
95 |
+
*/
|
96 |
+
#cool-plugins-form-wrapper {
|
97 |
+
padding: 20px;
|
98 |
+
background-color: white;
|
99 |
+
color: black;
|
100 |
+
}
|
101 |
+
#cool-plugins-deactivate-feedback-dialog-header {
|
102 |
+
padding: 20px;
|
103 |
+
background-color: #7bc6de;
|
104 |
+
}
|
105 |
+
a.cool-plugins-button:hover {
|
106 |
+
background: #adebff;
|
107 |
+
color: white;
|
108 |
+
}
|
109 |
+
.cool-plugins-button.button-deactivate,
|
110 |
+
.cool-plugins-button.button-deactivate:hover{
|
111 |
+
cursor: initial;
|
112 |
+
background-color: silver;
|
113 |
+
}
|
114 |
+
|
115 |
+
#cool-plugins-form-wrapper input#cool-plugins-GDPR-data-notice {
|
116 |
+
float: left;
|
117 |
+
margin-top: 4px !important;
|
118 |
+
}
|
feedback/images/cool-plugins-preloader.gif
ADDED
Binary file
|
feedback/js/admin-feedback.js
ADDED
@@ -0,0 +1,104 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function($) {
|
2 |
+
$(document).ready(function() {
|
3 |
+
|
4 |
+
/** Vairables that may needs to update */
|
5 |
+
let plugin_name = 'timeline-widget-addon-for-elementor'; // add plugin name with dash (-) instead of space ( )
|
6 |
+
let plugin_slug = 'timeline-widget-addon-for-elementor'; // plugin slug
|
7 |
+
|
8 |
+
|
9 |
+
$target = $('#the-list').find('[data-slug="' + plugin_name + '"] span.deactivate a');
|
10 |
+
|
11 |
+
var plugin_deactivate_link = $target.attr('href');
|
12 |
+
|
13 |
+
$($target).on('click', function(event) {
|
14 |
+
event.preventDefault();
|
15 |
+
$('#wpwrap').css('opacity', '0.4');
|
16 |
+
|
17 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").animate({
|
18 |
+
opacity: 1
|
19 |
+
}, 200, function() {
|
20 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").removeClass('hide-feedback-popup');
|
21 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").find('#cool-plugin-submitNdeactivate').addClass(plugin_slug);
|
22 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").find('#cool-plugin-skipNdeactivate').addClass(plugin_slug);
|
23 |
+
});
|
24 |
+
});
|
25 |
+
|
26 |
+
$('.cool-plugins-deactivate-feedback-dialog-input').on('click', function() {
|
27 |
+
if ($('#cool-plugins-GDPR-data-notice').is(":checked") === true && $('.cool-plugins-deactivate-feedback-dialog-input').is(':checked') === true) {
|
28 |
+
$('#cool-plugin-submitNdeactivate').removeClass('button-deactivate');
|
29 |
+
} else {
|
30 |
+
$('#cool-plugin-submitNdeactivate').addClass('button-deactivate');
|
31 |
+
}
|
32 |
+
|
33 |
+
});
|
34 |
+
|
35 |
+
$('#cool-plugins-GDPR-data-notice').on('click', function() {
|
36 |
+
|
37 |
+
if ($('#cool-plugins-GDPR-data-notice').is(":checked") === true && $('.cool-plugins-deactivate-feedback-dialog-input').is(':checked') === true) {
|
38 |
+
$('#cool-plugin-submitNdeactivate').removeClass('button-deactivate');
|
39 |
+
} else {
|
40 |
+
$('#cool-plugin-submitNdeactivate').addClass('button-deactivate');
|
41 |
+
}
|
42 |
+
})
|
43 |
+
|
44 |
+
$('#wpwrap').on('click', function(ev) {
|
45 |
+
if ($("#cool-plugins-deactivate-feedback-dialog-wrapper.hide-feedback-popup").length == 0) {
|
46 |
+
ev.preventDefault();
|
47 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").animate({
|
48 |
+
opacity: 0
|
49 |
+
}, 200, function() {
|
50 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").addClass("hide-feedback-popup");
|
51 |
+
$("#cool-plugins-deactivate-feedback-dialog-wrapper").find('#cool-plugin-submitNdeactivate').removeClass(plugin_slug);
|
52 |
+
$('#wpwrap').css('opacity', '1');
|
53 |
+
})
|
54 |
+
|
55 |
+
}
|
56 |
+
})
|
57 |
+
|
58 |
+
$(document).on('click', '#cool-plugin-submitNdeactivate.' + plugin_slug + ':not(".button-deactivate")', function(event) {
|
59 |
+
let nonce = $('#_wpnonce').val();
|
60 |
+
let reason = $('.cool-plugins-deactivate-feedback-dialog-input:checked').val();
|
61 |
+
let message = '';
|
62 |
+
console.log('textarea[name="reason_' + reason + '"]');
|
63 |
+
if ($('textarea[name="reason_' + reason + '"]').length > 0) {
|
64 |
+
if ($('textarea[name="reason_' + reason + '"]').val() == '') {
|
65 |
+
alert('Please provide some extra information!');
|
66 |
+
return;
|
67 |
+
} else {
|
68 |
+
message = $('textarea[name="reason_' + reason + '"]').val();
|
69 |
+
}
|
70 |
+
}
|
71 |
+
|
72 |
+
$.ajax({
|
73 |
+
url: ajaxurl,
|
74 |
+
method: 'POST',
|
75 |
+
data: {
|
76 |
+
'action': plugin_slug + '_submit_deactivation_response',
|
77 |
+
'_wpnonce': nonce,
|
78 |
+
'reason': reason,
|
79 |
+
'message': message,
|
80 |
+
},
|
81 |
+
beforeSend: function(data) {
|
82 |
+
$('#cool-plugin-submitNdeactivate').text('Deactivating...');
|
83 |
+
$('#cool-plugin-submitNdeactivate').attr('id', 'deactivating-plugin');
|
84 |
+
$('#cool-plugins-loader-wrapper').show();
|
85 |
+
$('#cool-plugin-skipNdeactivate').remove();
|
86 |
+
},
|
87 |
+
success: function(res) {
|
88 |
+
$('#cool-plugins-loader-wrapper').hide();
|
89 |
+
window.location = plugin_deactivate_link;
|
90 |
+
$('#deactivating-plugin').text('Deactivated');
|
91 |
+
}
|
92 |
+
})
|
93 |
+
|
94 |
+
});
|
95 |
+
|
96 |
+
$(document).on('click', '#cool-plugin-skipNdeactivate.' + plugin_slug + ':not(".button-deactivate")', function() {
|
97 |
+
$('#cool-plugin-submitNdeactivate').remove();
|
98 |
+
$('#cool-plugin-skipNdeactivate').addClass('button-deactivate');
|
99 |
+
$('#cool-plugin-skipNdeactivate').attr('id', 'deactivating-plugin');
|
100 |
+
window.location = plugin_deactivate_link;
|
101 |
+
});
|
102 |
+
|
103 |
+
});
|
104 |
+
})(jQuery);
|
feedback/twae-admin-feedback-form.php
ADDED
@@ -0,0 +1,189 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace TWAE_feddback\feedback;
|
3 |
+
/**
|
4 |
+
*
|
5 |
+
* --------------- ALWAYS CHANGE THE NAMESPACE ACCORDING TO THE PLUGIN ---------------------------
|
6 |
+
*
|
7 |
+
* This is the main file for creating admin feedback form.
|
8 |
+
* It is displayed when user deactivate the plugin.
|
9 |
+
*
|
10 |
+
*/
|
11 |
+
class cool_plugins_feedback{
|
12 |
+
|
13 |
+
private static $instance = null;
|
14 |
+
private $plugin_name = 'Timeline Widget Addon For Elementor';
|
15 |
+
private $plugin_url = TWAE_URL;
|
16 |
+
private $plugin_version = TWAE_VERSION;
|
17 |
+
private $plugin_slug = 'timeline-widget-addon-for-elementor';
|
18 |
+
private $feedback_url = 'http://feedback.coolplugins.net/wp-json/coolplugins-feedback/v1/feedback';
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Avoid creating multiple instance of this class
|
22 |
+
*/
|
23 |
+
static function get_instance(){
|
24 |
+
|
25 |
+
if( empty( self::$instance ) ){
|
26 |
+
return self::$instance = new self;
|
27 |
+
}
|
28 |
+
return self::$instance;
|
29 |
+
|
30 |
+
}
|
31 |
+
/*
|
32 |
+
|-----------------------------------------------------------------|
|
33 |
+
| Use this constructor to fire all actions and filters |
|
34 |
+
|-----------------------------------------------------------------|
|
35 |
+
*/
|
36 |
+
public function __construct(){
|
37 |
+
|
38 |
+
if( !is_admin() ){
|
39 |
+
return;
|
40 |
+
}
|
41 |
+
add_action('admin_enqueue_scripts', array( $this, 'enqueue_feedback_scripts') );
|
42 |
+
add_action('admin_head', array( $this, 'show_deactivate_feedback_popup') );
|
43 |
+
add_action('wp_ajax_'.$this->plugin_slug.'_submit_deactivation_response', array($this, 'submit_deactivation_response' ));
|
44 |
+
}
|
45 |
+
|
46 |
+
/*
|
47 |
+
|-----------------------------------------------------------------|
|
48 |
+
| Enqueue all scripts and styles to required page only |
|
49 |
+
|-----------------------------------------------------------------|
|
50 |
+
*/
|
51 |
+
function enqueue_feedback_scripts(){
|
52 |
+
$screen = get_current_screen();
|
53 |
+
if( isset( $screen ) && $screen->id == 'plugins' ){
|
54 |
+
wp_enqueue_script(__NAMESPACE__.'-feedback-script', $this->plugin_url .'feedback/js/admin-feedback.js' );
|
55 |
+
wp_enqueue_style('cool-plugins-feedback-style', $this->plugin_url .'feedback/css/admin-feedback.css' );
|
56 |
+
}
|
57 |
+
}
|
58 |
+
|
59 |
+
/*
|
60 |
+
|-----------------------------------------------------------------|
|
61 |
+
| HTML for creating feedback popup form |
|
62 |
+
|-----------------------------------------------------------------|
|
63 |
+
*/
|
64 |
+
public function show_deactivate_feedback_popup() {
|
65 |
+
|
66 |
+
$screen = get_current_screen();
|
67 |
+
if( !isset( $screen ) || $screen->id != 'plugins' ){
|
68 |
+
return;
|
69 |
+
}
|
70 |
+
$deactivate_reasons = [
|
71 |
+
'didnt_work_as_expected' => [
|
72 |
+
'title' => __( 'The plugin didn\'t work as expected', 'cool-plugins' ),
|
73 |
+
'input_placeholder' => 'What did you expect?',
|
74 |
+
],
|
75 |
+
'found_a_better_plugin' => [
|
76 |
+
'title' => __( 'I found a better plugin', 'cool-plugins' ),
|
77 |
+
'input_placeholder' => __( 'Please share which plugin', 'cool-plugins' ),
|
78 |
+
],
|
79 |
+
'couldnt_get_the_plugin_to_work' => [
|
80 |
+
'title' => __( 'The plugin is not working', 'cool-plugins' ),
|
81 |
+
'input_placeholder' => 'Please share your issue. So we can fix that for other users.',
|
82 |
+
],
|
83 |
+
'temporary_deactivation' => [
|
84 |
+
'title' => __( 'It\'s a temporary deactivation', 'cool-plugins' ),
|
85 |
+
'input_placeholder' => '',
|
86 |
+
],
|
87 |
+
'other' => [
|
88 |
+
'title' => __( 'Other', 'cool-plugins' ),
|
89 |
+
'input_placeholder' => __( 'Please share the reason', 'cool-plugins' ),
|
90 |
+
],
|
91 |
+
];
|
92 |
+
|
93 |
+
?>
|
94 |
+
<div id="cool-plugins-deactivate-feedback-dialog-wrapper" class="hide-feedback-popup">
|
95 |
+
|
96 |
+
<div class="cool-plugins-deactivation-response">
|
97 |
+
<div id="cool-plugins-deactivate-feedback-dialog-header">
|
98 |
+
<span id="cool-plugins-feedback-form-title"><?php echo __( 'Quick Feedback', 'cool-plugins' ); ?></span>
|
99 |
+
</div>
|
100 |
+
<div id="cool-plugins-loader-wrapper">
|
101 |
+
<div class="cool-plugins-loader-container">
|
102 |
+
<img class="cool-plugins-preloader" src="<?php echo $this->plugin_url; ?>feedback/images/cool-plugins-preloader.gif">
|
103 |
+
</div>
|
104 |
+
</div>
|
105 |
+
<div id="cool-plugins-form-wrapper" class="cool-plugins-form-wrapper-cls">
|
106 |
+
<form id="cool-plugins-deactivate-feedback-dialog-form" method="post">
|
107 |
+
<?php
|
108 |
+
wp_nonce_field( '_cool-plugins_deactivate_feedback_nonce' );
|
109 |
+
?>
|
110 |
+
<input type="hidden" name="action" value="cool-plugins_deactivate_feedback" />
|
111 |
+
<div id="cool-plugins-deactivate-feedback-dialog-form-caption"><?php echo __( 'If you have a moment, please share why you are deactivating this plugin.', 'cool-plugins' ); ?></div>
|
112 |
+
<div id="cool-plugins-deactivate-feedback-dialog-form-body">
|
113 |
+
<?php foreach ( $deactivate_reasons as $reason_key => $reason ) : ?>
|
114 |
+
<div class="cool-plugins-deactivate-feedback-dialog-input-wrapper">
|
115 |
+
<input id="cool-plugins-deactivate-feedback-<?php echo esc_attr( $reason_key ); ?>" class="cool-plugins-deactivate-feedback-dialog-input" type="radio" name="reason_key" value="<?php echo esc_attr( $reason_key ); ?>" />
|
116 |
+
<label for="cool-plugins-deactivate-feedback-<?php echo esc_attr( $reason_key ); ?>" class="cool-plugins-deactivate-feedback-dialog-label"><?php echo esc_html( $reason['title'] ); ?></label>
|
117 |
+
<?php if ( ! empty( $reason['input_placeholder'] ) ) : ?>
|
118 |
+
<textarea class="cool-plugins-feedback-text" type="textarea" name="reason_<?php echo esc_attr( $reason_key ); ?>" placeholder="<?php echo esc_attr( $reason['input_placeholder'] ); ?>"></textarea>
|
119 |
+
<?php endif; ?>
|
120 |
+
<?php if ( ! empty( $reason['alert'] ) ) : ?>
|
121 |
+
<div class="cool-plugins-feedback-text"><?php echo esc_html( $reason['alert'] ); ?></div>
|
122 |
+
<?php endif; ?>
|
123 |
+
</div>
|
124 |
+
<?php endforeach; ?>
|
125 |
+
<input class="cool-plugins-GDPR-data-notice" id="cool-plugins-GDPR-data-notice" type="checkbox"><label for="cool-plugins-GDPR-data-notice"><?php echo __('I consent to having Cool Plugins store my all submitted information via this form, they can also respond to my inquiry.','cool-plugins');?></label>
|
126 |
+
</div>
|
127 |
+
<div class="cool-plugin-popup-button-wrapper">
|
128 |
+
<a class="cool-plugins-button button-deactivate" id="cool-plugin-submitNdeactivate">Submit and Deactivate</a>
|
129 |
+
<a class="cool-plugins-button" id="cool-plugin-skipNdeactivate">Skip and Deactivate</a>
|
130 |
+
</div>
|
131 |
+
</form>
|
132 |
+
</div>
|
133 |
+
</div>
|
134 |
+
</div>
|
135 |
+
<?php
|
136 |
+
}
|
137 |
+
|
138 |
+
|
139 |
+
function submit_deactivation_response(){
|
140 |
+
if ( ! isset( $_POST['_wpnonce'] ) || ! wp_verify_nonce( $_POST['_wpnonce'], '_cool-plugins_deactivate_feedback_nonce' ) ) {
|
141 |
+
wp_send_json_error();
|
142 |
+
}else{
|
143 |
+
$reason = filter_var($_POST['reason'], FILTER_SANITIZE_STRING);
|
144 |
+
$deactivate_reasons = [
|
145 |
+
'didnt_work_as_expected' => [
|
146 |
+
'title' => __( 'The plugin didn\'t work as expected', 'cool-plugins' ),
|
147 |
+
'input_placeholder' => 'What did you expect?',
|
148 |
+
],
|
149 |
+
'found_a_better_plugin' => [
|
150 |
+
'title' => __( 'I found a better plugin', 'cool-plugins' ),
|
151 |
+
'input_placeholder' => __( 'Please share which plugin', 'cool-plugins' ),
|
152 |
+
],
|
153 |
+
'couldnt_get_the_plugin_to_work' => [
|
154 |
+
'title' => __( 'The plugin is not working', 'cool-plugins' ),
|
155 |
+
'input_placeholder' => 'Please share your issue. So we can fix that for other users.',
|
156 |
+
],
|
157 |
+
'temporary_deactivation' => [
|
158 |
+
'title' => __( 'It\'s a temporary deactivation', 'cool-plugins' ),
|
159 |
+
'input_placeholder' => '',
|
160 |
+
],
|
161 |
+
'other' => [
|
162 |
+
'title' => __( 'Other', 'cool-plugins' ),
|
163 |
+
'input_placeholder' => __( 'Please share the reason', 'cool-plugins' ),
|
164 |
+
],
|
165 |
+
];
|
166 |
+
|
167 |
+
$deativation_reason = array_key_exists( $reason, $deactivate_reasons ) ? $reason : 'other';
|
168 |
+
|
169 |
+
$sanitized_message = sanitize_text_field($_POST['message'])==''?'N/A':sanitize_text_field($_POST['message']);
|
170 |
+
$admin_email = sanitize_email(get_option('admin_email'));
|
171 |
+
$site_url = esc_url(site_url());
|
172 |
+
$response = wp_remote_post( $this->feedback_url , [
|
173 |
+
'timeout' => 30,
|
174 |
+
'body' => [
|
175 |
+
'plugin_version' => $this->plugin_version,
|
176 |
+
'plugin_name' => $this->plugin_name,
|
177 |
+
'reason' => $deativation_reason,
|
178 |
+
'review' => $sanitized_message,
|
179 |
+
'email' => $admin_email,
|
180 |
+
'domain' => $site_url,
|
181 |
+
],
|
182 |
+
] );
|
183 |
+
|
184 |
+
die( json_encode( array('response'=>$response) ) );
|
185 |
+
}
|
186 |
+
|
187 |
+
}
|
188 |
+
}
|
189 |
+
cool_plugins_feedback::get_instance();
|
readme.txt
CHANGED
@@ -35,6 +35,7 @@ https://youtu.be/05-jlAD-5bc
|
|
35 |
* Add story date/year or custom text as per your requirements.
|
36 |
* Manage typography of story title, description and other fonts.
|
37 |
* Add image inside your timeline story.
|
|
|
38 |
|
39 |
It is an **[Elementor Page Builder](https://wordpress.org/plugins/elementor/)** Addon. In order to use this elementor addon you must have to install **[Elementor Page Builder](https://wordpress.org/plugins/elementor/)**.
|
40 |
|
@@ -69,8 +70,19 @@ You can show your stories, events, appointments, concerts, future & history happ
|
|
69 |
|
70 |
== Screenshots ==
|
71 |
1. Elementor Timeline Widget Addon Preview
|
72 |
-
|
73 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
<strong>Version 1.1.3 | 26 AUG 2020</strong>
|
75 |
<pre>
|
76 |
Fixed:- Compatibility issue with elementor version 3.0.1
|
35 |
* Add story date/year or custom text as per your requirements.
|
36 |
* Manage typography of story title, description and other fonts.
|
37 |
* Add image inside your timeline story.
|
38 |
+
* Support Elementor Inline editing feature.You can directly customize story title,description and date on Vertical Timeline layout.
|
39 |
|
40 |
It is an **[Elementor Page Builder](https://wordpress.org/plugins/elementor/)** Addon. In order to use this elementor addon you must have to install **[Elementor Page Builder](https://wordpress.org/plugins/elementor/)**.
|
41 |
|
70 |
|
71 |
== Screenshots ==
|
72 |
1. Elementor Timeline Widget Addon Preview
|
73 |
+
2. Elementor Timeline Widget Addon Horizontal Timeline Preview
|
74 |
== Changelog ==
|
75 |
+
<strong>Version 1.2.1 | 19 SEPT 2020</strong>
|
76 |
+
<pre>
|
77 |
+
Fixed:-Fixed compatibility issues with Elementor 2.9 or lower version.
|
78 |
+
</pre>
|
79 |
+
<strong>Version 1.2 | 11 SEPT 2020</strong>
|
80 |
+
<pre>
|
81 |
+
New:- Integrated Inline editing in Vertical timeline.
|
82 |
+
New:- Integrated deactivation feedback form
|
83 |
+
Fixed: Horizontal timeline breaking page layout issue
|
84 |
+
Fixed:- Icon Background Color issue.
|
85 |
+
</pre>
|
86 |
<strong>Version 1.1.3 | 26 AUG 2020</strong>
|
87 |
<pre>
|
88 |
Fixed:- Compatibility issue with elementor version 3.0.1
|
timeline-widget-addon-for-elementor.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Timeline Widget Addon For Elementor
|
4 |
* Description: Timeline Widget Addon For Elementor create a beautiful timeline in page and post.
|
5 |
* Plugin URI: https://coolplugins.net
|
6 |
-
* Version: 1.1
|
7 |
* Author: Cool Plugins
|
8 |
* Author URI: https://coolplugins.net/
|
9 |
* Text Domain: twae
|
@@ -18,7 +18,7 @@ if (defined('TWAE_VERSION')) {
|
|
18 |
return;
|
19 |
}
|
20 |
|
21 |
-
define('TWAE_VERSION', '1.1
|
22 |
define('TWAE_FILE', __FILE__);
|
23 |
define('TWAE_PATH', plugin_dir_path(TWAE_FILE));
|
24 |
define('TWAE_URL', plugin_dir_url(TWAE_FILE));
|
@@ -86,9 +86,9 @@ final class Timeline_Widget_Addon
|
|
86 |
if( is_admin() ){
|
87 |
/*** Plugin review notice file */
|
88 |
require_once(__DIR__ . '/includes/twae-feedback-notice.php');
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
|
93 |
}
|
94 |
|
3 |
* Plugin Name: Timeline Widget Addon For Elementor
|
4 |
* Description: Timeline Widget Addon For Elementor create a beautiful timeline in page and post.
|
5 |
* Plugin URI: https://coolplugins.net
|
6 |
+
* Version: 1.2.1
|
7 |
* Author: Cool Plugins
|
8 |
* Author URI: https://coolplugins.net/
|
9 |
* Text Domain: twae
|
18 |
return;
|
19 |
}
|
20 |
|
21 |
+
define('TWAE_VERSION', '1.2.1');
|
22 |
define('TWAE_FILE', __FILE__);
|
23 |
define('TWAE_PATH', plugin_dir_path(TWAE_FILE));
|
24 |
define('TWAE_URL', plugin_dir_url(TWAE_FILE));
|
86 |
if( is_admin() ){
|
87 |
/*** Plugin review notice file */
|
88 |
require_once(__DIR__ . '/includes/twae-feedback-notice.php');
|
89 |
+
new TWAEFeedbackNotice();
|
90 |
+
|
91 |
+
require_once(__DIR__ . '/feedback/twae-admin-feedback-form.php');
|
92 |
|
93 |
}
|
94 |
|
widgets/editor-layouts/horizontal-template.php
CHANGED
@@ -10,8 +10,29 @@
|
|
10 |
model: view.getEditModel()
|
11 |
};
|
12 |
var image_url = elementor.imagesManager.getImageUrl( timeline_image );
|
13 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
|
|
|
|
|
|
|
|
|
15 |
#>
|
16 |
<div class="swiper-slide {{{sidesHeight}}}">
|
17 |
|
@@ -19,14 +40,14 @@
|
|
19 |
if(item.twae_show_year_label == 'yes'){
|
20 |
#>
|
21 |
<div class="twae-year-container">
|
22 |
-
<span
|
23 |
</div>
|
24 |
<#
|
25 |
}
|
26 |
#>
|
27 |
<div class="twae-label-extra-label"><div>
|
28 |
-
<span
|
29 |
-
<span
|
30 |
</div></div>
|
31 |
<div class="twae-icon">
|
32 |
<# if ( twaeiconHTML && twaeiconHTML.rendered ) { #>
|
@@ -38,8 +59,8 @@
|
|
38 |
</div>
|
39 |
<div class="twae-story-info">
|
40 |
<div class="twae-timeline-img"><img src="{{{ image_url }}}" /></div>
|
41 |
-
<span
|
42 |
-
<div
|
43 |
</div>
|
44 |
</div>
|
45 |
<#
|
10 |
model: view.getEditModel()
|
11 |
};
|
12 |
var image_url = elementor.imagesManager.getImageUrl( timeline_image );
|
13 |
+
|
14 |
+
var year_key = view.getRepeaterSettingKey( 'twae_year', 'twae_list',index ),
|
15 |
+
date_label_key = view.getRepeaterSettingKey( 'twae_date_label', 'twae_list',index ),
|
16 |
+
extra_label_key = view.getRepeaterSettingKey( 'twae_extra_label', 'twae_list',index ),
|
17 |
+
title_key = view.getRepeaterSettingKey( 'twae_story_title', 'twae_list',index ),
|
18 |
+
description_key = view.getRepeaterSettingKey( 'twae_description', 'twae_list',index );
|
19 |
+
|
20 |
+
view.addRenderAttribute( year_key, {'class': 'twae-year-label twae-year'} );
|
21 |
+
view.addRenderAttribute( date_label_key, {'class': 'twae-label'} );
|
22 |
+
view.addRenderAttribute( extra_label_key, {'class': 'twae-extra-label'} );
|
23 |
+
view.addRenderAttribute( title_key, {'class': 'twae-title'});
|
24 |
+
view.addRenderAttribute( description_key, {'class': 'twae-description'} );
|
25 |
+
|
26 |
+
view.addInlineEditingAttributes( year_key, 'none' );
|
27 |
+
view.addInlineEditingAttributes( date_label_key, 'none' );
|
28 |
+
view.addInlineEditingAttributes( extra_label_key, 'none' );
|
29 |
+
view.addInlineEditingAttributes( title_key, 'none' );
|
30 |
+
view.addInlineEditingAttributes( description_key, 'advanced' );
|
31 |
|
32 |
+
var twaeiconHTML = elementor.helpers.renderIcon( view, item.twae_story_icon, { 'aria-hidden': true }, 'i' , 'object' );
|
33 |
+
|
34 |
+
|
35 |
+
|
36 |
#>
|
37 |
<div class="swiper-slide {{{sidesHeight}}}">
|
38 |
|
40 |
if(item.twae_show_year_label == 'yes'){
|
41 |
#>
|
42 |
<div class="twae-year-container">
|
43 |
+
<span {{{ view.getRenderAttributeString( year_key ) }}}>{{{ item.twae_year }}}</span>
|
44 |
</div>
|
45 |
<#
|
46 |
}
|
47 |
#>
|
48 |
<div class="twae-label-extra-label"><div>
|
49 |
+
<span {{{ view.getRenderAttributeString( date_label_key ) }}} >{{{ item.twae_date_label }}}</span>
|
50 |
+
<span {{{ view.getRenderAttributeString( extra_label_key ) }}} >{{{ item.twae_extra_label }}}</span>
|
51 |
</div></div>
|
52 |
<div class="twae-icon">
|
53 |
<# if ( twaeiconHTML && twaeiconHTML.rendered ) { #>
|
59 |
</div>
|
60 |
<div class="twae-story-info">
|
61 |
<div class="twae-timeline-img"><img src="{{{ image_url }}}" /></div>
|
62 |
+
<span {{{ view.getRenderAttributeString( title_key ) }}}>{{{ item.twae_story_title}}}</span>
|
63 |
+
<div {{{ view.getRenderAttributeString( description_key ) }}} >{{{ item.twae_description }}}</div>
|
64 |
</div>
|
65 |
</div>
|
66 |
<#
|
widgets/editor-layouts/vertical-template.php
CHANGED
@@ -19,11 +19,31 @@
|
|
19 |
model: view.getEditModel()
|
20 |
};
|
21 |
var image_url = elementor.imagesManager.getImageUrl( timeline_image );
|
22 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
if(item.twae_show_year_label == 'yes'){
|
24 |
#>
|
25 |
<span class="twae-year-container">
|
26 |
-
<span
|
27 |
</span>
|
28 |
<#
|
29 |
}
|
@@ -35,13 +55,14 @@
|
|
35 |
}
|
36 |
}
|
37 |
twaeiconHTML = elementor.helpers.renderIcon( view, item.twae_story_icon, { 'aria-hidden': true }, 'i' , 'object' ),
|
|
|
38 |
|
39 |
#>
|
40 |
<article class="twae-timeline-entry {{{ story_alignment }}}">
|
41 |
<div class="twae-timeline-entry-inner">
|
42 |
<time class="twae-label-extra-label">
|
43 |
-
<span
|
44 |
-
<span
|
45 |
</time>
|
46 |
<div class="twae-icon">
|
47 |
<# if ( twaeiconHTML && twaeiconHTML.rendered ) { #>
|
@@ -52,9 +73,9 @@
|
|
52 |
|
53 |
</div>
|
54 |
<div class="twae-data-container">
|
55 |
-
<span
|
56 |
<div class="twae-timeline-img"><img src="{{{ image_url }}}" /></div>
|
57 |
-
<div
|
58 |
</div>
|
59 |
</div>
|
60 |
</article>
|
19 |
model: view.getEditModel()
|
20 |
};
|
21 |
var image_url = elementor.imagesManager.getImageUrl( timeline_image );
|
22 |
+
|
23 |
+
var year_key = view.getRepeaterSettingKey( 'twae_year', 'twae_list',index ),
|
24 |
+
date_label_key = view.getRepeaterSettingKey( 'twae_date_label', 'twae_list',index ),
|
25 |
+
extra_label_key = view.getRepeaterSettingKey( 'twae_extra_label', 'twae_list',index ),
|
26 |
+
title_key = view.getRepeaterSettingKey( 'twae_story_title', 'twae_list',index ),
|
27 |
+
description_key = view.getRepeaterSettingKey( 'twae_description', 'twae_list',index );
|
28 |
+
|
29 |
+
view.addRenderAttribute( year_key, {'class': 'twae-year-label twae-year'} );
|
30 |
+
view.addRenderAttribute( date_label_key, {'class': 'twae-label'} );
|
31 |
+
view.addRenderAttribute( extra_label_key, {'class': 'twae-extra-label'} );
|
32 |
+
view.addRenderAttribute( title_key, {'class': 'twae-title'});
|
33 |
+
view.addRenderAttribute( description_key, {'class': 'twae-description'} );
|
34 |
+
|
35 |
+
view.addInlineEditingAttributes( year_key, 'none' );
|
36 |
+
view.addInlineEditingAttributes( date_label_key, 'none' );
|
37 |
+
view.addInlineEditingAttributes( extra_label_key, 'none' );
|
38 |
+
view.addInlineEditingAttributes( title_key, 'none' );
|
39 |
+
view.addInlineEditingAttributes( description_key, 'advanced' );
|
40 |
+
|
41 |
+
|
42 |
+
|
43 |
if(item.twae_show_year_label == 'yes'){
|
44 |
#>
|
45 |
<span class="twae-year-container">
|
46 |
+
<span {{{ view.getRenderAttributeString( year_key ) }}} >{{{ item.twae_year }}}</span>
|
47 |
</span>
|
48 |
<#
|
49 |
}
|
55 |
}
|
56 |
}
|
57 |
twaeiconHTML = elementor.helpers.renderIcon( view, item.twae_story_icon, { 'aria-hidden': true }, 'i' , 'object' ),
|
58 |
+
|
59 |
|
60 |
#>
|
61 |
<article class="twae-timeline-entry {{{ story_alignment }}}">
|
62 |
<div class="twae-timeline-entry-inner">
|
63 |
<time class="twae-label-extra-label">
|
64 |
+
<span {{{ view.getRenderAttributeString( date_label_key ) }}} >{{{ item.twae_date_label }}}</span>
|
65 |
+
<span {{{ view.getRenderAttributeString( extra_label_key ) }}} >{{{ item.twae_extra_label }}}</span>
|
66 |
</time>
|
67 |
<div class="twae-icon">
|
68 |
<# if ( twaeiconHTML && twaeiconHTML.rendered ) { #>
|
73 |
|
74 |
</div>
|
75 |
<div class="twae-data-container">
|
76 |
+
<span {{{ view.getRenderAttributeString( title_key ) }}} >{{{ item.twae_story_title}}}</span>
|
77 |
<div class="twae-timeline-img"><img src="{{{ image_url }}}" /></div>
|
78 |
+
<div {{{ view.getRenderAttributeString( description_key ) }}} >{{{ item.twae_description }}}</div>
|
79 |
</div>
|
80 |
</div>
|
81 |
</article>
|
widgets/frontend-layouts/twae-centered-timeline.php
CHANGED
@@ -18,8 +18,26 @@ echo '
|
|
18 |
$timeline_story_title = esc_html($content['twae_story_title']);
|
19 |
$story_icon = $content['twae_story_icon']['value'];
|
20 |
$thumbnail_size = $content['twae_thumbnail_size'];
|
21 |
-
|
22 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
if($content['twae_image']['id']!=""){
|
24 |
if($thumbnail_size =='custom'){
|
25 |
$custom_size = array ( $thumbnail_custom_dimension['width'],$thumbnail_custom_dimension['height']);
|
@@ -39,23 +57,23 @@ echo '
|
|
39 |
|
40 |
if($show_year_label == 'yes'){
|
41 |
echo '<span class="twae-year-container">
|
42 |
-
<span
|
43 |
</span>';
|
44 |
}
|
45 |
|
46 |
echo '<article class="twae-timeline-entry '.esc_attr($left_aligned).'">
|
47 |
<div class="twae-timeline-entry-inner">
|
48 |
<time class="twae-label-extra-label">
|
49 |
-
<span
|
50 |
-
<span
|
51 |
</time>
|
52 |
<div class="twae-icon">';
|
53 |
\Elementor\Icons_Manager::render_icon( $content['twae_story_icon'], [ 'aria-hidden' => 'true' ] );
|
54 |
echo'</div>
|
55 |
<div class="twae-data-container">
|
56 |
-
<span
|
57 |
'.$image.'
|
58 |
-
<div
|
59 |
</div>
|
60 |
</div>
|
61 |
</article>';
|
18 |
$timeline_story_title = esc_html($content['twae_story_title']);
|
19 |
$story_icon = $content['twae_story_icon']['value'];
|
20 |
$thumbnail_size = $content['twae_thumbnail_size'];
|
21 |
+
$thumbnail_custom_dimension = $content['twae_thumbnail_custom_dimension'];
|
22 |
+
|
23 |
+
$title_key = $this->get_repeater_setting_key( 'twae_story_title', 'twae_list', $index );
|
24 |
+
$year_key = $this->get_repeater_setting_key( 'twae_year', 'twae_list', $index );
|
25 |
+
$date_label_key = $this->get_repeater_setting_key( 'twae_date_label', 'twae_list', $index );
|
26 |
+
$extra_label_key = $this->get_repeater_setting_key( 'twae_extra_label', 'twae_list', $index );
|
27 |
+
$description_key = $this->get_repeater_setting_key( 'twae_description', 'twae_list', $index );
|
28 |
+
|
29 |
+
$this->add_inline_editing_attributes( $title_key, 'none' );
|
30 |
+
$this->add_inline_editing_attributes( $year_key, 'none' );
|
31 |
+
$this->add_inline_editing_attributes( $date_label_key, 'none' );
|
32 |
+
$this->add_inline_editing_attributes( $extra_label_key, 'none' );
|
33 |
+
$this->add_inline_editing_attributes( $description_key, 'advanced' );
|
34 |
+
|
35 |
+
$this->add_render_attribute( $title_key, ['class'=> 'twae-title']);
|
36 |
+
$this->add_render_attribute( $year_key, ['class'=> 'twae-year-label twae-year']);
|
37 |
+
$this->add_render_attribute( $date_label_key, ['class'=> 'twae-label']);
|
38 |
+
$this->add_render_attribute( $extra_label_key, ['class'=> 'twae-extra-label']);
|
39 |
+
$this->add_render_attribute( $description_key, ['class'=> 'twae-description']);
|
40 |
+
|
41 |
if($content['twae_image']['id']!=""){
|
42 |
if($thumbnail_size =='custom'){
|
43 |
$custom_size = array ( $thumbnail_custom_dimension['width'],$thumbnail_custom_dimension['height']);
|
57 |
|
58 |
if($show_year_label == 'yes'){
|
59 |
echo '<span class="twae-year-container">
|
60 |
+
<span '.$this->get_render_attribute_string( $year_key ).'>'.$timeline_year.'</span>
|
61 |
</span>';
|
62 |
}
|
63 |
|
64 |
echo '<article class="twae-timeline-entry '.esc_attr($left_aligned).'">
|
65 |
<div class="twae-timeline-entry-inner">
|
66 |
<time class="twae-label-extra-label">
|
67 |
+
<span '.$this->get_render_attribute_string( $date_label_key).'>'.$story_date_label.'</span>
|
68 |
+
<span '.$this->get_render_attribute_string( $extra_label_key ).'>'.$story_extra_label.'</span>
|
69 |
</time>
|
70 |
<div class="twae-icon">';
|
71 |
\Elementor\Icons_Manager::render_icon( $content['twae_story_icon'], [ 'aria-hidden' => 'true' ] );
|
72 |
echo'</div>
|
73 |
<div class="twae-data-container">
|
74 |
+
<span '.$this->get_render_attribute_string( $title_key ).'>'.$timeline_story_title.'</span>
|
75 |
'.$image.'
|
76 |
+
<div '.$this->get_render_attribute_string( $description_key ).'>'.$timeline_description.'</div>
|
77 |
</div>
|
78 |
</div>
|
79 |
</article>';
|
widgets/frontend-layouts/twae-horizontal-timeline.php
CHANGED
@@ -16,6 +16,24 @@ echo '<div id="twae-horizontal-wrapper" class="twae-wrapper twae-horizontal swip
|
|
16 |
$story_icon = $content['twae_story_icon']['value'];
|
17 |
$thumbnail_size = $content['twae_thumbnail_size'];
|
18 |
$thumbnail_custom_dimension = $content['twae_thumbnail_custom_dimension'];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
|
20 |
if($content['twae_image']['id']!=""){
|
21 |
if($thumbnail_size =='custom'){
|
@@ -37,20 +55,20 @@ echo '<div id="twae-horizontal-wrapper" class="twae-wrapper twae-horizontal swip
|
|
37 |
echo '<div class="swiper-slide '.esc_attr($sidesHeight).'">';
|
38 |
if($show_year_label == 'yes'){
|
39 |
echo '<div class="twae-year-container">
|
40 |
-
<span
|
41 |
</div>';
|
42 |
}
|
43 |
echo '<div class="twae-label-extra-label"><div>
|
44 |
-
<span
|
45 |
-
<span
|
46 |
</div></div>
|
47 |
<div class="twae-icon">';
|
48 |
\Elementor\Icons_Manager::render_icon( $content['twae_story_icon'], [ 'aria-hidden' => 'true' ] );
|
49 |
echo'</div>';
|
50 |
echo '<div class="twae-story-info">
|
51 |
'.$image.'
|
52 |
-
<span
|
53 |
-
<div
|
54 |
</div>
|
55 |
</div>';
|
56 |
}
|
16 |
$story_icon = $content['twae_story_icon']['value'];
|
17 |
$thumbnail_size = $content['twae_thumbnail_size'];
|
18 |
$thumbnail_custom_dimension = $content['twae_thumbnail_custom_dimension'];
|
19 |
+
|
20 |
+
$title_key = $this->get_repeater_setting_key( 'twae_story_title', 'twae_list', $index );
|
21 |
+
$year_key = $this->get_repeater_setting_key( 'twae_year', 'twae_list', $index );
|
22 |
+
$date_label_key = $this->get_repeater_setting_key( 'twae_date_label', 'twae_list', $index );
|
23 |
+
$extra_label_key = $this->get_repeater_setting_key( 'twae_extra_label', 'twae_list', $index );
|
24 |
+
$description_key = $this->get_repeater_setting_key( 'twae_description', 'twae_list', $index );
|
25 |
+
|
26 |
+
$this->add_inline_editing_attributes( $title_key, 'none' );
|
27 |
+
$this->add_inline_editing_attributes( $year_key, 'none' );
|
28 |
+
$this->add_inline_editing_attributes( $date_label_key, 'none' );
|
29 |
+
$this->add_inline_editing_attributes( $extra_label_key, 'none' );
|
30 |
+
$this->add_inline_editing_attributes( $description_key, 'advanced' );
|
31 |
+
|
32 |
+
$this->add_render_attribute( $title_key, ['class'=> 'twae-title']);
|
33 |
+
$this->add_render_attribute( $year_key, ['class'=> 'twae-year-label twae-year']);
|
34 |
+
$this->add_render_attribute( $date_label_key, ['class'=> 'twae-label']);
|
35 |
+
$this->add_render_attribute( $extra_label_key, ['class'=> 'twae-extra-label']);
|
36 |
+
$this->add_render_attribute( $description_key, ['class'=> 'twae-description']);
|
37 |
|
38 |
if($content['twae_image']['id']!=""){
|
39 |
if($thumbnail_size =='custom'){
|
55 |
echo '<div class="swiper-slide '.esc_attr($sidesHeight).'">';
|
56 |
if($show_year_label == 'yes'){
|
57 |
echo '<div class="twae-year-container">
|
58 |
+
<span '.$this->get_render_attribute_string( $year_key ).' >'.$timeline_year.'</span>
|
59 |
</div>';
|
60 |
}
|
61 |
echo '<div class="twae-label-extra-label"><div>
|
62 |
+
<span '.$this->get_render_attribute_string( $date_label_key ).' >'.$story_date_label.'</span>
|
63 |
+
<span '.$this->get_render_attribute_string( $extra_label_key ).' >'.$story_extra_label.'</span>
|
64 |
</div></div>
|
65 |
<div class="twae-icon">';
|
66 |
\Elementor\Icons_Manager::render_icon( $content['twae_story_icon'], [ 'aria-hidden' => 'true' ] );
|
67 |
echo'</div>';
|
68 |
echo '<div class="twae-story-info">
|
69 |
'.$image.'
|
70 |
+
<span '.$this->get_render_attribute_string( $title_key ).'>'.$timeline_story_title.'</span>
|
71 |
+
<div '.$this->get_render_attribute_string( $description_key ).'>'.$timeline_description.'</div>
|
72 |
</div>
|
73 |
</div>';
|
74 |
}
|
widgets/twae-widget.php
CHANGED
@@ -429,9 +429,9 @@ class TWAE_Widget extends \Elementor\Widget_Base {
|
|
429 |
'{{WRAPPER}} .twae-horizontal .twae-story-info' => 'border-color: {{twae_icon_bgcolor}}',
|
430 |
'{{WRAPPER}} .twae-horizontal .twae-story-info:before' => 'border-bottom-color: {{twae_icon_bgcolor}}',
|
431 |
'{{WRAPPER}} .twae-wrapper .twae-data-container:after' => 'border-right-color: {{twae_icon_bgcolor}}',
|
432 |
-
'{{WRAPPER}} .twae-wrapper .twae-right-aligned .twae-data-container' => 'border-left:
|
433 |
-
'{{WRAPPER}} .twae-wrapper .twae-left-aligned .twae-data-container' => 'border-right:
|
434 |
-
'
|
435 |
],
|
436 |
'default' => '#23A455',
|
437 |
]
|
429 |
'{{WRAPPER}} .twae-horizontal .twae-story-info' => 'border-color: {{twae_icon_bgcolor}}',
|
430 |
'{{WRAPPER}} .twae-horizontal .twae-story-info:before' => 'border-bottom-color: {{twae_icon_bgcolor}}',
|
431 |
'{{WRAPPER}} .twae-wrapper .twae-data-container:after' => 'border-right-color: {{twae_icon_bgcolor}}',
|
432 |
+
'{{WRAPPER}} .twae-wrapper .twae-right-aligned .twae-data-container' => 'border-left-color: {{twae_icon_bgcolor}}',
|
433 |
+
'{{WRAPPER}} .twae-wrapper .twae-left-aligned .twae-data-container' => 'border-right-color: {{twae_icon_bgcolor}}',
|
434 |
+
'body[data-elementor-device-mode=mobile] {{WRAPPER}} .twae-wrapper .twae-left-aligned .twae-data-container' => 'border-left-color: {{twae_icon_bgcolor}}',
|
435 |
],
|
436 |
'default' => '#23A455',
|
437 |
]
|