Version Description
Hello! We've recently acquired this plugin and included tons of new features.
Download this release
Release Info
Developer | quadlayers |
Plugin | WhatsApp Chat WP |
Version | 4.4.5 |
Comparing to | |
See all releases |
Code changes from version 4.4.4 to 4.4.5
- assets/js/qlwapp-modal.js +0 -177
- assets/js/qlwapp-modal.min.js +0 -1
- assets/js/qlwapp.js +11 -10
- assets/js/qlwapp.min.js +1 -1
- changelog.txt +5 -0
- includes/defaults.php +1 -1
- readme.txt +1 -1
- wp-whatsapp-chat.php +2 -2
assets/js/qlwapp-modal.js
DELETED
@@ -1,177 +0,0 @@
|
|
1 |
-
(function ($) {
|
2 |
-
|
3 |
-
var wpmi = {
|
4 |
-
__instance: undefined
|
5 |
-
};
|
6 |
-
|
7 |
-
wpmi.Application = Backbone.View.extend(
|
8 |
-
{
|
9 |
-
id: 'wpmi_modal',
|
10 |
-
events: {
|
11 |
-
'click .close': 'Close',
|
12 |
-
// 'click .remove': 'Remove',
|
13 |
-
'click .save': 'Save'
|
14 |
-
},
|
15 |
-
ui: {
|
16 |
-
// nav: undefined,
|
17 |
-
// content: undefined,
|
18 |
-
// media: undefined
|
19 |
-
},
|
20 |
-
templates: {},
|
21 |
-
initialize: function (e) {
|
22 |
-
'use strict';
|
23 |
-
_.bindAll(this, 'render', 'preserveFocus', 'Close', 'Save');//, 'Select', 'Search', 'Remove'
|
24 |
-
this.initialize_templates();
|
25 |
-
this.render(e);
|
26 |
-
this.backdrop(e);
|
27 |
-
},
|
28 |
-
backdrop: function (e) {
|
29 |
-
'use strict';
|
30 |
-
|
31 |
-
var plugin = this;
|
32 |
-
|
33 |
-
$(document).on('click', '.media-modal-backdrop', function (e) {
|
34 |
-
plugin.Close(e);
|
35 |
-
});
|
36 |
-
},
|
37 |
-
initialize_templates: function () {
|
38 |
-
this.templates.window = wp.template('wpmi-modal-window');
|
39 |
-
this.templates.backdrop = wp.template('wpmi-modal-backdrop');
|
40 |
-
},
|
41 |
-
render: function (e) {
|
42 |
-
'use strict';
|
43 |
-
var contact_id = $(e.target).data('contact_id');
|
44 |
-
$.ajax({
|
45 |
-
type: 'POST',
|
46 |
-
url: ajaxurl,
|
47 |
-
data: {
|
48 |
-
action: 'qlwapp_get_contact',
|
49 |
-
nonce: qlwapp.nonce.qlwapp_get_contact,
|
50 |
-
contact_id:contact_id
|
51 |
-
},
|
52 |
-
beforeSend: function () {
|
53 |
-
// alert('before..');
|
54 |
-
},
|
55 |
-
complete: function () {
|
56 |
-
// alert('complete..');
|
57 |
-
},
|
58 |
-
error: function () {
|
59 |
-
alert('Error!');
|
60 |
-
},
|
61 |
-
success: function (response) {
|
62 |
-
alert(response);
|
63 |
-
console.log( response.data);
|
64 |
-
|
65 |
-
}
|
66 |
-
});
|
67 |
-
this.$el.attr('tabindex', '0')
|
68 |
-
// .data('menu_item_id', menu_item_id)
|
69 |
-
.append(this.templates.window())
|
70 |
-
.append(this.templates.backdrop());
|
71 |
-
|
72 |
-
$(document).on('focusin', this.preserveFocus);
|
73 |
-
$('body').addClass('modal-open').append(this.$el);
|
74 |
-
this.$el.focus();
|
75 |
-
},
|
76 |
-
preserveFocus: function (e) {
|
77 |
-
'use strict';
|
78 |
-
if (this.$el[0] !== e.target && !this.$el.has(e.target).length) {
|
79 |
-
this.$el.focus();
|
80 |
-
}
|
81 |
-
},
|
82 |
-
Close: function (e) {
|
83 |
-
'use strict';
|
84 |
-
e.preventDefault();
|
85 |
-
this.undelegateEvents();
|
86 |
-
$(document).off('focusin');
|
87 |
-
$('body').removeClass('modal-open');
|
88 |
-
this.remove();
|
89 |
-
wpmi.__instance = undefined;
|
90 |
-
},
|
91 |
-
Save: function (e) {
|
92 |
-
'use strict';
|
93 |
-
e.preventDefault();
|
94 |
-
|
95 |
-
var plugin = this,
|
96 |
-
$form = $('form', this.$el),
|
97 |
-
menu_item_id = this.$el.data('menu_item_id');
|
98 |
-
|
99 |
-
if (!menu_item_id)
|
100 |
-
return;
|
101 |
-
|
102 |
-
if (!$form.length)
|
103 |
-
return;
|
104 |
-
|
105 |
-
var $li = $('#menu-to-edit').find('#menu-item-' + menu_item_id),
|
106 |
-
$plus = $li.find('.menu-item-wpmi_plus'),
|
107 |
-
$icon = $li.find('.menu-item-wpmi_icon');
|
108 |
-
|
109 |
-
if (!$li.length)
|
110 |
-
return;
|
111 |
-
|
112 |
-
$form.find('.wpmi-input').each(function (i) {
|
113 |
-
|
114 |
-
var key = $(this).prop('id').match(/wpmi-input-([a-z]+)/)[1],
|
115 |
-
value = $(this).val();
|
116 |
-
|
117 |
-
$li.find('input#wpmi-input-' + key).val(value);
|
118 |
-
|
119 |
-
if (key === 'icon') {
|
120 |
-
|
121 |
-
if ($icon.length) {
|
122 |
-
|
123 |
-
$icon.remove();
|
124 |
-
}
|
125 |
-
|
126 |
-
$plus.before('<i class="menu-item-wpmi_icon ' + value + '"></i>');
|
127 |
-
}
|
128 |
-
});
|
129 |
-
|
130 |
-
plugin.Close(e);
|
131 |
-
}
|
132 |
-
|
133 |
-
|
134 |
-
});
|
135 |
-
|
136 |
-
$(document).on('click', '.qlwapp-contact_open', function (e) {
|
137 |
-
|
138 |
-
e.preventDefault();
|
139 |
-
if (wpmi.__instance === undefined) {
|
140 |
-
wpmi.__instance = new wpmi.Application(e);
|
141 |
-
}
|
142 |
-
});
|
143 |
-
|
144 |
-
$(document).on('click', '#wpmi_metabox', function (e) {
|
145 |
-
|
146 |
-
var menu_font = $('input:checked', $(this)).val(),
|
147 |
-
menu_id = $('#menu').val();
|
148 |
-
|
149 |
-
if ($(e.target).hasClass('save') && menu_font && menu_id) {
|
150 |
-
|
151 |
-
e.preventDefault();
|
152 |
-
|
153 |
-
$.ajax({
|
154 |
-
type: 'POST',
|
155 |
-
url: ajaxurl,
|
156 |
-
data: {
|
157 |
-
action: 'wpmi_save_nav_menu',
|
158 |
-
menu_id: menu_id,
|
159 |
-
menu_font: menu_font,
|
160 |
-
nonce: wpmi_l10n.nonce
|
161 |
-
},
|
162 |
-
beforeSend: function () {
|
163 |
-
},
|
164 |
-
complete: function () {
|
165 |
-
},
|
166 |
-
error: function () {
|
167 |
-
alert('Error!');
|
168 |
-
},
|
169 |
-
success: function (response) {
|
170 |
-
location.reload();
|
171 |
-
}
|
172 |
-
});
|
173 |
-
|
174 |
-
}
|
175 |
-
});
|
176 |
-
|
177 |
-
})(jQuery);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
assets/js/qlwapp-modal.min.js
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
(function(b){var a={__instance:undefined};a.Application=Backbone.View.extend({id:"wpmi_modal",events:{"click .close":"Close","click .save":"Save"},ui:{},templates:{},initialize:function(c){_.bindAll(this,"render","preserveFocus","Close","Save");this.initialize_templates();this.render(c);this.backdrop(c)},backdrop:function(d){var c=this;b(document).on("click",".media-modal-backdrop",function(f){c.Close(f)})},initialize_templates:function(){this.templates.window=wp.template("wpmi-modal-window");this.templates.backdrop=wp.template("wpmi-modal-backdrop")},render:function(d){var c=b(d.target).data("contact_id");b.ajax({type:"POST",url:ajaxurl,data:{action:"qlwapp_get_contact",nonce:qlwapp.nonce.qlwapp_get_contact,contact_id:c},beforeSend:function(){},complete:function(){},error:function(){alert("Error!")},success:function(e){alert(e);console.log(e.data)}});this.$el.attr("tabindex","0").append(this.templates.window()).append(this.templates.backdrop());b(document).on("focusin",this.preserveFocus);b("body").addClass("modal-open").append(this.$el);this.$el.focus()},preserveFocus:function(c){if(this.$el[0]!==c.target&&!this.$el.has(c.target).length){this.$el.focus()}},Close:function(c){c.preventDefault();this.undelegateEvents();b(document).off("focusin");b("body").removeClass("modal-open");this.remove();a.__instance=undefined},Save:function(i){i.preventDefault();var h=this,d=b("form",this.$el),f=this.$el.data("menu_item_id");if(!f){return}if(!d.length){return}var j=b("#menu-to-edit").find("#menu-item-"+f),g=j.find(".menu-item-wpmi_plus"),c=j.find(".menu-item-wpmi_icon");if(!j.length){return}d.find(".wpmi-input").each(function(k){var e=b(this).prop("id").match(/wpmi-input-([a-z]+)/)[1],l=b(this).val();j.find("input#wpmi-input-"+e).val(l);if(e==="icon"){if(c.length){c.remove()}g.before('<i class="menu-item-wpmi_icon '+l+'"></i>')}});h.Close(i)}});b(document).on("click",".qlwapp-contact_open",function(c){c.preventDefault();if(a.__instance===undefined){a.__instance=new a.Application(c)}});b(document).on("click","#wpmi_metabox",function(f){var d=b("input:checked",b(this)).val(),c=b("#menu").val();if(b(f.target).hasClass("save")&&d&&c){f.preventDefault();b.ajax({type:"POST",url:ajaxurl,data:{action:"wpmi_save_nav_menu",menu_id:c,menu_font:d,nonce:wpmi_l10n.nonce},beforeSend:function(){},complete:function(){},error:function(){alert("Error!")},success:function(e){location.reload()}})}})})(jQuery);
|
|
assets/js/qlwapp.js
CHANGED
@@ -31,14 +31,17 @@
|
|
31 |
|
32 |
$qlwapp.on('qlwapp.time', function (e) {
|
33 |
|
34 |
-
|
35 |
-
timefrom = $contact.data('timefrom') || false,
|
36 |
-
timeto = $contact.data('timeto') || false,
|
37 |
-
// timeout = $contact.data('timeout'),
|
38 |
-
timezone = parseInt($contact.data('timezone')) || false;
|
39 |
|
40 |
-
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
}
|
43 |
|
44 |
// Get offset between browser and contact timezone in minutes
|
@@ -72,8 +75,6 @@
|
|
72 |
$contact.addClass('qlwapp-readonly');
|
73 |
}
|
74 |
|
75 |
-
//console.log('her!');
|
76 |
-
|
77 |
// Add offset timezone to contact timeto & timefrom
|
78 |
$contact.find('.from').text(plugin.timeDateToString(timeFrom));
|
79 |
$contact.find('.to').text(plugin.timeDateToString(timeTo));
|
@@ -321,7 +322,7 @@
|
|
321 |
|
322 |
});
|
323 |
|
324 |
-
|
325 |
}
|
326 |
};
|
327 |
|
31 |
|
32 |
$qlwapp.on('qlwapp.time', function (e) {
|
33 |
|
34 |
+
console.log('qlwapp.time');
|
|
|
|
|
|
|
|
|
35 |
|
36 |
+
var $contact = $(e.target),
|
37 |
+
timefrom = $contact.data('timefrom') || false,
|
38 |
+
timeto = $contact.data('timeto') || false,
|
39 |
+
// timeout = $contact.data('timeout'),
|
40 |
+
timezone = parseInt($contact.data('timezone')) || 0;
|
41 |
+
|
42 |
+
// Don't scape timezone as could be 0
|
43 |
+
if (!timeto || !timefrom || (timefrom === timeto)) {
|
44 |
+
return true;
|
45 |
}
|
46 |
|
47 |
// Get offset between browser and contact timezone in minutes
|
75 |
$contact.addClass('qlwapp-readonly');
|
76 |
}
|
77 |
|
|
|
|
|
78 |
// Add offset timezone to contact timeto & timefrom
|
79 |
$contact.find('.from').text(plugin.timeDateToString(timeFrom));
|
80 |
$contact.find('.to').text(plugin.timeDateToString(timeTo));
|
322 |
|
323 |
});
|
324 |
|
325 |
+
//$qlwapp.trigger('qlwapp.init');
|
326 |
}
|
327 |
};
|
328 |
|
assets/js/qlwapp.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
(function(d,c,a,g){var e={};function b(i,h){this.$qlwapp=d(i);this.init(this)}b.prototype={timeDateToString:function(i){var h=""+i.getMinutes();if(h.length===1){h="0"+h}return i.getHours()+":"+h},timeStringToInt:function(i,h){return parseInt(i+h)},init:function(i){var h=this.$qlwapp;h.on("qlwapp.init",function(j){i.mobiledevice=(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent))});h.on("qlwapp.time",function(p){var j=d(p.target),r=j.data("timefrom")||false,s=j.data("timeto")||false,o=parseInt(j.data("timezone"))||
|
1 |
+
(function(d,c,a,g){var e={};function b(i,h){this.$qlwapp=d(i);this.init(this)}b.prototype={timeDateToString:function(i){var h=""+i.getMinutes();if(h.length===1){h="0"+h}return i.getHours()+":"+h},timeStringToInt:function(i,h){return parseInt(i+h)},init:function(i){var h=this.$qlwapp;h.on("qlwapp.init",function(j){i.mobiledevice=(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent))});h.on("qlwapp.time",function(p){console.log("qlwapp.time");var j=d(p.target),r=j.data("timefrom")||false,s=j.data("timeto")||false,o=parseInt(j.data("timezone"))||0;if(!s||!r||(r===s)){return true}var v=new Date(),l=v.getTimezoneOffset(),q=-l-o;var u=new Date(),k=new Date();var t,m;t=i.timeStringToInt(r[0],r[1]);m=i.timeStringToInt(r[3],r[4]);k.setHours(t);k.setMinutes(m+q);t=i.timeStringToInt(s[0],s[1]);m=i.timeStringToInt(s[3],s[4]);u.setHours(t);u.setMinutes(m+q);if(!(v.getTime()>=k.getTime()&&v.getTime()<=u.getTime())){j.addClass("qlwapp-readonly")}j.find(".from").text(i.timeDateToString(k));j.find(".to").text(i.timeDateToString(u))});h.on("qlwapp.pro",function(j){h.find(".qlwapp-toggle").trigger("qlwapp.time");h.find(".qlwapp-account").each(function(l,k){d(k).trigger("qlwapp.time")})});h.on("qlwapp.resize",function(j){if(d(this).hasClass("qlwapp-show")){d(this).trigger("qlwapp.toggle")}});h.on("qlwapp.init",function(j){if(!i.mobiledevice){h.addClass("desktop").removeClass("mobile")}else{h.addClass("mobile").removeClass("desktop")}h.addClass("qlwapp-js-ready")});h.on("qlwapp.init",function(j){if(h.hasClass("qlwapp-premium")){h.trigger("qlwapp.pro")}});h.addClass("qlwapp-js-ready").trigger("qlwapp.init");h.on("qlwapp.height",function(o){var p=d(o.delegateTarget),n=p.find(".qlwapp-body"),m=n.find(".qlwapp-carousel");var l=p.find(".qlwapp-header"),k=p.find(".qlwapp-footer"),j=(d(c).innerHeight()-l.outerHeight()-k.outerHeight());if(!i.mobiledevice){j=(d(c).innerHeight()*0.7-l.outerHeight()-k.outerHeight())}m.css({"max-height":j+"px"})});h.on("qlwapp.toggle",function(k){var l=d(k.delegateTarget),j=l.find(".qlwapp-box");l.addClass("qlwapp-transition");j.removeClass("response texting");setTimeout(function(){l.toggleClass("qlwapp-show").trigger("qlwapp.height")},10);setTimeout(function(){l.toggleClass("qlwapp-transition")},300)});h.on("click","[data-action=box], [data-action=close]",function(j){j.preventDefault();d(j.delegateTarget).trigger("qlwapp.toggle")});h.on("click","[data-action=open]",function(k){var j="https://api.whatsapp.com/send";if(!i.mobiledevice){j="https://web.whatsapp.com/send"}d(this).attr("href",j+"?phone="+d(this).data("phone")+"&text="+d(this).data("message"))});h.on("click","[data-action=previous]",function(k){k.preventDefault();var l=d(k.delegateTarget),j=l.find(".qlwapp-box");j.addClass("closing");setTimeout(function(){j.removeClass("response").removeClass("closing");j.removeClass("texting")},300)});h.on("click","[data-action=chat]",function(w){w.preventDefault();var n=d(this),t=d(w.delegateTarget),u=t.find(".qlwapp-box"),v=n.find(".qlwapp-avatar img").attr("src"),A=n.find(".qlwapp-name").text(),q=n.find(".qlwapp-label").text(),p=n.find(".qlwapp-time").text(),r=n.data("message"),o=n.data("phone");u.addClass("response").addClass("opening");t.trigger("qlwapp.height");setTimeout(function(){u.removeClass("opening")},300);var k=u.find(".qlwapp-reply"),x=u.find(".qlwapp-header"),j=x.find(".qlwapp-avatar img"),m=x.find(".qlwapp-number"),l=x.find(".qlwapp-name"),z=x.find(".qlwapp-label"),y=u.find(".qlwapp-message");var s=p?p+" - "+q:q;k.data("phone",o);j.attr("src",v);m.html(o);l.html(A);z.html(s);y.html(r)});h.on("click","textarea",function(j){h.off("qlwapp.resize")});h.on("keypress","textarea",function(j){if(j.keyCode==13){h.find(".qlwapp-reply").trigger("click");setTimeout(function(){c.location=h.find(".qlwapp-reply").attr("href")},100)}});h.on("keyup","[data-action=response]",function(m){m.preventDefault();var p=d(this).find("textarea"),o=d(this).find("pre"),j=d(this).find(".qlwapp-reply"),n=d(m.delegateTarget),l=n.find(".qlwapp-box"),k=l.find(".qlwapp-buttons");o.html(p.val());setTimeout(function(){l.addClass("texting").css({"padding-bottom":o.outerHeight()});k.addClass("active");var q=p.val();j.data("message",q);if(q==""){l.removeClass("texting");k.removeClass("active")}},300)})}};d.fn.qlwapp=function(i){var h=arguments;if(i===g||typeof i==="object"){return this.each(function(){if(!d.data(this,"plugin_qlwapp")){d.data(this,"plugin_qlwapp",new b(this,i))}})}else{if(typeof i==="string"&&i[0]!=="_"&&i!=="init"){var j;this.each(function(){var k=d.data(this,"plugin_qlwapp");if(k instanceof b&&typeof k[i]==="function"){j=k[i].apply(k,Array.prototype.slice.call(h,1))}if(i==="destroy"){d.data(this,"plugin_qlwapp",null)}});return j!==g?j:this}}};function f(){d("div#qlwapp").qlwapp()}f();d(c).on("load",function(){f()});d(c).on("click",function(h){if(!d(h.target).closest("#qlwapp.qlwapp-show").length){d("div#qlwapp.qlwapp-show").trigger("qlwapp.toggle")}});d(c).on("resize",function(h){d("div#qlwapp").trigger("qlwapp.resize");d("div#qlwapp").trigger("qlwapp.init")})})(jQuery,window,document);
|
changelog.txt
CHANGED
@@ -1,3 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
1 |
= 4.4.4 =
|
2 |
* Fix. phone number sanitization
|
3 |
|
1 |
+
= 4.4.5 =
|
2 |
+
* Fix. fixed phone number issue
|
3 |
+
* Fix. duplicated qlwapp.init call
|
4 |
+
* Fix. timezone 0 scaping
|
5 |
+
|
6 |
= 4.4.4 =
|
7 |
* Fix. phone number sanitization
|
8 |
|
includes/defaults.php
CHANGED
@@ -232,7 +232,7 @@ if (!class_exists('QLWAPP_Options')) {
|
|
232 |
|
233 |
if (!is_admin()) {
|
234 |
if (!empty($options['contacts'][$id]['phone'])) {
|
235 |
-
$options['contacts'][$id]['phone'] = $this->get_whatsapp_number($options['
|
236 |
}
|
237 |
if (!empty($options['contacts'][$id]['timezone'])) {
|
238 |
$options['contacts'][$id]['timezone'] = $this->get_timezone_offset($options['contacts'][$id]['timezone']);
|
232 |
|
233 |
if (!is_admin()) {
|
234 |
if (!empty($options['contacts'][$id]['phone'])) {
|
235 |
+
$options['contacts'][$id]['phone'] = $this->get_whatsapp_number($options['contacts'][$id]['phone']);
|
236 |
}
|
237 |
if (!empty($options['contacts'][$id]['timezone'])) {
|
238 |
$options['contacts'][$id]['timezone'] = $this->get_timezone_offset($options['contacts'][$id]['timezone']);
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://quadlayers.com/portfolio/wordpress-whatsapp-chat/
|
|
4 |
Tags: whatsapp, whatsapp button, whatsapp chat, whatsapp support, contact, click to chat, directly message whatsapp, floating whatsapp, whatsapp business, messaging, help desk
|
5 |
Requires at least: 4.6
|
6 |
Tested up to: 5.2.2
|
7 |
-
Stable tag: 4.4.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
4 |
Tags: whatsapp, whatsapp button, whatsapp chat, whatsapp support, contact, click to chat, directly message whatsapp, floating whatsapp, whatsapp business, messaging, help desk
|
5 |
Requires at least: 4.6
|
6 |
Tested up to: 5.2.2
|
7 |
+
Stable tag: 4.4.5
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
wp-whatsapp-chat.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: WhatsApp Chat
|
4 |
* Plugin URI: https://quadlayers.com/portfolio/wordpress-whatsapp-chat/
|
5 |
* Description: WhatsApp Chat allows your visitors to contact you or your team through WhatsApp chat with a single click.
|
6 |
-
* Version: 4.4.
|
7 |
* Author: QuadLayers
|
8 |
* Author URI: https://quadlayers.com
|
9 |
* License: GPL-2.0+
|
@@ -18,7 +18,7 @@ if (!defined('QLWAPP_PLUGIN_NAME')) {
|
|
18 |
define('QLWAPP_PLUGIN_NAME', 'WhatsApp Chat');
|
19 |
}
|
20 |
if (!defined('QLWAPP_PLUGIN_VERSION')) {
|
21 |
-
define('QLWAPP_PLUGIN_VERSION', '4.4.
|
22 |
}
|
23 |
if (!defined('QLWAPP_PLUGIN_FILE')) {
|
24 |
define('QLWAPP_PLUGIN_FILE', __FILE__);
|
3 |
* Plugin Name: WhatsApp Chat
|
4 |
* Plugin URI: https://quadlayers.com/portfolio/wordpress-whatsapp-chat/
|
5 |
* Description: WhatsApp Chat allows your visitors to contact you or your team through WhatsApp chat with a single click.
|
6 |
+
* Version: 4.4.5
|
7 |
* Author: QuadLayers
|
8 |
* Author URI: https://quadlayers.com
|
9 |
* License: GPL-2.0+
|
18 |
define('QLWAPP_PLUGIN_NAME', 'WhatsApp Chat');
|
19 |
}
|
20 |
if (!defined('QLWAPP_PLUGIN_VERSION')) {
|
21 |
+
define('QLWAPP_PLUGIN_VERSION', '4.4.5');
|
22 |
}
|
23 |
if (!defined('QLWAPP_PLUGIN_FILE')) {
|
24 |
define('QLWAPP_PLUGIN_FILE', __FILE__);
|