LiveChat – WP live chat plugin for WordPress - Version 4.3.0

Version Description

  • bug fixes
  • disconnect option added
Download this release

Release Info

Developer livechat
Plugin Icon 128x128 LiveChat – WP live chat plugin for WordPress
Version 4.3.0
Comparing to
See all releases

Code changes from version 4.2.3 to 4.3.0

changelog.txt CHANGED
@@ -1,5 +1,9 @@
1
  == Changelog ==
2
 
 
 
 
 
3
  = 4.2.3 =
4
  * plugin activation hook fix
5
 
1
  == Changelog ==
2
 
3
+ = 4.3.0 =
4
+ * bug fixes
5
+ * disconnect option added
6
+
7
  = 4.2.3 =
8
  * plugin activation hook fix
9
 
composer.lock CHANGED
@@ -1,7 +1,7 @@
1
  {
2
  "_readme": [
3
  "This file locks the dependencies of your project to a known state",
4
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
5
  "This file is @generated automatically"
6
  ],
7
  "content-hash": "44319267ab914685ba448dcbe179dce9",
@@ -236,34 +236,32 @@
236
  },
237
  {
238
  "name": "doctrine/instantiator",
239
- "version": "1.3.0",
240
  "source": {
241
  "type": "git",
242
  "url": "https://github.com/doctrine/instantiator.git",
243
- "reference": "ae466f726242e637cebdd526a7d991b9433bacf1"
244
  },
245
  "dist": {
246
  "type": "zip",
247
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/ae466f726242e637cebdd526a7d991b9433bacf1",
248
- "reference": "ae466f726242e637cebdd526a7d991b9433bacf1",
249
  "shasum": ""
250
  },
251
  "require": {
252
- "php": "^7.1"
253
  },
254
  "require-dev": {
255
- "doctrine/coding-standard": "^6.0",
256
  "ext-pdo": "*",
257
  "ext-phar": "*",
258
- "phpbench/phpbench": "^0.13",
259
- "phpstan/phpstan-phpunit": "^0.11",
260
- "phpstan/phpstan-shim": "^0.11",
261
- "phpunit/phpunit": "^7.0"
262
  },
263
  "type": "library",
264
  "extra": {
265
  "branch-alias": {
266
- "dev-master": "1.2.x-dev"
267
  }
268
  },
269
  "autoload": {
@@ -283,12 +281,12 @@
283
  }
284
  ],
285
  "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
286
- "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
287
  "keywords": [
288
  "constructor",
289
  "instantiate"
290
  ],
291
- "time": "2019-10-21T16:45:58+00:00"
292
  },
293
  {
294
  "name": "hamcrest/hamcrest-php",
@@ -405,28 +403,25 @@
405
  },
406
  {
407
  "name": "myclabs/deep-copy",
408
- "version": "1.9.5",
409
  "source": {
410
  "type": "git",
411
  "url": "https://github.com/myclabs/DeepCopy.git",
412
- "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef"
413
  },
414
  "dist": {
415
  "type": "zip",
416
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef",
417
- "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef",
418
  "shasum": ""
419
  },
420
  "require": {
421
- "php": "^7.1"
422
- },
423
- "replace": {
424
- "myclabs/deep-copy": "self.version"
425
  },
426
  "require-dev": {
427
  "doctrine/collections": "^1.0",
428
  "doctrine/common": "^2.6",
429
- "phpunit/phpunit": "^7.1"
430
  },
431
  "type": "library",
432
  "autoload": {
@@ -449,37 +444,39 @@
449
  "object",
450
  "object graph"
451
  ],
452
- "time": "2020-01-17T21:11:47+00:00"
453
  },
454
  {
455
  "name": "phpdocumentor/reflection-common",
456
- "version": "2.0.0",
457
  "source": {
458
  "type": "git",
459
  "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
460
- "reference": "63a995caa1ca9e5590304cd845c15ad6d482a62a"
461
  },
462
  "dist": {
463
  "type": "zip",
464
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/63a995caa1ca9e5590304cd845c15ad6d482a62a",
465
- "reference": "63a995caa1ca9e5590304cd845c15ad6d482a62a",
466
  "shasum": ""
467
  },
468
  "require": {
469
- "php": ">=7.1"
470
  },
471
  "require-dev": {
472
- "phpunit/phpunit": "~6"
473
  },
474
  "type": "library",
475
  "extra": {
476
  "branch-alias": {
477
- "dev-master": "2.x-dev"
478
  }
479
  },
480
  "autoload": {
481
  "psr-4": {
482
- "phpDocumentor\\Reflection\\": "src/"
 
 
483
  }
484
  },
485
  "notification-url": "https://packagist.org/downloads/",
@@ -501,42 +498,38 @@
501
  "reflection",
502
  "static analysis"
503
  ],
504
- "time": "2018-08-07T13:53:10+00:00"
505
  },
506
  {
507
  "name": "phpdocumentor/reflection-docblock",
508
- "version": "5.1.0",
509
  "source": {
510
  "type": "git",
511
  "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
512
- "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e"
513
  },
514
  "dist": {
515
  "type": "zip",
516
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e",
517
- "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e",
518
  "shasum": ""
519
  },
520
  "require": {
521
- "ext-filter": "^7.1",
522
- "php": "^7.2",
523
- "phpdocumentor/reflection-common": "^2.0",
524
- "phpdocumentor/type-resolver": "^1.0",
525
- "webmozart/assert": "^1"
526
  },
527
  "require-dev": {
528
- "doctrine/instantiator": "^1",
529
- "mockery/mockery": "^1"
530
  },
531
  "type": "library",
532
- "extra": {
533
- "branch-alias": {
534
- "dev-master": "5.x-dev"
535
- }
536
- },
537
  "autoload": {
538
  "psr-4": {
539
- "phpDocumentor\\Reflection\\": "src"
 
 
540
  }
541
  },
542
  "notification-url": "https://packagist.org/downloads/",
@@ -547,46 +540,44 @@
547
  {
548
  "name": "Mike van Riel",
549
  "email": "me@mikevanriel.com"
550
- },
551
- {
552
- "name": "Jaap van Otterdijk",
553
- "email": "account@ijaap.nl"
554
  }
555
  ],
556
  "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
557
- "time": "2020-02-22T12:28:44+00:00"
558
  },
559
  {
560
  "name": "phpdocumentor/type-resolver",
561
- "version": "1.1.0",
562
  "source": {
563
  "type": "git",
564
  "url": "https://github.com/phpDocumentor/TypeResolver.git",
565
- "reference": "7462d5f123dfc080dfdf26897032a6513644fc95"
566
  },
567
  "dist": {
568
  "type": "zip",
569
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/7462d5f123dfc080dfdf26897032a6513644fc95",
570
- "reference": "7462d5f123dfc080dfdf26897032a6513644fc95",
571
  "shasum": ""
572
  },
573
  "require": {
574
- "php": "^7.2",
575
- "phpdocumentor/reflection-common": "^2.0"
576
  },
577
  "require-dev": {
578
- "ext-tokenizer": "^7.2",
579
- "mockery/mockery": "~1"
580
  },
581
  "type": "library",
582
  "extra": {
583
  "branch-alias": {
584
- "dev-master": "1.x-dev"
585
  }
586
  },
587
  "autoload": {
588
  "psr-4": {
589
- "phpDocumentor\\Reflection\\": "src"
 
 
590
  }
591
  },
592
  "notification-url": "https://packagist.org/downloads/",
@@ -599,8 +590,7 @@
599
  "email": "me@mikevanriel.com"
600
  }
601
  ],
602
- "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
603
- "time": "2020-02-18T18:59:58+00:00"
604
  },
605
  {
606
  "name": "phpspec/prophecy",
@@ -867,29 +857,29 @@
867
  },
868
  {
869
  "name": "phpunit/php-token-stream",
870
- "version": "2.0.2",
871
  "source": {
872
  "type": "git",
873
  "url": "https://github.com/sebastianbergmann/php-token-stream.git",
874
- "reference": "791198a2c6254db10131eecfe8c06670700904db"
875
  },
876
  "dist": {
877
  "type": "zip",
878
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/791198a2c6254db10131eecfe8c06670700904db",
879
- "reference": "791198a2c6254db10131eecfe8c06670700904db",
880
  "shasum": ""
881
  },
882
  "require": {
883
  "ext-tokenizer": "*",
884
- "php": "^7.0"
885
  },
886
  "require-dev": {
887
- "phpunit/phpunit": "^6.2.4"
888
  },
889
  "type": "library",
890
  "extra": {
891
  "branch-alias": {
892
- "dev-master": "2.0-dev"
893
  }
894
  },
895
  "autoload": {
@@ -912,7 +902,7 @@
912
  "keywords": [
913
  "tokenizer"
914
  ],
915
- "time": "2017-11-27T05:48:46+00:00"
916
  },
917
  {
918
  "name": "phpunit/phpunit",
@@ -1571,16 +1561,16 @@
1571
  },
1572
  {
1573
  "name": "squizlabs/php_codesniffer",
1574
- "version": "3.5.4",
1575
  "source": {
1576
  "type": "git",
1577
  "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
1578
- "reference": "dceec07328401de6211037abbb18bda423677e26"
1579
  },
1580
  "dist": {
1581
  "type": "zip",
1582
- "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/dceec07328401de6211037abbb18bda423677e26",
1583
- "reference": "dceec07328401de6211037abbb18bda423677e26",
1584
  "shasum": ""
1585
  },
1586
  "require": {
@@ -1618,20 +1608,20 @@
1618
  "phpcs",
1619
  "standards"
1620
  ],
1621
- "time": "2020-01-30T22:20:29+00:00"
1622
  },
1623
  {
1624
  "name": "symfony/polyfill-ctype",
1625
- "version": "v1.15.0",
1626
  "source": {
1627
  "type": "git",
1628
  "url": "https://github.com/symfony/polyfill-ctype.git",
1629
- "reference": "4719fa9c18b0464d399f1a63bf624b42b6fa8d14"
1630
  },
1631
  "dist": {
1632
  "type": "zip",
1633
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/4719fa9c18b0464d399f1a63bf624b42b6fa8d14",
1634
- "reference": "4719fa9c18b0464d399f1a63bf624b42b6fa8d14",
1635
  "shasum": ""
1636
  },
1637
  "require": {
@@ -1643,7 +1633,11 @@
1643
  "type": "library",
1644
  "extra": {
1645
  "branch-alias": {
1646
- "dev-master": "1.15-dev"
 
 
 
 
1647
  }
1648
  },
1649
  "autoload": {
@@ -1676,31 +1670,31 @@
1676
  "polyfill",
1677
  "portable"
1678
  ],
1679
- "time": "2020-02-27T09:26:54+00:00"
1680
  },
1681
  {
1682
  "name": "symfony/yaml",
1683
- "version": "v4.4.6",
1684
  "source": {
1685
  "type": "git",
1686
  "url": "https://github.com/symfony/yaml.git",
1687
- "reference": "43d7a46b1f80b4fd2ecfac4a9a4cc1f22d029fbb"
1688
  },
1689
  "dist": {
1690
  "type": "zip",
1691
- "url": "https://api.github.com/repos/symfony/yaml/zipball/43d7a46b1f80b4fd2ecfac4a9a4cc1f22d029fbb",
1692
- "reference": "43d7a46b1f80b4fd2ecfac4a9a4cc1f22d029fbb",
1693
  "shasum": ""
1694
  },
1695
  "require": {
1696
- "php": "^7.1.3",
1697
  "symfony/polyfill-ctype": "~1.8"
1698
  },
1699
  "conflict": {
1700
  "symfony/console": "<3.4"
1701
  },
1702
  "require-dev": {
1703
- "symfony/console": "^3.4|^4.0|^5.0"
1704
  },
1705
  "suggest": {
1706
  "symfony/console": "For validating YAML files using the lint command"
@@ -1708,7 +1702,7 @@
1708
  "type": "library",
1709
  "extra": {
1710
  "branch-alias": {
1711
- "dev-master": "4.4-dev"
1712
  }
1713
  },
1714
  "autoload": {
@@ -1735,20 +1729,20 @@
1735
  ],
1736
  "description": "Symfony Yaml Component",
1737
  "homepage": "https://symfony.com",
1738
- "time": "2020-03-16T08:56:54+00:00"
1739
  },
1740
  {
1741
  "name": "webmozart/assert",
1742
- "version": "1.7.0",
1743
  "source": {
1744
  "type": "git",
1745
  "url": "https://github.com/webmozart/assert.git",
1746
- "reference": "aed98a490f9a8f78468232db345ab9cf606cf598"
1747
  },
1748
  "dist": {
1749
  "type": "zip",
1750
- "url": "https://api.github.com/repos/webmozart/assert/zipball/aed98a490f9a8f78468232db345ab9cf606cf598",
1751
- "reference": "aed98a490f9a8f78468232db345ab9cf606cf598",
1752
  "shasum": ""
1753
  },
1754
  "require": {
@@ -1756,7 +1750,8 @@
1756
  "symfony/polyfill-ctype": "^1.8"
1757
  },
1758
  "conflict": {
1759
- "vimeo/psalm": "<3.6.0"
 
1760
  },
1761
  "require-dev": {
1762
  "phpunit/phpunit": "^4.8.36 || ^7.5.13"
@@ -1783,20 +1778,20 @@
1783
  "check",
1784
  "validate"
1785
  ],
1786
- "time": "2020-02-14T12:15:55+00:00"
1787
  },
1788
  {
1789
  "name": "wp-coding-standards/wpcs",
1790
- "version": "2.2.1",
1791
  "source": {
1792
  "type": "git",
1793
  "url": "https://github.com/WordPress/WordPress-Coding-Standards.git",
1794
- "reference": "b5a453203114cc2284b1a614c4953456fbe4f546"
1795
  },
1796
  "dist": {
1797
  "type": "zip",
1798
- "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/b5a453203114cc2284b1a614c4953456fbe4f546",
1799
- "reference": "b5a453203114cc2284b1a614c4953456fbe4f546",
1800
  "shasum": ""
1801
  },
1802
  "require": {
@@ -1806,6 +1801,7 @@
1806
  "require-dev": {
1807
  "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || ^0.6",
1808
  "phpcompatibility/php-compatibility": "^9.0",
 
1809
  "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
1810
  },
1811
  "suggest": {
@@ -1828,7 +1824,7 @@
1828
  "standards",
1829
  "wordpress"
1830
  ],
1831
- "time": "2020-02-04T02:52:06+00:00"
1832
  }
1833
  ],
1834
  "aliases": [],
1
  {
2
  "_readme": [
3
  "This file locks the dependencies of your project to a known state",
4
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
  "This file is @generated automatically"
6
  ],
7
  "content-hash": "44319267ab914685ba448dcbe179dce9",
236
  },
237
  {
238
  "name": "doctrine/instantiator",
239
+ "version": "1.0.5",
240
  "source": {
241
  "type": "git",
242
  "url": "https://github.com/doctrine/instantiator.git",
243
+ "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d"
244
  },
245
  "dist": {
246
  "type": "zip",
247
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/8e884e78f9f0eb1329e445619e04456e64d8051d",
248
+ "reference": "8e884e78f9f0eb1329e445619e04456e64d8051d",
249
  "shasum": ""
250
  },
251
  "require": {
252
+ "php": ">=5.3,<8.0-DEV"
253
  },
254
  "require-dev": {
255
+ "athletic/athletic": "~0.1.8",
256
  "ext-pdo": "*",
257
  "ext-phar": "*",
258
+ "phpunit/phpunit": "~4.0",
259
+ "squizlabs/php_codesniffer": "~2.0"
 
 
260
  },
261
  "type": "library",
262
  "extra": {
263
  "branch-alias": {
264
+ "dev-master": "1.0.x-dev"
265
  }
266
  },
267
  "autoload": {
281
  }
282
  ],
283
  "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
284
+ "homepage": "https://github.com/doctrine/instantiator",
285
  "keywords": [
286
  "constructor",
287
  "instantiate"
288
  ],
289
+ "time": "2015-06-14T21:17:01+00:00"
290
  },
291
  {
292
  "name": "hamcrest/hamcrest-php",
403
  },
404
  {
405
  "name": "myclabs/deep-copy",
406
+ "version": "1.7.0",
407
  "source": {
408
  "type": "git",
409
  "url": "https://github.com/myclabs/DeepCopy.git",
410
+ "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e"
411
  },
412
  "dist": {
413
  "type": "zip",
414
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e",
415
+ "reference": "3b8a3a99ba1f6a3952ac2747d989303cbd6b7a3e",
416
  "shasum": ""
417
  },
418
  "require": {
419
+ "php": "^5.6 || ^7.0"
 
 
 
420
  },
421
  "require-dev": {
422
  "doctrine/collections": "^1.0",
423
  "doctrine/common": "^2.6",
424
+ "phpunit/phpunit": "^4.1"
425
  },
426
  "type": "library",
427
  "autoload": {
444
  "object",
445
  "object graph"
446
  ],
447
+ "time": "2017-10-19T19:58:43+00:00"
448
  },
449
  {
450
  "name": "phpdocumentor/reflection-common",
451
+ "version": "1.0.1",
452
  "source": {
453
  "type": "git",
454
  "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
455
+ "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6"
456
  },
457
  "dist": {
458
  "type": "zip",
459
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6",
460
+ "reference": "21bdeb5f65d7ebf9f43b1b25d404f87deab5bfb6",
461
  "shasum": ""
462
  },
463
  "require": {
464
+ "php": ">=5.5"
465
  },
466
  "require-dev": {
467
+ "phpunit/phpunit": "^4.6"
468
  },
469
  "type": "library",
470
  "extra": {
471
  "branch-alias": {
472
+ "dev-master": "1.0.x-dev"
473
  }
474
  },
475
  "autoload": {
476
  "psr-4": {
477
+ "phpDocumentor\\Reflection\\": [
478
+ "src"
479
+ ]
480
  }
481
  },
482
  "notification-url": "https://packagist.org/downloads/",
498
  "reflection",
499
  "static analysis"
500
  ],
501
+ "time": "2017-09-11T18:02:19+00:00"
502
  },
503
  {
504
  "name": "phpdocumentor/reflection-docblock",
505
+ "version": "3.3.2",
506
  "source": {
507
  "type": "git",
508
  "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
509
+ "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2"
510
  },
511
  "dist": {
512
  "type": "zip",
513
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/bf329f6c1aadea3299f08ee804682b7c45b326a2",
514
+ "reference": "bf329f6c1aadea3299f08ee804682b7c45b326a2",
515
  "shasum": ""
516
  },
517
  "require": {
518
+ "php": "^5.6 || ^7.0",
519
+ "phpdocumentor/reflection-common": "^1.0.0",
520
+ "phpdocumentor/type-resolver": "^0.4.0",
521
+ "webmozart/assert": "^1.0"
 
522
  },
523
  "require-dev": {
524
+ "mockery/mockery": "^0.9.4",
525
+ "phpunit/phpunit": "^4.4"
526
  },
527
  "type": "library",
 
 
 
 
 
528
  "autoload": {
529
  "psr-4": {
530
+ "phpDocumentor\\Reflection\\": [
531
+ "src/"
532
+ ]
533
  }
534
  },
535
  "notification-url": "https://packagist.org/downloads/",
540
  {
541
  "name": "Mike van Riel",
542
  "email": "me@mikevanriel.com"
 
 
 
 
543
  }
544
  ],
545
  "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
546
+ "time": "2017-11-10T14:09:06+00:00"
547
  },
548
  {
549
  "name": "phpdocumentor/type-resolver",
550
+ "version": "0.4.0",
551
  "source": {
552
  "type": "git",
553
  "url": "https://github.com/phpDocumentor/TypeResolver.git",
554
+ "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7"
555
  },
556
  "dist": {
557
  "type": "zip",
558
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/9c977708995954784726e25d0cd1dddf4e65b0f7",
559
+ "reference": "9c977708995954784726e25d0cd1dddf4e65b0f7",
560
  "shasum": ""
561
  },
562
  "require": {
563
+ "php": "^5.5 || ^7.0",
564
+ "phpdocumentor/reflection-common": "^1.0"
565
  },
566
  "require-dev": {
567
+ "mockery/mockery": "^0.9.4",
568
+ "phpunit/phpunit": "^5.2||^4.8.24"
569
  },
570
  "type": "library",
571
  "extra": {
572
  "branch-alias": {
573
+ "dev-master": "1.0.x-dev"
574
  }
575
  },
576
  "autoload": {
577
  "psr-4": {
578
+ "phpDocumentor\\Reflection\\": [
579
+ "src/"
580
+ ]
581
  }
582
  },
583
  "notification-url": "https://packagist.org/downloads/",
590
  "email": "me@mikevanriel.com"
591
  }
592
  ],
593
+ "time": "2017-07-14T14:27:02+00:00"
 
594
  },
595
  {
596
  "name": "phpspec/prophecy",
857
  },
858
  {
859
  "name": "phpunit/php-token-stream",
860
+ "version": "1.4.12",
861
  "source": {
862
  "type": "git",
863
  "url": "https://github.com/sebastianbergmann/php-token-stream.git",
864
+ "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16"
865
  },
866
  "dist": {
867
  "type": "zip",
868
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/1ce90ba27c42e4e44e6d8458241466380b51fa16",
869
+ "reference": "1ce90ba27c42e4e44e6d8458241466380b51fa16",
870
  "shasum": ""
871
  },
872
  "require": {
873
  "ext-tokenizer": "*",
874
+ "php": ">=5.3.3"
875
  },
876
  "require-dev": {
877
+ "phpunit/phpunit": "~4.2"
878
  },
879
  "type": "library",
880
  "extra": {
881
  "branch-alias": {
882
+ "dev-master": "1.4-dev"
883
  }
884
  },
885
  "autoload": {
902
  "keywords": [
903
  "tokenizer"
904
  ],
905
+ "time": "2017-12-04T08:55:13+00:00"
906
  },
907
  {
908
  "name": "phpunit/phpunit",
1561
  },
1562
  {
1563
  "name": "squizlabs/php_codesniffer",
1564
+ "version": "3.5.5",
1565
  "source": {
1566
  "type": "git",
1567
  "url": "https://github.com/squizlabs/PHP_CodeSniffer.git",
1568
+ "reference": "73e2e7f57d958e7228fce50dc0c61f58f017f9f6"
1569
  },
1570
  "dist": {
1571
  "type": "zip",
1572
+ "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/73e2e7f57d958e7228fce50dc0c61f58f017f9f6",
1573
+ "reference": "73e2e7f57d958e7228fce50dc0c61f58f017f9f6",
1574
  "shasum": ""
1575
  },
1576
  "require": {
1608
  "phpcs",
1609
  "standards"
1610
  ],
1611
+ "time": "2020-04-17T01:09:41+00:00"
1612
  },
1613
  {
1614
  "name": "symfony/polyfill-ctype",
1615
+ "version": "v1.17.1",
1616
  "source": {
1617
  "type": "git",
1618
  "url": "https://github.com/symfony/polyfill-ctype.git",
1619
+ "reference": "2edd75b8b35d62fd3eeabba73b26b8f1f60ce13d"
1620
  },
1621
  "dist": {
1622
  "type": "zip",
1623
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/2edd75b8b35d62fd3eeabba73b26b8f1f60ce13d",
1624
+ "reference": "2edd75b8b35d62fd3eeabba73b26b8f1f60ce13d",
1625
  "shasum": ""
1626
  },
1627
  "require": {
1633
  "type": "library",
1634
  "extra": {
1635
  "branch-alias": {
1636
+ "dev-master": "1.17-dev"
1637
+ },
1638
+ "thanks": {
1639
+ "name": "symfony/polyfill",
1640
+ "url": "https://github.com/symfony/polyfill"
1641
  }
1642
  },
1643
  "autoload": {
1670
  "polyfill",
1671
  "portable"
1672
  ],
1673
+ "time": "2020-06-06T08:46:27+00:00"
1674
  },
1675
  {
1676
  "name": "symfony/yaml",
1677
+ "version": "v3.4.42",
1678
  "source": {
1679
  "type": "git",
1680
  "url": "https://github.com/symfony/yaml.git",
1681
+ "reference": "7233ac2bfdde24d672f5305f2b3f6b5d741ef8eb"
1682
  },
1683
  "dist": {
1684
  "type": "zip",
1685
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/7233ac2bfdde24d672f5305f2b3f6b5d741ef8eb",
1686
+ "reference": "7233ac2bfdde24d672f5305f2b3f6b5d741ef8eb",
1687
  "shasum": ""
1688
  },
1689
  "require": {
1690
+ "php": "^5.5.9|>=7.0.8",
1691
  "symfony/polyfill-ctype": "~1.8"
1692
  },
1693
  "conflict": {
1694
  "symfony/console": "<3.4"
1695
  },
1696
  "require-dev": {
1697
+ "symfony/console": "~3.4|~4.0"
1698
  },
1699
  "suggest": {
1700
  "symfony/console": "For validating YAML files using the lint command"
1702
  "type": "library",
1703
  "extra": {
1704
  "branch-alias": {
1705
+ "dev-master": "3.4-dev"
1706
  }
1707
  },
1708
  "autoload": {
1729
  ],
1730
  "description": "Symfony Yaml Component",
1731
  "homepage": "https://symfony.com",
1732
+ "time": "2020-05-11T07:51:54+00:00"
1733
  },
1734
  {
1735
  "name": "webmozart/assert",
1736
+ "version": "1.9.0",
1737
  "source": {
1738
  "type": "git",
1739
  "url": "https://github.com/webmozart/assert.git",
1740
+ "reference": "9dc4f203e36f2b486149058bade43c851dd97451"
1741
  },
1742
  "dist": {
1743
  "type": "zip",
1744
+ "url": "https://api.github.com/repos/webmozart/assert/zipball/9dc4f203e36f2b486149058bade43c851dd97451",
1745
+ "reference": "9dc4f203e36f2b486149058bade43c851dd97451",
1746
  "shasum": ""
1747
  },
1748
  "require": {
1750
  "symfony/polyfill-ctype": "^1.8"
1751
  },
1752
  "conflict": {
1753
+ "phpstan/phpstan": "<0.12.20",
1754
+ "vimeo/psalm": "<3.9.1"
1755
  },
1756
  "require-dev": {
1757
  "phpunit/phpunit": "^4.8.36 || ^7.5.13"
1778
  "check",
1779
  "validate"
1780
  ],
1781
+ "time": "2020-06-16T10:16:42+00:00"
1782
  },
1783
  {
1784
  "name": "wp-coding-standards/wpcs",
1785
+ "version": "2.3.0",
1786
  "source": {
1787
  "type": "git",
1788
  "url": "https://github.com/WordPress/WordPress-Coding-Standards.git",
1789
+ "reference": "7da1894633f168fe244afc6de00d141f27517b62"
1790
  },
1791
  "dist": {
1792
  "type": "zip",
1793
+ "url": "https://api.github.com/repos/WordPress/WordPress-Coding-Standards/zipball/7da1894633f168fe244afc6de00d141f27517b62",
1794
+ "reference": "7da1894633f168fe244afc6de00d141f27517b62",
1795
  "shasum": ""
1796
  },
1797
  "require": {
1801
  "require-dev": {
1802
  "dealerdirect/phpcodesniffer-composer-installer": "^0.5 || ^0.6",
1803
  "phpcompatibility/php-compatibility": "^9.0",
1804
+ "phpcsstandards/phpcsdevtools": "^1.0",
1805
  "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0"
1806
  },
1807
  "suggest": {
1824
  "standards",
1825
  "wordpress"
1826
  ],
1827
+ "time": "2020-05-13T23:57:56+00:00"
1828
  }
1829
  ],
1830
  "aliases": [],
docker-start.sh ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+
3
+ docker-compose down --volumes
4
+
5
+ docker-compose up -d
6
+
7
+ while ! docker logs -t --tail 1000 wordpress 2>&1 | grep -i "apache2 -D FOREGROUND"
8
+ do
9
+ sleep 1
10
+ echo "Installing Wordpress..."
11
+ done
12
+
13
+ echo "Wordpress installed!"
14
+
15
+ docker exec -it wordpress /bin/bash -c "chown -R www-data:www-data /var/www/html; chmod 777 /var/www/html/wp-content/plugins /var/www/html/wp-content/"
16
+
17
+ setupWordpressCmd="wp core install --url=\"localhost:8081\" --title=\"LiveChat\" --admin_user=\"admin\" --admin_password=\"admin\" --admin_email=\"admin@lc.com\""
18
+
19
+ docker-compose run --rm cli /bin/bash -c "$setupWordpressCmd"
livechat.php CHANGED
@@ -5,7 +5,7 @@ Plugin URI: https://www.livechat.com/addons/wordpress/
5
  Description: Live chat software for live help, online sales and customer support. This plugin allows to quickly install LiveChat on any WordPress website.
6
  Author: LiveChat
7
  Author URI: https://www.livechat.com
8
- Version: 4.2.3
9
  Text Domain: wp-live-chat-software-for-wordpress
10
  Domain Path: /languages
11
  */
5
  Description: Live chat software for live help, online sales and customer support. This plugin allows to quickly install LiveChat on any WordPress website.
6
  Author: LiveChat
7
  Author URI: https://www.livechat.com
8
+ Version: 4.3.0
9
  Text Domain: wp-live-chat-software-for-wordpress
10
  Domain Path: /languages
11
  */
plugin_files/LiveChatAdmin.class.php CHANGED
@@ -69,7 +69,7 @@ final class LiveChatAdmin extends LiveChat {
69
  add_action( 'admin_init', array( $this, 'inject_nonce_object' ) );
70
  add_action( 'admin_menu', array( $this, 'register_admin_menu' ) );
71
  add_action( 'current_screen', array( $this, 'show_deactivation_feedback_form' ) );
72
- add_action( 'activate_livechat', array( $this, 'plugin_activated_action_handler' ) );
73
 
74
  $this->register_admin_notices();
75
  $this->register_ajax_actions();
@@ -481,6 +481,14 @@ final class LiveChatAdmin extends LiveChat {
481
  }
482
  }
483
 
 
 
 
 
 
 
 
 
484
  /**
485
  * Removes store token when it was not found in LiveChat service.
486
  */
@@ -501,14 +509,21 @@ final class LiveChatAdmin extends LiveChat {
501
  */
502
  public function register_ajax_actions() {
503
  add_action( 'wp_ajax_lc_connect', array( $this, 'ajax_connect' ) );
 
504
  add_action( 'wp_ajax_lc_store_not_found', array( $this, 'ajax_store_not_found' ) );
505
  add_action( 'wp_ajax_lc_user_not_found', array( $this, 'ajax_user_not_found' ) );
506
  }
507
 
508
  /**
509
  * Handles plugin activated action - redirects to plugin setting page.
 
 
510
  */
511
- public function plugin_activated_action_handler() {
 
 
 
 
512
  wp_safe_redirect( admin_url( 'admin.php?page=livechat_settings' ) );
513
  exit;
514
  }
69
  add_action( 'admin_init', array( $this, 'inject_nonce_object' ) );
70
  add_action( 'admin_menu', array( $this, 'register_admin_menu' ) );
71
  add_action( 'current_screen', array( $this, 'show_deactivation_feedback_form' ) );
72
+ add_action( 'activated_plugin', array( $this, 'plugin_activated_action_handler' ) );
73
 
74
  $this->register_admin_notices();
75
  $this->register_ajax_actions();
481
  }
482
  }
483
 
484
+ /**
485
+ * Disconnects LC plugin from current license.
486
+ */
487
+ public function ajax_disconnect() {
488
+ Store::get_instance()->remove_store_data();
489
+ User::get_instance()->remove_authorized_users();
490
+ }
491
+
492
  /**
493
  * Removes store token when it was not found in LiveChat service.
494
  */
509
  */
510
  public function register_ajax_actions() {
511
  add_action( 'wp_ajax_lc_connect', array( $this, 'ajax_connect' ) );
512
+ add_action( 'wp_ajax_lc_disconnect', array( $this, 'ajax_disconnect' ) );
513
  add_action( 'wp_ajax_lc_store_not_found', array( $this, 'ajax_store_not_found' ) );
514
  add_action( 'wp_ajax_lc_user_not_found', array( $this, 'ajax_user_not_found' ) );
515
  }
516
 
517
  /**
518
  * Handles plugin activated action - redirects to plugin setting page.
519
+ *
520
+ * @param string $plugin Plugin slug.
521
  */
522
+ public function plugin_activated_action_handler( $plugin ) {
523
+ if ( 'wp-live-chat-software-for-wordpress/livechat.php' !== $plugin ) {
524
+ return;
525
+ }
526
+
527
  wp_safe_redirect( admin_url( 'admin.php?page=livechat_settings' ) );
528
  exit;
529
  }
plugin_files/Services/User.class.php CHANGED
@@ -121,6 +121,10 @@ class User {
121
  public function remove_authorized_users() {
122
  $authorized_users = $this->get_authorized_users();
123
 
 
 
 
 
124
  foreach ( $authorized_users as $user_id ) {
125
  $this->remove_user_token( $user_id );
126
  }
121
  public function remove_authorized_users() {
122
  $authorized_users = $this->get_authorized_users();
123
 
124
+ if ( empty( $authorized_users ) ) {
125
+ return;
126
+ }
127
+
128
  foreach ( $authorized_users as $user_id ) {
129
  $this->remove_user_token( $user_id );
130
  }
plugin_files/js/connect.js CHANGED
@@ -1,4 +1,4 @@
1
- // Version: "2.4.0"
2
  parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"MVLi":[function(require,module,exports) {
3
  var global = arguments[3];
4
  var t=arguments[3],o=function(t){return t&&t.Math==Math&&t};module.exports=o("object"==typeof globalThis&&globalThis)||o("object"==typeof window&&window)||o("object"==typeof self&&self)||o("object"==typeof t&&t)||Function("return this")();
@@ -411,7 +411,7 @@ parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcel
411
  },{"../internals/fix-regexp-well-known-symbol-logic":"xXXd","../internals/is-regexp":"fTdC","../internals/an-object":"eAPg","../internals/require-object-coercible":"RWPB","../internals/species-constructor":"mxIp","../internals/advance-string-index":"AIo2","../internals/to-length":"j9AG","../internals/regexp-exec-abstract":"hv6q","../internals/regexp-exec":"OSep","../internals/fails":"pWu7"}],"GB8Q":[function(require,module,exports) {
412
  "use strict";var r=require("../internals/export"),t=require("../internals/object-get-own-property-descriptor").f,e=require("../internals/to-length"),i=require("../internals/not-a-regexp"),n=require("../internals/require-object-coercible"),s=require("../internals/correct-is-regexp-logic"),a=require("../internals/is-pure"),o="".startsWith,l=Math.min,c=s("startsWith"),u=!a&&!c&&!!function(){var r=t(String.prototype,"startsWith");return r&&!r.writable}();r({target:"String",proto:!0,forced:!u&&!c},{startsWith:function(r){var t=String(n(this));i(r);var s=e(l(arguments.length>1?arguments[1]:void 0,t.length)),a=String(r);return o?o.call(t,a,s):t.slice(s,s+a.length)===a}});
413
  },{"../internals/export":"rhEq","../internals/object-get-own-property-descriptor":"zm15","../internals/to-length":"j9AG","../internals/not-a-regexp":"gIbS","../internals/require-object-coercible":"RWPB","../internals/correct-is-regexp-logic":"cTby","../internals/is-pure":"tGwT"}],"t1eM":[function(require,module,exports) {
414
- module.exports="\t\n\v\f\r                 \u2028\u2029\ufeff";
415
  },{}],"Fme6":[function(require,module,exports) {
416
  var e=require("../internals/require-object-coercible"),r=require("../internals/whitespaces"),t="["+r+"]",n=RegExp("^"+t+t+"*"),i=RegExp(t+t+"*$"),a=function(r){return function(t){var a=String(e(t));return 1&r&&(a=a.replace(n,"")),2&r&&(a=a.replace(i,"")),a}};module.exports={start:a(1),end:a(2),trim:a(3)};
417
  },{"../internals/require-object-coercible":"RWPB","../internals/whitespaces":"t1eM"}],"UtzI":[function(require,module,exports) {
@@ -825,9 +825,11 @@ parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcel
825
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AgentWasCreatedEvent=void 0;var e=require("./Event");function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function n(e,t){if(null==e)return{};var n,o,u=r(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function r(e,t){if(null==e)return{};var n,r,o={},u=Object.keys(e);for(r=0;r<u.length;r++)n=u[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),e}function f(e,n){return!n||"object"!==t(n)&&"function"!=typeof n?c(e):n}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var p=function(t){function r(e){var t;return o(this,r),(t=f(this,l(r).call(this))).userToken=e,t}return a(r,e.Event),i(r,null,[{key:"getName",value:function(){return"AgentWasCreatedEvent"}},{key:"fromObject",value:function(e){var t=e.userToken,o=n(e,["userToken"]),u=new r(t);return u.setProperties(o),u}}]),r}();exports.AgentWasCreatedEvent=p;
826
  },{"./Event":"h36w"}],"sxXM":[function(require,module,exports) {
827
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ErrorOccurredEvent=void 0;var e=require("./Event");function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){if(null==e)return{};var r,o,u=n(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o<c.length;o++)r=c[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(u[r]=e[r])}return u}function n(e,t){if(null==e)return{};var r,n,o={},u=Object.keys(e);for(n=0;n<u.length;n++)r=u[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function c(e,t,r){return t&&u(e.prototype,t),r&&u(e,r),e}function i(e,r){return!r||"object"!==t(r)&&"function"!=typeof r?f(e):r}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function a(e){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var p=function(t){function n(e,t){var r,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return o(this,n),(r=i(this,a(n).call(this))).errorMessage=e,r.statusCode=t,r.metadata=u,r}return l(n,e.Event),c(n,null,[{key:"getName",value:function(){return"ErrorOccurredEvent"}},{key:"fromObject",value:function(e){var t=e.errorMessage,o=e.statusCode,u=e.metadata,c=void 0===u?null:u,i=r(e,["errorMessage","statusCode","metadata"]),f=new n(t,o,c);return f.setProperties(i),f}}]),n}();exports.ErrorOccurredEvent=p;
 
 
828
  },{"./Event":"h36w"}],"Sykw":[function(require,module,exports) {
829
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Event");Object.keys(e).forEach(function(r){"default"!==r&&"__esModule"!==r&&Object.defineProperty(exports,r,{enumerable:!0,get:function(){return e[r]}})});var r=require("./UserSignedInEvent");Object.keys(r).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})});var t=require("./AgentWasCreatedEvent");Object.keys(t).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});var n=require("./ErrorOccurredEvent");Object.keys(n).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return n[e]}})});
830
- },{"./Event":"h36w","./UserSignedInEvent":"T8Ex","./AgentWasCreatedEvent":"mzHb","./ErrorOccurredEvent":"sxXM"}],"ixYr":[function(require,module,exports) {
831
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Register");Object.keys(e).forEach(function(r){"default"!==r&&"__esModule"!==r&&Object.defineProperty(exports,r,{enumerable:!0,get:function(){return e[r]}})});var r=require("./CommandsRegister");Object.keys(r).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})});var t=require("./EventsRegister");Object.keys(t).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});
832
  },{"./Register":"PvzX","./CommandsRegister":"CcKS","./EventsRegister":"nSEc"}],"Focm":[function(require,module,exports) {
833
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),require("core-js/stable"),require("regenerator-runtime/runtime");var e=require("./bridge");Object.keys(e).forEach(function(r){"default"!==r&&"__esModule"!==r&&Object.defineProperty(exports,r,{enumerable:!0,get:function(){return e[r]}})});var r=require("./commands");Object.keys(r).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})});var t=require("./events");Object.keys(t).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});var u=require("./register");Object.keys(u).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return u[e]}})});
1
+ // Version: "2.5.0"
2
  parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"MVLi":[function(require,module,exports) {
3
  var global = arguments[3];
4
  var t=arguments[3],o=function(t){return t&&t.Math==Math&&t};module.exports=o("object"==typeof globalThis&&globalThis)||o("object"==typeof window&&window)||o("object"==typeof self&&self)||o("object"==typeof t&&t)||Function("return this")();
411
  },{"../internals/fix-regexp-well-known-symbol-logic":"xXXd","../internals/is-regexp":"fTdC","../internals/an-object":"eAPg","../internals/require-object-coercible":"RWPB","../internals/species-constructor":"mxIp","../internals/advance-string-index":"AIo2","../internals/to-length":"j9AG","../internals/regexp-exec-abstract":"hv6q","../internals/regexp-exec":"OSep","../internals/fails":"pWu7"}],"GB8Q":[function(require,module,exports) {
412
  "use strict";var r=require("../internals/export"),t=require("../internals/object-get-own-property-descriptor").f,e=require("../internals/to-length"),i=require("../internals/not-a-regexp"),n=require("../internals/require-object-coercible"),s=require("../internals/correct-is-regexp-logic"),a=require("../internals/is-pure"),o="".startsWith,l=Math.min,c=s("startsWith"),u=!a&&!c&&!!function(){var r=t(String.prototype,"startsWith");return r&&!r.writable}();r({target:"String",proto:!0,forced:!u&&!c},{startsWith:function(r){var t=String(n(this));i(r);var s=e(l(arguments.length>1?arguments[1]:void 0,t.length)),a=String(r);return o?o.call(t,a,s):t.slice(s,s+a.length)===a}});
413
  },{"../internals/export":"rhEq","../internals/object-get-own-property-descriptor":"zm15","../internals/to-length":"j9AG","../internals/not-a-regexp":"gIbS","../internals/require-object-coercible":"RWPB","../internals/correct-is-regexp-logic":"cTby","../internals/is-pure":"tGwT"}],"t1eM":[function(require,module,exports) {
414
+ module.exports="\t\n\v\f\r                \u2028\u2029\ufeff";
415
  },{}],"Fme6":[function(require,module,exports) {
416
  var e=require("../internals/require-object-coercible"),r=require("../internals/whitespaces"),t="["+r+"]",n=RegExp("^"+t+t+"*"),i=RegExp(t+t+"*$"),a=function(r){return function(t){var a=String(e(t));return 1&r&&(a=a.replace(n,"")),2&r&&(a=a.replace(i,"")),a}};module.exports={start:a(1),end:a(2),trim:a(3)};
417
  },{"../internals/require-object-coercible":"RWPB","../internals/whitespaces":"t1eM"}],"UtzI":[function(require,module,exports) {
825
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AgentWasCreatedEvent=void 0;var e=require("./Event");function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function n(e,t){if(null==e)return{};var n,o,u=r(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(u[n]=e[n])}return u}function r(e,t){if(null==e)return{};var n,r,o={},u=Object.keys(e);for(r=0;r<u.length;r++)n=u[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function i(e,t,n){return t&&u(e.prototype,t),n&&u(e,n),e}function f(e,n){return!n||"object"!==t(n)&&"function"!=typeof n?c(e):n}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var p=function(t){function r(e){var t;return o(this,r),(t=f(this,l(r).call(this))).userToken=e,t}return a(r,e.Event),i(r,null,[{key:"getName",value:function(){return"AgentWasCreatedEvent"}},{key:"fromObject",value:function(e){var t=e.userToken,o=n(e,["userToken"]),u=new r(t);return u.setProperties(o),u}}]),r}();exports.AgentWasCreatedEvent=p;
826
  },{"./Event":"h36w"}],"sxXM":[function(require,module,exports) {
827
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ErrorOccurredEvent=void 0;var e=require("./Event");function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function r(e,t){if(null==e)return{};var r,o,u=n(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o<c.length;o++)r=c[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(u[r]=e[r])}return u}function n(e,t){if(null==e)return{};var r,n,o={},u=Object.keys(e);for(n=0;n<u.length;n++)r=u[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function c(e,t,r){return t&&u(e.prototype,t),r&&u(e,r),e}function i(e,r){return!r||"object"!==t(r)&&"function"!=typeof r?f(e):r}function f(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function a(e){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&s(e,t)}function s(e,t){return(s=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var p=function(t){function n(e,t){var r,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return o(this,n),(r=i(this,a(n).call(this))).errorMessage=e,r.statusCode=t,r.metadata=u,r}return l(n,e.Event),c(n,null,[{key:"getName",value:function(){return"ErrorOccurredEvent"}},{key:"fromObject",value:function(e){var t=e.errorMessage,o=e.statusCode,u=e.metadata,c=void 0===u?null:u,i=r(e,["errorMessage","statusCode","metadata"]),f=new n(t,o,c);return f.setProperties(i),f}}]),n}();exports.ErrorOccurredEvent=p;
828
+ },{"./Event":"h36w"}],"Hfvt":[function(require,module,exports) {
829
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.AppWasDisconnectedEvent=void 0;var e=require("./Event");function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function r(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e}function u(e,n){return!n||"object"!==t(n)&&"function"!=typeof n?i(e):n}function i(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function f(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&p(e,t)}function p(e,t){return(p=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var a=function(t){function o(){return n(this,o),u(this,c(o).call(this))}return f(o,e.Event),r(o,null,[{key:"getName",value:function(){return"AppWasDisconnectedEvent"}},{key:"fromObject",value:function(e){var t=new o;return t.setProperties(e),t}}]),o}();exports.AppWasDisconnectedEvent=a;
830
  },{"./Event":"h36w"}],"Sykw":[function(require,module,exports) {
831
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Event");Object.keys(e).forEach(function(r){"default"!==r&&"__esModule"!==r&&Object.defineProperty(exports,r,{enumerable:!0,get:function(){return e[r]}})});var r=require("./UserSignedInEvent");Object.keys(r).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})});var t=require("./AgentWasCreatedEvent");Object.keys(t).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});var n=require("./ErrorOccurredEvent");Object.keys(n).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return n[e]}})});var u=require("./AppWasDisconnectedEvent");Object.keys(u).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return u[e]}})});
832
+ },{"./Event":"h36w","./UserSignedInEvent":"T8Ex","./AgentWasCreatedEvent":"mzHb","./ErrorOccurredEvent":"sxXM","./AppWasDisconnectedEvent":"Hfvt"}],"ixYr":[function(require,module,exports) {
833
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./Register");Object.keys(e).forEach(function(r){"default"!==r&&"__esModule"!==r&&Object.defineProperty(exports,r,{enumerable:!0,get:function(){return e[r]}})});var r=require("./CommandsRegister");Object.keys(r).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})});var t=require("./EventsRegister");Object.keys(t).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});
834
  },{"./Register":"PvzX","./CommandsRegister":"CcKS","./EventsRegister":"nSEc"}],"Focm":[function(require,module,exports) {
835
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),require("core-js/stable"),require("regenerator-runtime/runtime");var e=require("./bridge");Object.keys(e).forEach(function(r){"default"!==r&&"__esModule"!==r&&Object.defineProperty(exports,r,{enumerable:!0,get:function(){return e[r]}})});var r=require("./commands");Object.keys(r).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return r[e]}})});var t=require("./events");Object.keys(t).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return t[e]}})});var u=require("./register");Object.keys(u).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(exports,e,{enumerable:!0,get:function(){return u[e]}})});
plugin_files/templates/connect.html.twig CHANGED
@@ -38,6 +38,10 @@
38
  });
39
  }
40
 
 
 
 
 
41
  function entityNotFound(entity) {
42
  return adminAjaxCall(`lc_${entity}_not_found`).done(() => {
43
  window.location.reload();
@@ -48,6 +52,9 @@
48
  eventsRegister.register(AppBridge.UserSignedInEvent, function (data) {
49
  return userSignedInHandler(data.userToken, data.storeToken);
50
  });
 
 
 
51
  eventsRegister.register(AppBridge.ErrorOccurredEvent, function (data) {
52
  if (data.statusCode !== 404) {
53
  return console.error(new Error(data.errorMessage));
38
  });
39
  }
40
 
41
+ function appWasDisconnectedhandler() {
42
+ return adminAjaxCall('lc_disconnect');
43
+ }
44
+
45
  function entityNotFound(entity) {
46
  return adminAjaxCall(`lc_${entity}_not_found`).done(() => {
47
  window.location.reload();
52
  eventsRegister.register(AppBridge.UserSignedInEvent, function (data) {
53
  return userSignedInHandler(data.userToken, data.storeToken);
54
  });
55
+ eventsRegister.register(AppBridge.AppWasDisconnectedEvent, function () {
56
+ return appWasDisconnectedhandler();
57
+ });
58
  eventsRegister.register(AppBridge.ErrorOccurredEvent, function (data) {
59
  if (data.statusCode !== 404) {
60
  return console.error(new Error(data.errorMessage));
readme.txt CHANGED
@@ -1,7 +1,7 @@
1
  === LiveChat - WP live chat plugin for WordPress ===
2
  Contributors: LiveChat
3
  Tags: live chat, chat plugin, live chat plugin, wordpress live chat, wordpress chat,
4
- Stable tag: 4.2.3
5
  Requires PHP: 5.6
6
  Tested up to: 5.4
7
  Requires at least: 4.0
@@ -352,6 +352,10 @@ For more detailed instructions, go to the [live chat plugin page](https://www.li
352
 
353
  == Changelog ==
354
 
 
 
 
 
355
  = 4.2.3 =
356
  * plugin activation hook fix
357
 
1
  === LiveChat - WP live chat plugin for WordPress ===
2
  Contributors: LiveChat
3
  Tags: live chat, chat plugin, live chat plugin, wordpress live chat, wordpress chat,
4
+ Stable tag: 4.3.0
5
  Requires PHP: 5.6
6
  Tested up to: 5.4
7
  Requires at least: 4.0
352
 
353
  == Changelog ==
354
 
355
+ = 4.3.0 =
356
+ * bug fixes
357
+ * disconnect option added
358
+
359
  = 4.2.3 =
360
  * plugin activation hook fix
361
 
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit53a952c2d433065f3c803022f1b5c0af::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInitbba67021b663d39bb6111ac0740e7a0e::getLoader();
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit53a952c2d433065f3c803022f1b5c0af
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit53a952c2d433065f3c803022f1b5c0af
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit53a952c2d433065f3c803022f1b5c0af', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit53a952c2d433065f3c803022f1b5c0af', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInit53a952c2d433065f3c803022f1b5c0af::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInitbba67021b663d39bb6111ac0740e7a0e
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInitbba67021b663d39bb6111ac0740e7a0e', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInitbba67021b663d39bb6111ac0740e7a0e', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInitbba67021b663d39bb6111ac0740e7a0e::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit53a952c2d433065f3c803022f1b5c0af
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  'L' =>
@@ -72,9 +72,9 @@ class ComposerStaticInit53a952c2d433065f3c803022f1b5c0af
72
  public static function getInitializer(ClassLoader $loader)
73
  {
74
  return \Closure::bind(function () use ($loader) {
75
- $loader->prefixLengthsPsr4 = ComposerStaticInit53a952c2d433065f3c803022f1b5c0af::$prefixLengthsPsr4;
76
- $loader->prefixDirsPsr4 = ComposerStaticInit53a952c2d433065f3c803022f1b5c0af::$prefixDirsPsr4;
77
- $loader->classMap = ComposerStaticInit53a952c2d433065f3c803022f1b5c0af::$classMap;
78
 
79
  }, null, ClassLoader::class);
80
  }
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInitbba67021b663d39bb6111ac0740e7a0e
8
  {
9
  public static $prefixLengthsPsr4 = array (
10
  'L' =>
72
  public static function getInitializer(ClassLoader $loader)
73
  {
74
  return \Closure::bind(function () use ($loader) {
75
+ $loader->prefixLengthsPsr4 = ComposerStaticInitbba67021b663d39bb6111ac0740e7a0e::$prefixLengthsPsr4;
76
+ $loader->prefixDirsPsr4 = ComposerStaticInitbba67021b663d39bb6111ac0740e7a0e::$prefixDirsPsr4;
77
+ $loader->classMap = ComposerStaticInitbba67021b663d39bb6111ac0740e7a0e::$classMap;
78
 
79
  }, null, ClassLoader::class);
80
  }