Version Description
- Updated gutenberg block to incorporate current changes. Added support for multiple controls on block inspector controls.
Download this release
Release Info
Developer | socialdude |
Plugin | Social Share Icons & Social Share Buttons |
Version | 3.0.0 |
Comparing to | |
See all releases |
Code changes from version 2.9.9 to 3.0.0
- css/sfsi-admin-style.css +164 -0
- css/sfsi-style.css +8 -1
- dist/blocks.build.js +110 -1
- dist/blocks.editor.build.css +156 -1
- dist/blocks.style.build.css +13 -1
- images/Chat_with_us_bar_dark_green.png +0 -0
- images/Chat_with_us_bar_light_green.png +0 -0
- images/Ic_insert_emoticon_48px.svg +4 -0
- images/sfsi_block_icon.jpg +0 -0
- images/sfsi_block_premium_ad.png +0 -0
- js/custom-admin.js +66 -4
- js/custom.js +91 -1
- libs/controllers/sfsi_buttons_controller.php +18 -0
- libs/sfsi_gutenberg_block.php +221 -3
- libs/sfsi_install_uninstall.php +1 -1
- libs/sfsi_widget.php +4 -3
- readme.txt +10 -6
- ultimate_social_media_icons.php +3 -3
- views/sfsi_chat_on_admin_pannel.php +112 -0
- views/sfsi_option_view8.php +30 -1
- views/sfsi_options_view.php +6 -10
css/sfsi-admin-style.css
CHANGED
@@ -1470,3 +1470,167 @@ div#sfsi_plus_langnotice {padding: 10px;margin-left: 0px;position: relative;}
|
|
1470 |
@media (min-width: 992px){.col-md-3 {width: 25%;}.col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9 {float: left;}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}
|
1471 |
@media (min-width:768px) {.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}
|
1472 |
@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1470 |
@media (min-width: 992px){.col-md-3 {width: 25%;}.col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9 {float: left;}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}
|
1471 |
@media (min-width:768px) {.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}
|
1472 |
@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}
|
1473 |
+
#sfsi_plus_jivo_offline_chat{
|
1474 |
+
position:fixed;
|
1475 |
+
bottom:0;
|
1476 |
+
right:30px;
|
1477 |
+
height:350px;
|
1478 |
+
min-width:45%;
|
1479 |
+
background:#fff;
|
1480 |
+
border-top-left-radius:30px;
|
1481 |
+
border-top-right-radius:30px;
|
1482 |
+
padding:10px;
|
1483 |
+
border: 3px solid #ddd;
|
1484 |
+
border-bottom: 0;
|
1485 |
+
}
|
1486 |
+
#sfsi_plus_jivo_offline_chat .heading-text{
|
1487 |
+
font-size:16px;
|
1488 |
+
font-weight:500;
|
1489 |
+
color:#999;
|
1490 |
+
}
|
1491 |
+
#sfsi_plus_jivo_offline_chat .heading-text a{
|
1492 |
+
font-size:16px;
|
1493 |
+
font-weight:900;
|
1494 |
+
color:#999;
|
1495 |
+
}
|
1496 |
+
#sfsi_plus_jivo_offline_chat .tab-changer{
|
1497 |
+
/*width:100%;*/
|
1498 |
+
padding:0 15px;
|
1499 |
+
|
1500 |
+
}
|
1501 |
+
#sfsi_plus_jivo_offline_chat .tab-changer .tab-link {
|
1502 |
+
float: left;
|
1503 |
+
width: 50%;
|
1504 |
+
text-align: center;
|
1505 |
+
background: #eee;
|
1506 |
+
border-bottom: 5px solid #24497B;
|
1507 |
+
}
|
1508 |
+
#sfsi_plus_jivo_offline_chat .tab-changer .tab-link:first-child {
|
1509 |
+
border-top-left-radius:8px;
|
1510 |
+
}
|
1511 |
+
#sfsi_plus_jivo_offline_chat .tab-changer .tab-link:last-child {
|
1512 |
+
border-top-right-radius:8px;
|
1513 |
+
}
|
1514 |
+
#sfsi_plus_jivo_offline_chat .tab-changer .tab-link p {
|
1515 |
+
background: #eee;
|
1516 |
+
padding: 5px 0;
|
1517 |
+
margin: 0;
|
1518 |
+
border-top-left-radius: 10px;
|
1519 |
+
border-top-right-radius: 10px;
|
1520 |
+
font-size: 25px;
|
1521 |
+
cursor:pointer;
|
1522 |
+
line-height:1;
|
1523 |
+
}
|
1524 |
+
#sfsi_plus_jivo_offline_chat .tab-changer .tab-link p span {
|
1525 |
+
font-size: 15px;
|
1526 |
+
}
|
1527 |
+
#sfsi_plus_jivo_offline_chat .tab-changer .tab-link.active p {
|
1528 |
+
background: #24497B;
|
1529 |
+
color: #fff;
|
1530 |
+
}
|
1531 |
+
#sfsi_plus_jivo_offline_chat .tabs {
|
1532 |
+
/*background: #dbeef4;*/
|
1533 |
+
background: #ddd;
|
1534 |
+
margin: -6px 15px 0 15px;
|
1535 |
+
min-height:250px;
|
1536 |
+
}
|
1537 |
+
#sfsi_plus_jivo_offline_chat #sfsi_technical {
|
1538 |
+
padding:50px;
|
1539 |
+
}
|
1540 |
+
#sfsi_plus_jivo_offline_chat .tabs .support-forum-green-div{
|
1541 |
+
margin: 10px 0;
|
1542 |
+
}
|
1543 |
+
#sfsi_plus_jivo_offline_chat .tabs .support-forum-green-div a {
|
1544 |
+
padding:20px 26px 18px 25px;
|
1545 |
+
width:245px;
|
1546 |
+
margin:0;
|
1547 |
+
}
|
1548 |
+
#sfsi_plus_jivo_offline_chat .tabs .support-forum-green-div a img {
|
1549 |
+
margin-top:11px;
|
1550 |
+
}
|
1551 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_technical p {
|
1552 |
+
font-size:20px;
|
1553 |
+
padding-top:5px;
|
1554 |
+
margin:0;
|
1555 |
+
}
|
1556 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales{
|
1557 |
+
padding:15px;
|
1558 |
+
}
|
1559 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales .right-message{
|
1560 |
+
width:50%;
|
1561 |
+
float:right;
|
1562 |
+
text-align:right;
|
1563 |
+
margin:0;
|
1564 |
+
}
|
1565 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales form>div{
|
1566 |
+
margin-top:5px;
|
1567 |
+
}
|
1568 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales label{
|
1569 |
+
font-size:20px;
|
1570 |
+
color:#000;
|
1571 |
+
font-weight: 900;
|
1572 |
+
padding-bottom:5px;
|
1573 |
+
}
|
1574 |
+
|
1575 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales input , #sfsi_plus_jivo_offline_chat .tabs #sfsi_sales textarea{
|
1576 |
+
margin-top:5px;
|
1577 |
+
width:100%;
|
1578 |
+
border:0;
|
1579 |
+
box-shadow: 0 0 5px 0 #888;
|
1580 |
+
}
|
1581 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales input{
|
1582 |
+
height:40px;
|
1583 |
+
}
|
1584 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales textarea{
|
1585 |
+
height:80px;
|
1586 |
+
resize: none;
|
1587 |
+
}
|
1588 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales input[type="submit"],#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales .after_message_sent button{
|
1589 |
+
border: 0;
|
1590 |
+
background: #079345;
|
1591 |
+
color: #fff;
|
1592 |
+
margin-top: 23px;
|
1593 |
+
width: 100%;
|
1594 |
+
font-size: 16px;
|
1595 |
+
border-radius: 4px;
|
1596 |
+
cursor:pointer;
|
1597 |
+
box-shadow: none;
|
1598 |
+
}
|
1599 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales .after_message_sent{
|
1600 |
+
text-align:center;
|
1601 |
+
}
|
1602 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales .after_message_sent h2{
|
1603 |
+
font-size:35px;
|
1604 |
+
}
|
1605 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales .after_message_sent h3{
|
1606 |
+
font-size:25px;
|
1607 |
+
font-weight:300;
|
1608 |
+
}
|
1609 |
+
#sfsi_plus_jivo_offline_chat .tabs #sfsi_sales .after_message_sent button{
|
1610 |
+
width:auto;
|
1611 |
+
margin-top:0;
|
1612 |
+
padding:10px;
|
1613 |
+
}
|
1614 |
+
#sfsi_plus_jivo_offline_chat #sfsi_technical .sfsi-button-right-side {
|
1615 |
+
font-size: 13px!important;
|
1616 |
+
font-weight: 900;
|
1617 |
+
float: right;
|
1618 |
+
text-align: right;
|
1619 |
+
margin-top: -40px!important;
|
1620 |
+
}
|
1621 |
+
#sfsi_plus_jivo_offline_chat #sfsi_technical .sfsi-button-right-side .sfsi-button-right-side-icon{
|
1622 |
+
background-image: url('images/select-arrow.png');
|
1623 |
+
width:15px;
|
1624 |
+
height:9px;
|
1625 |
+
display:inline-block;
|
1626 |
+
-webkit-transform: rotate(90deg);
|
1627 |
+
-moz-transform: rotate(90deg);
|
1628 |
+
-ms-transform: rotate(90deg);
|
1629 |
+
-o-transform: rotate(90deg);
|
1630 |
+
transform: rotate(90deg);
|
1631 |
+
}
|
1632 |
+
@media (max-width: 543px){
|
1633 |
+
#sfsi_plus_jivo_offline_chat{
|
1634 |
+
width:400px;
|
1635 |
+
}
|
1636 |
+
}
|
css/sfsi-style.css
CHANGED
@@ -3237,4 +3237,11 @@ label.sfsiplus_toglpstpgsbttl { float: left; margin-top: 5px !important}
|
|
3237 |
}
|
3238 |
.sfsi_plus_Sicons .sf_pinit{
|
3239 |
margin:0 0 0 10px;
|
3240 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3237 |
}
|
3238 |
.sfsi_plus_Sicons .sf_pinit{
|
3239 |
margin:0 0 0 10px;
|
3240 |
+
}
|
3241 |
+
.wp-block-ultimate-social-media-plus-sfsi-plus-share-block .sfsi_plus_block_text_before_icon{
|
3242 |
+
display:inline-block;
|
3243 |
+
vertical-align:top;
|
3244 |
+
}
|
3245 |
+
.wp-block-ultimate-social-media-plus-sfsi-plus-share-block .sfsi_plus_block{
|
3246 |
+
display:inline-block
|
3247 |
+
}
|
dist/blocks.build.js
CHANGED
@@ -1 +1,110 @@
|
|
1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/******/ (function(modules) { // webpackBootstrap
|
2 |
+
/******/ // The module cache
|
3 |
+
/******/ var installedModules = {};
|
4 |
+
/******/
|
5 |
+
/******/ // The require function
|
6 |
+
/******/ function __webpack_require__(moduleId) {
|
7 |
+
/******/
|
8 |
+
/******/ // Check if module is in cache
|
9 |
+
/******/ if(installedModules[moduleId]) {
|
10 |
+
/******/ return installedModules[moduleId].exports;
|
11 |
+
/******/ }
|
12 |
+
/******/ // Create a new module (and put it into the cache)
|
13 |
+
/******/ var module = installedModules[moduleId] = {
|
14 |
+
/******/ i: moduleId,
|
15 |
+
/******/ l: false,
|
16 |
+
/******/ exports: {}
|
17 |
+
/******/ };
|
18 |
+
/******/
|
19 |
+
/******/ // Execute the module function
|
20 |
+
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
21 |
+
/******/
|
22 |
+
/******/ // Flag the module as loaded
|
23 |
+
/******/ module.l = true;
|
24 |
+
/******/
|
25 |
+
/******/ // Return the exports of the module
|
26 |
+
/******/ return module.exports;
|
27 |
+
/******/ }
|
28 |
+
/******/
|
29 |
+
/******/
|
30 |
+
/******/ // expose the modules object (__webpack_modules__)
|
31 |
+
/******/ __webpack_require__.m = modules;
|
32 |
+
/******/
|
33 |
+
/******/ // expose the module cache
|
34 |
+
/******/ __webpack_require__.c = installedModules;
|
35 |
+
/******/
|
36 |
+
/******/ // define getter function for harmony exports
|
37 |
+
/******/ __webpack_require__.d = function(exports, name, getter) {
|
38 |
+
/******/ if(!__webpack_require__.o(exports, name)) {
|
39 |
+
/******/ Object.defineProperty(exports, name, {
|
40 |
+
/******/ configurable: false,
|
41 |
+
/******/ enumerable: true,
|
42 |
+
/******/ get: getter
|
43 |
+
/******/ });
|
44 |
+
/******/ }
|
45 |
+
/******/ };
|
46 |
+
/******/
|
47 |
+
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
48 |
+
/******/ __webpack_require__.n = function(module) {
|
49 |
+
/******/ var getter = module && module.__esModule ?
|
50 |
+
/******/ function getDefault() { return module['default']; } :
|
51 |
+
/******/ function getModuleExports() { return module; };
|
52 |
+
/******/ __webpack_require__.d(getter, 'a', getter);
|
53 |
+
/******/ return getter;
|
54 |
+
/******/ };
|
55 |
+
/******/
|
56 |
+
/******/ // Object.prototype.hasOwnProperty.call
|
57 |
+
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
58 |
+
/******/
|
59 |
+
/******/ // __webpack_public_path__
|
60 |
+
/******/ __webpack_require__.p = "";
|
61 |
+
/******/
|
62 |
+
/******/ // Load entry module and return exports
|
63 |
+
/******/ return __webpack_require__(__webpack_require__.s = 0);
|
64 |
+
/******/ })
|
65 |
+
/************************************************************************/
|
66 |
+
/******/ ([
|
67 |
+
/* 0 */
|
68 |
+
/*!***********************!*\
|
69 |
+
!*** ./src/blocks.js ***!
|
70 |
+
\***********************/
|
71 |
+
/*! no exports provided */
|
72 |
+
/*! all exports used */
|
73 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
74 |
+
|
75 |
+
"use strict";
|
76 |
+
eval("Object.defineProperty(__webpack_exports__, \"__esModule\", { value: true });\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__block_block_js__ = __webpack_require__(/*! ./block/block.js */ 1);\n/**\n * Gutenberg Blocks\n *\n * All blocks related JavaScript files should be imported here.\n * You can create a new block folder in this dir and include code\n * for that block here as well.\n *\n * All blocks should be included here since this is the file that\n * Webpack is compiling as the input file.\n */\n\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMC5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9ibG9ja3MuanM/N2I1YiJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEd1dGVuYmVyZyBCbG9ja3NcbiAqXG4gKiBBbGwgYmxvY2tzIHJlbGF0ZWQgSmF2YVNjcmlwdCBmaWxlcyBzaG91bGQgYmUgaW1wb3J0ZWQgaGVyZS5cbiAqIFlvdSBjYW4gY3JlYXRlIGEgbmV3IGJsb2NrIGZvbGRlciBpbiB0aGlzIGRpciBhbmQgaW5jbHVkZSBjb2RlXG4gKiBmb3IgdGhhdCBibG9jayBoZXJlIGFzIHdlbGwuXG4gKlxuICogQWxsIGJsb2NrcyBzaG91bGQgYmUgaW5jbHVkZWQgaGVyZSBzaW5jZSB0aGlzIGlzIHRoZSBmaWxlIHRoYXRcbiAqIFdlYnBhY2sgaXMgY29tcGlsaW5nIGFzIHRoZSBpbnB1dCBmaWxlLlxuICovXG5cbmltcG9ydCAnLi9ibG9jay9ibG9jay5qcyc7XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvYmxvY2tzLmpzXG4vLyBtb2R1bGUgaWQgPSAwXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Iiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///0\n");
|
77 |
+
|
78 |
+
/***/ }),
|
79 |
+
/* 1 */
|
80 |
+
/*!****************************!*\
|
81 |
+
!*** ./src/block/block.js ***!
|
82 |
+
\****************************/
|
83 |
+
/*! no exports provided */
|
84 |
+
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
85 |
+
|
86 |
+
"use strict";
|
87 |
+
eval("/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__style_scss__ = __webpack_require__(/*! ./style.scss */ 2);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__style_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__style_scss__);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__editor_scss__ = __webpack_require__(/*! ./editor.scss */ 3);\n/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__editor_scss___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__editor_scss__);\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n/**\n * BLOCK: social-share-block\n *\n * Registering a basic block with Gutenberg.\n * Simple block, renders and saves the same content without any interactivity.\n */\n\n// Import CSS.\n\n\n\nvar __ = wp.i18n.__; // Import __() from wp.i18n\n\nvar _wp$blocks = wp.blocks,\n registerBlockType = _wp$blocks.registerBlockType,\n RichText = _wp$blocks.RichText,\n TextControl = _wp$blocks.TextControl,\n AlignmentToolbar = _wp$blocks.AlignmentToolbar,\n BlockControls = _wp$blocks.BlockControls,\n InspectorControls = _wp$blocks.InspectorControls; // Import registerBlockType() from wp.blocks\n\n// const {\n// TextControl\n// } = wp.components;\n\nvar el = wp.element.createElement;\n/**\n * Register: aa Gutenberg Block.\n *\n * Registers a new block provided a unique name and an object defining its\n * behavior. Once registered, the block is made editor as an option to any\n * editor interface where blocks are implemented.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/\n * @param {string} name Block name.\n * @param {Object} settings Block settings.\n * @return {?WPBlock} The block, if it has been successfully\n * registered; otherwise `undefined`.\n */\n\nvar iconEl = el('svg', { width: 20, height: 20 }, el('g', { 'transform': \"translate(0.000000,20.000000) scale(0.0062,-0.0070)\", 'fill': \"#000000\", 'stroke': \"none\" }, el('path', { d: \"M2055 2721 c-284 -83 -461 -332 -442 -624 l6 -89 -72 6 c-406 39 -818 246 -1090 548 l-66 73 -26 -60 c-101 -227 -55 -484 120 -661 l72 -74 -32 0 c-39 0 -127 26 -179 52 l-39 20 6 -74 c18 -224 178 -428 395 -504 58 -20 61 -22 35 -29 -15 -4 -72 -6 -126 -6 -98 1 -98 1 -92 -21 19 -62 77 -150 141 -214 88 -89 200 -148 317 -166 43 -7 77 -15 77 -18 0 -7 -152 -102 -205 -128 -72 -36 -216 -82 -302 -97 -46 -8 -146 -15 -221 -16 -159 -1 -160 2 10 -85 257 -131 542 -193 838 -181 209 8 392 45 572 115 l68 26 0 393 0 393 -100 0 c-93 0 -100 1 -100 20 0 11 -1 90 -1 175 0 85 1 160 1 165 0 6 40 10 100 10 l100 0 1 138 c1 144 3 170 20 241 34 147 165 265 319 288 49 8 174 9 358 5 l62 -2 0 -175 0 -175 -127 0 c-83 0 -137 -5 -153 -13 -35 -18 -46 -61 -49 -193 l-2 -114 165 0 166 0 0 -37 c0 -21 -7 -96 -15 -168 -8 -71 -15 -138 -15 -147 0 -16 -14 -18 -150 -18 l-150 0 0 -332 c1 -686 3 -637 -22 -642 -13 -3 -90 -8 -172 -12 -82 -3 -143 -10 -136 -14 6 -4 93 -8 191 -9 l179 -2 0 272 0 271 63 72 c119 134 198 250 273 397 113 225 184 512 184 745 l0 101 79 66 c64 54 226 235 217 244 -1 1 -26 -6 -55 -17 -59 -23 -176 -55 -235 -65 l-40 -7 50 39 c86 69 147 149 184 242 l19 49 -88 -43 c-69 -34 -199 -81 -276 -99 -5 -2 -37 19 -70 46 -150 122 -366 170 -540 119z\" })));\n\nregisterBlockType('ultimate-social-media-plus/sfsi-plus-share-block', {\n\t// Block name. Block names must be string that contains a namespace prefix. Example: my-plugin/my-custom-block.\n\ttitle: __('Social Icons'), // Block title.\n\ticon: iconEl, // Block icon from Dashicons → https://developer.wordpress.org/resource/dashicons/.\n\tcategory: 'common', // Block category — Group blocks together based on common traits E.g. common, formatting, layout widgets, embed.\n\tkeywords: [__('Social Icons'), __('Social share'), __('Gutenberg Share')],\n\tattributes: {\n\t\t\"jscode\": {\n\t\t\t\"default\": \"\\n\\t\\tjQuery(document).ready(function($) {\\n\\t\\t\\tjQuery.ajax({\\n\\t\\t\\t\\t'url': '/wp-json/ultimate-social-media-plus/v1/icons/?share_url='+window.location.href,\\n\\t\\t\\t\\t'method': 'GET'\\n\\t\\t\\t}).done( function(response){\\n\\t\\t\\t\\t$('.sfsi_plus_block_wrapper .sfsi_plus_block').html(response);sfsi_plus_update_iconcount();if(window.gapi){window.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();};if(window.twttr){window.twttr.widgets.load();};if(window.IN){window.IN.parse();};if(window.addthis){if(window.addthis.toolbox){window.addthis.toolbox('.addthis_button.sficn');}else{window.addthis.init();window.addthis.toolbox('.addthis_button.sficn');}};if(window.PinUtils){window.PinUtils.build();};if(jQuery('.sfsi_plus_wDiv').length > 0) {setTimeout(function() { var s = parseInt(jQuery('.sfsi_plus_wDiv').height()) + 15 + 'px';jQuery('.sfsi_plus_holders').each(function() {jQuery(this).css('height', s);});jQuery('.sfsi_plus_widget').css('min-height', 'auto');}, 200);};if(window.FB){if(window.FB.XFBML){window.FB.XFBML.parse();}};\\n\\t\\t\\t});\\n\\t\\t});\\n\\t\",\n\t\t\ttype: 'string'\n\t\t},\n\t\tshowTextBeforeShare: {\n\t\t\ttype: 'string',\n\t\t\t// source: 'text',\n\t\t\tdefault: 'yes'\n\t\t\t// meta: 'sfsi_plus_gutenberg_show_text_before_share'\n\t\t},\n\t\ttextBeforeShare: {\n\t\t\ttype: 'string',\n\t\t\t// source: 'text',\n\t\t\tdefault: 'Please Share:'\n\t\t},\n\t\ticonType: {\n\t\t\ttype: 'string',\n\t\t\t// source: 'text',\n\t\t\tdefault: 'round'\n\t\t},\n\t\ticonAlignemt: {\n\t\t\ttype: 'string',\n\t\t\t// source: 'text',\n\t\t\tdefault: 'left'\n\t\t},\n\t\tmaxPerRow: {\n\t\t\ttype: 'string',\n\t\t\t// source: 'text',\n\t\t\tdefault: '5'\n\n\t\t}\n\t},\n\t/**\n * The edit function describes the structure of your block in the context of the editor.\n * This represents what the editor will render when the block is used.\n *\n * The \"edit\" property must be a valid function.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n */\n\tedit: function edit(props) {\n\t\tfunction onAttrChange(meta, value) {\n\t\t\tprops.setAttributes(_defineProperty({}, meta, value));\n\t\t}\n\t\tvar setAttributes = props.setAttributes;\n\t\t// var focus = props.isSelected;\n\t\tvar attributes = props.attributes;\n\t\t// console.log('attributes',attributes,wp.element);\n\t\tvar showTextBeforeShare = \"yes\";\n\t\tvar textBeforeShare = \"Please Share:\";\n\t\tif (attributes.showTextBeforeShare || '' !== attributes.showTextBeforeShare) {\n\t\t\tshowTextBeforeShare = attributes.showTextBeforeShare;\n\t\t} else {\n\t\t\tonAttrChange('showTextBeforeShare', 'yes');\n\t\t}\n\t\tif (attributes.textBeforeShare || '' !== attributes.textBeforeShare) {\n\t\t\ttextBeforeShare = attributes.textBeforeShare;\n\t\t} else {\n\t\t\tonAttrChange('textBeforeShare', 'Please Share:');\n\t\t}\n\n\t\t// Creates a <p class='wp-block-cgb-block-social-share-block'></p>.\n\t\t// return renderButtons(props.attributes);\n\t\tvar target = jQuery('div[data-block=\"' + props.clientId + '\"]').find('.sfsi_plus_block_container');\n\t\t// console.log(props,target,target.length);\n\t\tif (target.length > 0) {\n\t\t\tvar buttons = target.find('.sfsi_plus_block>div');\n\t\t\tif (buttons.length === 0) {\n\t\t\t\tfetchButtons(attributes.iconType, attributes, target);\n\t\t\t}\n\t\t} else {\n\t\t\tsetTimeout(function () {\n\t\t\t\tvar target = jQuery('div[data-block=\"' + props.clientId + '\"]').find('.sfsi_plus_block_container');\n\t\t\t\tvar buttons = target.find('.sfsi_plus_block>div');\n\t\t\t\tif (buttons.length === 0) {\n\t\t\t\t\tfetchButtons(attributes.iconType, attributes, target);\n\t\t\t\t}\n\t\t\t}, 3000);\n\t\t}\n\n\t\treturn [el(wp.editor.InspectorControls, { key: 'sfsi-plus-block-inspector' }, el('div', { className: \"sfsi_plus_block_inspector\" }, el('h3', { className: 'sfsi_plus_block_icontype_header' }, __('Type')), el('select', { className: 'form-control sfsi_plus_block_icontype_selector',\n\t\t\tvalue: attributes.iconType,\n\t\t\tonChange: function onChange(event) {\n\t\t\t\tvar target = jQuery('.wp-block.is-selected').find('.sfsi_plus_block_container');\n\t\t\t\tsetAttributes({ iconType: event.target.value });\n\t\t\t\tfetchButtons(event.target.value, attributes, target);\n\t\t\t}\n\t\t}, el('option', {\n\t\t\t'value': 'round'\n\t\t}, 'Round / «main» icons'), el('option', {\n\t\t\t'value': 'rectangle'\n\t\t}, 'Rectangle icons')), (props.attributes.iconType === \"round\" || undefined === props.attributes.iconType) && el('p', { className: 'sfsi_plus_block_icontype_desc' }, __(' Those are the icons you selected under question 1 on the plugin‘s '), el('a', { 'target': '_blank', 'href': '/wp-admin/admin.php?page=sfsi-plus-options#ui-id-1' }, __(' settings page.'))), props.attributes.iconType === \"rectangle\" && el('p', { className: 'sfsi_plus_block_icontype_desc' }, __('Those are the icons you selected '), el('a', { 'target': '_blank', 'href': '/wp-admin/admin.php?page=sfsi-plus-options#ui-id-5' }, __('here.'))), el('h3', { className: 'sfsi_plus_block_icontype_header' }, __('Alignment')), el('select', { className: 'form-control sfsi_plus_block_iconalignment_selector',\n\t\t\tvalue: attributes.iconAlignemt,\n\t\t\tonChange: function onChange(event) {\n\t\t\t\tsetAttributes({ iconAlignemt: event.target.value });\n\t\t\t\tvar target = jQuery('.wp-block.is-selected .sfsi_plus_block_container');\n\t\t\t\tif ('center' === event.target.value) {\n\t\t\t\t\tjQuery(target).find('.sfsi_plus_block_text_before_icon').css({ 'display': 'inherit' });\n\t\t\t\t}\n\t\t\t\tjQuery(target).css({ 'text-align': event.target.value });\n\t\t\t}\n\t\t}, el('option', {\n\t\t\t'value': 'left'\n\t\t}, 'Left'), el('option', {\n\t\t\t'value': 'right'\n\t\t}, 'Right'), el('option', {\n\t\t\t'value': 'center'\n\t\t}, 'Center')), (props.attributes.iconType === \"round\" || undefined === props.attributes.iconType) && el('div', { className: 'sfsi_plus_block_iconperrow_body' }, el('span', { className: 'label' }, __('Max. icons per row')), el('input', {\n\t\t\ttype: 'text',\n\t\t\tvalue: attributes.maxPerRow,\n\t\t\tonChange: function onChange(event) {\n\t\t\t\t// console.log(event.target,event.target.value);\n\t\t\t\tsetAttributes({ maxPerRow: (parseInt(event.target.value) || 0) + '' });\n\t\t\t\tchangeIconWidth(event.target.value);\n\t\t\t}\n\t\t})), el('label', {\n\t\t\thtmlFor: 'sfsi-plus-text-before-icons',\n\t\t\tclassName: 'sfsi_plus_block_textbeforeicons'\n\t\t}, el('input', {\n\t\t\tclassName: \"form-control\",\n\t\t\tchecked: attributes.showTextBeforeShare == 'yes',\n\t\t\ttype: 'checkbox',\n\t\t\tonChange: function onChange(event) {\n\t\t\t\tsetAttributes({ showTextBeforeShare: event.target.checked ? 'yes' : 'no' });\n\t\t\t}\n\t\t}), 'Text before icons?'), attributes.showTextBeforeShare == 'yes' && el('input', {\n\t\t\tclassName: 'form-input sfsi_plus_block_textbeforeicons_header',\n\t\t\tvalue: attributes.textBeforeShare,\n\t\t\tstyle: {\n\t\t\t\t'padding-top': '3px'\n\t\t\t},\n\t\t\tonChange: function onChange(event) {\n\t\t\t\tsetAttributes({ textBeforeShare: event.target.value });\n\t\t\t}\n\t\t}), attributes.showTextBeforeShare === 'yes' && el('div', { className: 'form-input sfsi_plus_block_textbeforeicons_body' }, __('Define the font size & type in our '), el('a', { 'href': 'https://www.ultimatelysocial.com/usm-premium/', 'target': '_blank' }, __('Premium plugin'))), el('h3', { className: 'sfsi_plus_block_notes_heading' }, __('Notes')), el('hr'), el('ul', { className: 'sfsi_plus_block_notes_list' }, el('li', { className: 'sfsi_plus_block_notes_item' }, __('For all other selections ( What the icons should do etc.) please go to '), el('a', { 'href': (window.sfsi_plus_links ? window.sfsi_plus_links.admin_url : '/wp-admin/admin.php') + '?page=sfsi-plus-options', 'target': '_blank' }, __('settings page'))), el('li', { className: 'sfsi_plus_block_notes_item' }, __('To see the icons in ‚full action‘ (with all features) please open the page in live or preview mode.')), el('li', { className: 'sfsi_plus_block_notes_item' }, __('If questions remain, please ask them in the '), el('a', {\n\t\t\t'href': 'https://goo.gl/ktAeDv',\n\t\t\t'target': '_blank'\n\t\t}, __('support forum')), __(' – we‘ll try to respond quickly.'), el('img', { src: (window.sfsi_plus_links ? window.sfsi_plus_links.plugin_dir_url : '/wp-content/plugins/ultimate-social-media-plus') + '/images/Ic_insert_emoticon_48px.svg', style: { width: '18px', 'vertical-align': 'text-bottom' } }))), el('h3', { className: 'sfsi_plus_block_ad_heading' }, 'Want (much) more?'), el('div', { className: 'sfsi_plus_block_ad_body' }, el('div', {}, __('Check out our '), el('a', { 'href': 'https://www.ultimatelysocial.com/usm-premium/?utm_source=plus_gutenberg_page&utm_campaign=side_widget&utm_medium=link', 'target': '_blank' }, __('premium plugin‘s features')), __('. Watch a teaser: '))), el('div', { style: { 'text-align': 'center' } }, el('iframe', { src: 'https://player.vimeo.com/video/269140798', width: '640', frameborder: 0, 'webkitallowfullscreen': \"\", 'mozallowfullscreen': \"\", 'allowfullscreen': \"\" }), el('a', { href: \"https://www.ultimatelysocial.com/usm-premium/?utm_source=plus_gutenberg_page&utm_campaign=side_widget&utm_medium=link\", 'target': '_blank', style: { 'display': 'inline-block', padding: '4px 10px', 'text-decoration': 'none', 'background': '#00A15A', 'color': '#fff', 'font-size': '11px', 'font-weight': '900' } }, __('Check out the Premium Plugin >>'))), el('br'), el('span', { className: 'sfsi_plus_block_ad_footer' }, __('..only 24.98 USD (includes support and updates for 1 year, and after that it will not be deactivated, so you can just keep using it!)')))), el('div', { key: 'sfsi-plus-block-content', className: 'sfsi_plus_block_container sfsi_plus_block_wrapper' }, '\\t', showTextBeforeShare == \"yes\" && el('span', { className: 'sfsi_plus_block_text_before_icon', 'data-align': attributes.iconAlignemt }, textBeforeShare), el('div', { className: 'sfsi_plus_block', 'data-count': attributes.maxPerRow, 'data-align': attributes.iconAlignemt, 'data-icon-type': attributes.iconType }, 'loading....'))];\n\t},\n\n\t/**\n * The save function defines the way in which the different attributes should be combined\n * into the final markup, which is then serialized by Gutenberg into post_content.\n *\n * The \"save\" property must be specified and must be a valid function.\n *\n * @link https://wordpress.org/gutenberg/handbook/block-api/block-edit-save/\n */\n\tdeprecated: [{\n\t\tattributes: {\n\t\t\t\"jscode\": {\n\t\t\t\t\"default\": \"\\n\\t\\tjQuery(document).ready(function($) {\\n\\t\\t\\tjQuery.ajax({\\n\\t\\t\\t\\t'url': '/wp-json/ultimate-social-media-plus/v1/icons/?share_url='+window.location.href,\\n\\t\\t\\t\\t'method': 'GET'\\n\\t\\t\\t}).done( function(response){\\n\\t\\t\\t\\t$('.sfsi_plus_block_container .sfsi_plus_block').html(response);if(window.gapi){window.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();};if(window.twttr){window.twttr.widgets.load();};if(window.IN){window.IN.parse();};if(window.addthis){if(window.addthis.toolbox){window.addthis.toolbox('.addthis_button.sficn');}else{window.addthis.init();window.addthis.toolbox('.addthis_button.sficn');}};if(window.PinUtils){window.PinUtils.build();};if(jQuery('.sfsi_plus_wDiv').length > 0) {setTimeout(function() { var s = parseInt(jQuery('.sfsi_plus_wDiv').height()) + 15 + 'px';jQuery('.sfsi_plus_holders').each(function() {jQuery(this).css('height', s);});jQuery('.sfsi_plus_widget').css('min-height', 'auto');}, 200);};if(window.FB){if(window.FB.XFBML){window.FB.XFBML.parse();}};\\n\\t\\t\\t});\\n\\t\\t});\\n\\t\",\n\t\t\t\ttype: 'string'\n\t\t\t}\n\t\t},\n\n\t\tisEligible: function isEligible(attributes) {\n\t\t\tconsole.log(attributes);\n\t\t\treturn true;\n\t\t\t// return (attributes.jscode===\"\\n\\t\\tjQuery(document).ready(function($) {\\n\\t\\t\\tjQuery.ajax({\\n\\t\\t\\t\\t'url': '/wp-json/ultimate-social-media-plus/v1/icons/?share_url='+window.location.href,\\n\\t\\t\\t\\t'method': 'GET'\\n\\t\\t\\t}).done( function(response){\\n\\t\\t\\t\\t$('.sfsi_plus_block_container .sfsi_plus_block').html(response);if(window.gapi){window.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();};if(window.twttr){window.twttr.widgets.load();};if(window.IN){window.IN.parse();};if(window.addthis){if(window.addthis.toolbox){window.addthis.toolbox('.addthis_button.sficn');}else{window.addthis.init();window.addthis.toolbox('.addthis_button.sficn');}};if(window.PinUtils){window.PinUtils.build();};if(jQuery('.sfsi_plus_wDiv').length > 0) {setTimeout(function() { var s = parseInt(jQuery('.sfsi_plus_wDiv').height()) + 15 + 'px';jQuery('.sfsi_plus_holders').each(function() {jQuery(this).css('height', s);});jQuery('.sfsi_plus_widget').css('min-height', 'auto');}, 200);};if(window.FB){if(window.FB.XFBML){window.FB.XFBML.parse();}};\\n\\t\\t\\t});\\n\\t\\t});\\n\\t\");\n\t\t},\n\t\tmigrate: function migrate(attributes) {\n\t\t\tconsole.log('migrate', attributes);\n\t\t\treturn [{\n\t\t\t\t\"jscode\": \"\\n\\t\\tjQuery(document).ready(function($) {\\n\\t\\t\\tjQuery.ajax({\\n\\t\\t\\t\\t'url': '/wp-json/ultimate-social-media-plus/v1/icons/?share_url='+window.location.href,\\n\\t\\t\\t\\t'method': 'GET'\\n\\t\\t\\t}).done( function(response){\\n\\t\\t\\t\\t$('.sfsi_plus_block_wrapper .sfsi_plus_block').html(response);sfsi_plus_update_iconcount();if(window.gapi){window.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();};if(window.twttr){window.twttr.widgets.load();};if(window.IN){window.IN.parse();};if(window.addthis){if(window.addthis.toolbox){window.addthis.toolbox('.addthis_button.sficn');}else{window.addthis.init();window.addthis.toolbox('.addthis_button.sficn');}};if(window.PinUtils){window.PinUtils.build();};if(jQuery('.sfsi_plus_wDiv').length > 0) {setTimeout(function() { var s = parseInt(jQuery('.sfsi_plus_wDiv').height()) + 15 + 'px';jQuery('.sfsi_plus_holders').each(function() {jQuery(this).css('height', s);});jQuery('.sfsi_plus_widget').css('min-height', 'auto');}, 200);};if(window.FB){if(window.FB.XFBML){window.FB.XFBML.parse();}};\\n\\t\\t\\t});\\n\\t\\t});\\n\\t\",\n\t\t\t\tshowTextBeforeShare: 'yes',\n\t\t\t\ttextBeforeShare: 'Please Share:',\n\t\t\t\ticonType: 'round',\n\t\t\t\ticonAlignemt: 'left',\n\t\t\t\tmaxPerRow: '5'\n\t\t\t}];\n\t\t},\n\t\tsave: function save(props) {\n\t\t\tconsole.log(props);\n\t\t\tvar attributes = props.attributes;\n\t\t\treturn renderButtons(attributes);\n\t\t}\n\t}],\n\n\t// deprecated: [\n\t// \t{\n\t// \t\tattributes: {\n\t// \t\t\t\"jscode\":{\n\t// \t\t\t\t\t\t\"default\":\"\\n\\t\\tjQuery(document).ready(function($) {\\n\\t\\t\\tjQuery.ajax({\\n\\t\\t\\t\\t'url': '/wp-json/ultimate-social-media-plus/v1/icons/?share_url='+window.location.href,\\n\\t\\t\\t\\t'method': 'GET'\\n\\t\\t\\t}).done( function(response){\\n\\t\\t\\t\\t$('.sfsi_plus_block_container .sfsi_plus_block').html(response);if(window.gapi){window.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();};if(window.twttr){window.twttr.widgets.load();};if(window.IN){window.IN.parse();};if(window.addthis){if(window.addthis.toolbox){window.addthis.toolbox('.addthis_button.sficn');}else{window.addthis.init();window.addthis.toolbox('.addthis_button.sficn');}};if(window.PinUtils){window.PinUtils.build();};if(jQuery('.sfsi_plus_wDiv').length > 0) {setTimeout(function() { var s = parseInt(jQuery('.sfsi_plus_wDiv').height()) + 15 + 'px';jQuery('.sfsi_plus_holders').each(function() {jQuery(this).css('height', s);});jQuery('.sfsi_plus_widget').css('min-height', 'auto');}, 200);};if(window.FB){if(window.FB.XFBML){window.FB.XFBML.parse();}};\\n\\t\\t\\t});\\n\\t\\t});\\n\\t\",\n\t// \t\t\t\t\t\ttype: 'string'\n\t// \t\t\t}\n\t// \t\t},\n\t// \t\tsave: function( props ) {\n\t// \t\t\tvar attributes = props.attributes;\n\t// \t\t\treturn renderButtons(attributes);\n\t// \t\t}\n\t// \t\tmigrate: function(){\n\t// \t\t\treturn \n\t// \t\t}\n\t// \t}\n\t// ],\n\n\n\tsave: function save(props) {\n\t\t// console.log(props);\n\t\tvar attributes = props.attributes;\n\t\tsetTimeout(function () {\n\t\t\tchangeIconWidth(attributes.maxPerRow);\n\t\t\t// console.log('changedIconWidth');\n\t\t}, 300);\n\t\treturn renderButtons_new(attributes);\n\t}\n\n});\n\nfunction renderButtons(attributes) {\n\tvar jscode = attributes.jscode;\n\t// if(attributes.iconType===\"rectangle\"){\n\t// \tjscode=jscode.replace(/window.location.href/gi,'window.location.href+\"&ractangle_icon=1\"')\n\t// }\n\treturn el('div', { 'className': 'sfsi_plus_block_container' }, \"\\n\t\", el('div', { className: 'sfsi_plus_block' }, \"\"), \"\\n\t\", el('script', {}, jscode), \"\\n\");\n}\n\nfunction renderButtons_new(attributes) {\n\t// console.log(attributes);\n\tvar jscode = attributes.jscode;\n\tif (attributes.iconType === \"rectangle\") {\n\t\tjscode = jscode.replace(/window.location.href/gi, 'window.location.href+\"&ractangle_icon=1\"');\n\t}\n\tvar showTextBeforeShare = \"yes\";\n\tvar textBeforeShare = \"Please Share:\";\n\tif (attributes.showTextBeforeShare || '' !== attributes.showTextBeforeShare) {\n\t\tshowTextBeforeShare = attributes.showTextBeforeShare;\n\t} else {\n\t\tonAttrChange('showTextBeforeShare', 'yes');\n\t}\n\tif (attributes.textBeforeShare || '' !== attributes.textBeforeShare) {\n\t\ttextBeforeShare = attributes.textBeforeShare;\n\t} else {\n\t\tonAttrChange('textBeforeShare', 'Please Share:');\n\t}\n\treturn el('div', { 'className': 'sfsi_plus_block_wrapper' }, \"\\n\t\", showTextBeforeShare == \"yes\" && el('span', { className: 'sfsi_plus_block_text_before_icon' }, textBeforeShare), \"\\n\", el('div', { className: 'sfsi_plus_block', 'data-count': attributes.maxPerRow, 'data-align': attributes.iconAlignemt, 'data-icon-type': attributes.iconType }, \"\"), \"\\n\\t\"\n\t// el('script',{},jscode\n\t// ),\"\\n\"\n\t);\n}\nfunction changeIconWidth() {\n\tvar per_row = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\n\t// console.log('iconchangecalled');\n\t// jQuery(document).ready(function($){\n\t// console.log('iconchangecalled and doc ready');\n\tvar iconWidth = parseInt(jQuery('.sfsi_plus_block_wrapper .sfsi_plus_wDiv div').css('width')) || 40;\n\t// console.log('iconwidth',iconWidth);\n\n\tvar iconMargin = parseInt(jQuery('.sfsi_plus_block_wrapper .sfsi_plus_wDiv div').css('margin-left')) || 0;\n\t// console.log('iconMargin',iconMargin);\n\n\tvar wrapperWidth = (iconWidth + iconMargin) * per_row;\n\t// console.log('in icon change ',iconWidth,iconMargin,wrapperWidth);\n\tvar iconHeight = jQuery('.sfsi_plus_block_wrapper .sfsi_plus_wDiv img').first().height();\n\tvar textHeight = jQuery('.sfsi_plus_block_text_before_icon').height();\n\t// console.log('wrapperWidth',wrapperWidth);\n\tjQuery('.sfsi_plus_block_text_before_icon').css({ 'margin-top': (textHeight - iconHeight) / 2 - 2 + 'px' });\n\tif (jQuery('.sfsi_plus_block_wrapper .sfsiplus_norm_row').length < 1) {\n\t\t// console.log('setTimeout',jQuery('.sfsi_plus_block_wrapper .sfsiplus_norm_row'));\n\t\tsetTimeout(function () {\n\t\t\tjQuery('.sfsi_plus_block_wrapper .sfsiplus_norm_row').css({ 'width': wrapperWidth + 'px' });\n\t\t}, 1000);\n\t} else {}\n\t// console.log('didnot setTimeout',jQuery('.sfsi_plus_block_wrapper .sfsiplus_norm_row'));\n\n\t// var target=jQuery('.sfsi_plus_block_container');\n\t// console.log(target,icon_alignment);\n\tjQuery('.sfsi_plus_block_wrapper .sfsiplus_norm_row').css({ 'width': wrapperWidth + 'px' });\n\tsetIconBlockAlignment();\n\n\t// })\n}\n\nfunction setIconBlockAlignment() {\n\tvar target = jQuery('.wp-block.is-selected .sfsi_plus_block_container');\n\tvar icon_alignment = target.find('.sfsi_plus_block').attr('data-align');\n\tif ('center' === icon_alignment) {\n\t\tjQuery(target).find('.sfsi_plus_block_text_before_icon').css({ 'display': 'inherit' });\n\t}\n\tjQuery(target).css({ 'text-align': icon_alignment });\n}\n\nfunction fetchButtons() {\n\tvar iconType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\tvar attributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\tvar target = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n\n\tif (null === iconType || undefined === iconType) {\n\t\ticonType = \"round\";\n\t}\n\t// console.log(iconType);\n\t// return jQuery(document).ready(function($){\n\t// console.log(iconType);\n\tif (null == target) {\n\t\ttarget = $(document);\n\t}\n\t// console.log(target);\n\treturn jQuery.ajax({\n\t\t'url': '/wp-json/ultimate-social-media-plus/v1/icons/?admin_refereal=true&ractangle_icon=' + ('round' == iconType ? 0 : 1),\n\t\t'method': 'GET'\n\t\t// 'data':{'is_admin':true,'share_url':'/'}\n\t}).done(function (response) {\n\t\t// console.log(response,$('.sfsi_plus_block'));\n\n\t\tif (jQuery(target).find('.sfsi_plus_block').length > 0) {\n\t\t\tjQuery(target).find('.sfsi_plus_block').html(response);\n\t\t\tchangeIconWidth(attributes.maxPerRow);\n\t\t\tif (iconType !== 'round') {\n\t\t\t\trenderAutoSocialIcons();\n\t\t\t}\n\t\t\t// console.log('updated');\n\t\t} else {\n\t\t\tsetTimeout(function () {\n\t\t\t\tjQuery('.sfsi_plus_block').html(response);\n\t\t\t\tchangeIconWidth(attributes.maxPerRow);\n\n\t\t\t\tconsole.log('now updated');\n\t\t\t}, 5000);\n\t\t\tconsole.log('timeset');\n\t\t}\n\t}).fail(function (response) {\n\t\t// console.log(response,$('.sfsi_plus_block'));\n\t\tjQuery(target).find('.sfsi_plus_block').html(response.responseText.replace('/\\\\/g', ''));\n\t});\n\t// });\n}\nfunction renderAutoSocialIcons() {\n\tif (window.gapi) {\n\t\twindow.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();\n\t};\n\tif (window.twttr) {\n\t\twindow.twttr.widgets.load();\n\t};\n\tif (window.IN && window.IN.parse) {\n\t\twindow.IN.parse();\n\t};\n\tif (window.addthis) {\n\t\tif (window.addthis.toolbox) {\n\t\t\twindow.addthis.toolbox('.addthis_button.sficn');\n\t\t} else {\n\t\t\twindow.addthis.init();window.addthis.toolbox('.addthis_button.sficn');\n\t\t}\n\t};\n\tif (window.PinUtils) {\n\t\twindow.PinUtils.build();\n\t};\n\tif (window.FB) {\n\t\tif (window.FB.XFBML) {\n\t\t\twindow.FB.XFBML.parse();\n\t\t}\n\t};\n}\nif (undefined === sfsi_plus_float_widget) {\n\tvar _sfsi_plus_float_widget = function _sfsi_plus_float_widget() {\n\t\treturn;\n\t};\n}//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMS5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9ibG9jay9ibG9jay5qcz85MjFkIl0sInNvdXJjZXNDb250ZW50IjpbImZ1bmN0aW9uIF9kZWZpbmVQcm9wZXJ0eShvYmosIGtleSwgdmFsdWUpIHsgaWYgKGtleSBpbiBvYmopIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KG9iaiwga2V5LCB7IHZhbHVlOiB2YWx1ZSwgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSB9KTsgfSBlbHNlIHsgb2JqW2tleV0gPSB2YWx1ZTsgfSByZXR1cm4gb2JqOyB9XG5cbi8qKlxuICogQkxPQ0s6IHNvY2lhbC1zaGFyZS1ibG9ja1xuICpcbiAqIFJlZ2lzdGVyaW5nIGEgYmFzaWMgYmxvY2sgd2l0aCBHdXRlbmJlcmcuXG4gKiBTaW1wbGUgYmxvY2ssIHJlbmRlcnMgYW5kIHNhdmVzIHRoZSBzYW1lIGNvbnRlbnQgd2l0aG91dCBhbnkgaW50ZXJhY3Rpdml0eS5cbiAqL1xuXG4vLyAgSW1wb3J0IENTUy5cbmltcG9ydCAnLi9zdHlsZS5zY3NzJztcbmltcG9ydCAnLi9lZGl0b3Iuc2Nzcyc7XG5cbnZhciBfXyA9IHdwLmkxOG4uX187IC8vIEltcG9ydCBfXygpIGZyb20gd3AuaTE4blxuXG52YXIgX3dwJGJsb2NrcyA9IHdwLmJsb2NrcyxcbiAgICByZWdpc3RlckJsb2NrVHlwZSA9IF93cCRibG9ja3MucmVnaXN0ZXJCbG9ja1R5cGUsXG4gICAgUmljaFRleHQgPSBfd3AkYmxvY2tzLlJpY2hUZXh0LFxuICAgIFRleHRDb250cm9sID0gX3dwJGJsb2Nrcy5UZXh0Q29udHJvbCxcbiAgICBBbGlnbm1lbnRUb29sYmFyID0gX3dwJGJsb2Nrcy5BbGlnbm1lbnRUb29sYmFyLFxuICAgIEJsb2NrQ29udHJvbHMgPSBfd3AkYmxvY2tzLkJsb2NrQ29udHJvbHMsXG4gICAgSW5zcGVjdG9yQ29udHJvbHMgPSBfd3AkYmxvY2tzLkluc3BlY3RvckNvbnRyb2xzOyAvLyBJbXBvcnQgcmVnaXN0ZXJCbG9ja1R5cGUoKSBmcm9tIHdwLmJsb2Nrc1xuXG4vLyBjb25zdCB7XG4vLyAgICAgVGV4dENvbnRyb2xcbi8vIH0gPSB3cC5jb21wb25lbnRzO1xuXG52YXIgZWwgPSB3cC5lbGVtZW50LmNyZWF0ZUVsZW1lbnQ7XG4vKipcbiAqIFJlZ2lzdGVyOiBhYSBHdXRlbmJlcmcgQmxvY2suXG4gKlxuICogUmVnaXN0ZXJzIGEgbmV3IGJsb2NrIHByb3ZpZGVkIGEgdW5pcXVlIG5hbWUgYW5kIGFuIG9iamVjdCBkZWZpbmluZyBpdHNcbiAqIGJlaGF2aW9yLiBPbmNlIHJlZ2lzdGVyZWQsIHRoZSBibG9jayBpcyBtYWRlIGVkaXRvciBhcyBhbiBvcHRpb24gdG8gYW55XG4gKiBlZGl0b3IgaW50ZXJmYWNlIHdoZXJlIGJsb2NrcyBhcmUgaW1wbGVtZW50ZWQuXG4gKlxuICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAgbmFtZSAgICAgQmxvY2sgbmFtZS5cbiAqIEBwYXJhbSAge09iamVjdH0gICBzZXR0aW5ncyBCbG9jayBzZXR0aW5ncy5cbiAqIEByZXR1cm4gez9XUEJsb2NrfSAgICAgICAgICBUaGUgYmxvY2ssIGlmIGl0IGhhcyBiZWVuIHN1Y2Nlc3NmdWxseVxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZ2lzdGVyZWQ7IG90aGVyd2lzZSBgdW5kZWZpbmVkYC5cbiAqL1xuXG52YXIgaWNvbkVsID0gZWwoJ3N2ZycsIHsgd2lkdGg6IDIwLCBoZWlnaHQ6IDIwIH0sIGVsKCdnJywgeyAndHJhbnNmb3JtJzogXCJ0cmFuc2xhdGUoMC4wMDAwMDAsMjAuMDAwMDAwKSBzY2FsZSgwLjAwNjIsLTAuMDA3MClcIiwgJ2ZpbGwnOiBcIiMwMDAwMDBcIiwgJ3N0cm9rZSc6IFwibm9uZVwiIH0sIGVsKCdwYXRoJywgeyBkOiBcIk0yMDU1IDI3MjEgYy0yODQgLTgzIC00NjEgLTMzMiAtNDQyIC02MjQgbDYgLTg5IC03MiA2IGMtNDA2IDM5IC04MTggMjQ2IC0xMDkwIDU0OCBsLTY2IDczIC0yNiAtNjAgYy0xMDEgLTIyNyAtNTUgLTQ4NCAxMjAgLTY2MSBsNzIgLTc0IC0zMiAwIGMtMzkgMCAtMTI3IDI2IC0xNzkgNTIgbC0zOSAyMCA2IC03NCBjMTggLTIyNCAxNzggLTQyOCAzOTUgLTUwNCA1OCAtMjAgNjEgLTIyIDM1IC0yOSAtMTUgLTQgLTcyIC02IC0xMjYgLTYgLTk4IDEgLTk4IDEgLTkyIC0yMSAxOSAtNjIgNzcgLTE1MCAxNDEgLTIxNCA4OCAtODkgMjAwIC0xNDggMzE3IC0xNjYgNDMgLTcgNzcgLTE1IDc3IC0xOCAwIC03IC0xNTIgLTEwMiAtMjA1IC0xMjggLTcyIC0zNiAtMjE2IC04MiAtMzAyIC05NyAtNDYgLTggLTE0NiAtMTUgLTIyMSAtMTYgLTE1OSAtMSAtMTYwIDIgMTAgLTg1IDI1NyAtMTMxIDU0MiAtMTkzIDgzOCAtMTgxIDIwOSA4IDM5MiA0NSA1NzIgMTE1IGw2OCAyNiAwIDM5MyAwIDM5MyAtMTAwIDAgYy05MyAwIC0xMDAgMSAtMTAwIDIwIDAgMTEgLTEgOTAgLTEgMTc1IDAgODUgMSAxNjAgMSAxNjUgMCA2IDQwIDEwIDEwMCAxMCBsMTAwIDAgMSAxMzggYzEgMTQ0IDMgMTcwIDIwIDI0MSAzNCAxNDcgMTY1IDI2NSAzMTkgMjg4IDQ5IDggMTc0IDkgMzU4IDUgbDYyIC0yIDAgLTE3NSAwIC0xNzUgLTEyNyAwIGMtODMgMCAtMTM3IC01IC0xNTMgLTEzIC0zNSAtMTggLTQ2IC02MSAtNDkgLTE5MyBsLTIgLTExNCAxNjUgMCAxNjYgMCAwIC0zNyBjMCAtMjEgLTcgLTk2IC0xNSAtMTY4IC04IC03MSAtMTUgLTEzOCAtMTUgLTE0NyAwIC0xNiAtMTQgLTE4IC0xNTAgLTE4IGwtMTUwIDAgMCAtMzMyIGMxIC02ODYgMyAtNjM3IC0yMiAtNjQyIC0xMyAtMyAtOTAgLTggLTE3MiAtMTIgLTgyIC0zIC0xNDMgLTEwIC0xMzYgLTE0IDYgLTQgOTMgLTggMTkxIC05IGwxNzkgLTIgMCAyNzIgMCAyNzEgNjMgNzIgYzExOSAxMzQgMTk4IDI1MCAyNzMgMzk3IDExMyAyMjUgMTg0IDUxMiAxODQgNzQ1IGwwIDEwMSA3OSA2NiBjNjQgNTQgMjI2IDIzNSAyMTcgMjQ0IC0xIDEgLTI2IC02IC01NSAtMTcgLTU5IC0yMyAtMTc2IC01NSAtMjM1IC02NSBsLTQwIC03IDUwIDM5IGM4NiA2OSAxNDcgMTQ5IDE4NCAyNDIgbDE5IDQ5IC04OCAtNDMgYy02OSAtMzQgLTE5OSAtODEgLTI3NiAtOTkgLTUgLTIgLTM3IDE5IC03MCA0NiAtMTUwIDEyMiAtMzY2IDE3MCAtNTQwIDExOXpcIiB9KSkpO1xuXG5yZWdpc3RlckJsb2NrVHlwZSgndWx0aW1hdGUtc29jaWFsLW1lZGlhLXBsdXMvc2ZzaS1wbHVzLXNoYXJlLWJsb2NrJywge1xuXHQvLyBCbG9jayBuYW1lLiBCbG9jayBuYW1lcyBtdXN0IGJlIHN0cmluZyB0aGF0IGNvbnRhaW5zIGEgbmFtZXNwYWNlIHByZWZpeC4gRXhhbXBsZTogbXktcGx1Z2luL215LWN1c3RvbS1ibG9jay5cblx0dGl0bGU6IF9fKCdTb2NpYWwgSWNvbnMnKSwgLy8gQmxvY2sgdGl0bGUuXG5cdGljb246IGljb25FbCwgLy8gQmxvY2sgaWNvbiBmcm9tIERhc2hpY29ucyDihpIgaHR0cHM6Ly9kZXZlbG9wZXIud29yZHByZXNzLm9yZy9yZXNvdXJjZS9kYXNoaWNvbnMvLlxuXHRjYXRlZ29yeTogJ2NvbW1vbicsIC8vIEJsb2NrIGNhdGVnb3J5IOKAlCBHcm91cCBibG9ja3MgdG9nZXRoZXIgYmFzZWQgb24gY29tbW9uIHRyYWl0cyBFLmcuIGNvbW1vbiwgZm9ybWF0dGluZywgbGF5b3V0IHdpZGdldHMsIGVtYmVkLlxuXHRrZXl3b3JkczogW19fKCdTb2NpYWwgSWNvbnMnKSwgX18oJ1NvY2lhbCBzaGFyZScpLCBfXygnR3V0ZW5iZXJnIFNoYXJlJyldLFxuXHRhdHRyaWJ1dGVzOiB7XG5cdFx0XCJqc2NvZGVcIjoge1xuXHRcdFx0XCJkZWZhdWx0XCI6IFwiXFxuXFx0XFx0alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigkKSB7XFxuXFx0XFx0XFx0alF1ZXJ5LmFqYXgoe1xcblxcdFxcdFxcdFxcdCd1cmwnOiAnL3dwLWpzb24vdWx0aW1hdGUtc29jaWFsLW1lZGlhLXBsdXMvdjEvaWNvbnMvP3NoYXJlX3VybD0nK3dpbmRvdy5sb2NhdGlvbi5ocmVmLFxcblxcdFxcdFxcdFxcdCdtZXRob2QnOiAnR0VUJ1xcblxcdFxcdFxcdH0pLmRvbmUoIGZ1bmN0aW9uKHJlc3BvbnNlKXtcXG5cXHRcXHRcXHRcXHQkKCcuc2ZzaV9wbHVzX2Jsb2NrX3dyYXBwZXIgLnNmc2lfcGx1c19ibG9jaycpLmh0bWwocmVzcG9uc2UpO3Nmc2lfcGx1c191cGRhdGVfaWNvbmNvdW50KCk7aWYod2luZG93LmdhcGkpe3dpbmRvdy5nYXBpLnBsdXNvbmUuZ28oKTt3aW5kb3cuZ2FwaS5wbHVzLmdvKCk7d2luZG93LmdhcGkueXRzdWJzY3JpYmUuZ28oKTt9O2lmKHdpbmRvdy50d3R0cil7d2luZG93LnR3dHRyLndpZGdldHMubG9hZCgpO307aWYod2luZG93LklOKXt3aW5kb3cuSU4ucGFyc2UoKTt9O2lmKHdpbmRvdy5hZGR0aGlzKXtpZih3aW5kb3cuYWRkdGhpcy50b29sYm94KXt3aW5kb3cuYWRkdGhpcy50b29sYm94KCcuYWRkdGhpc19idXR0b24uc2ZpY24nKTt9ZWxzZXt3aW5kb3cuYWRkdGhpcy5pbml0KCk7d2luZG93LmFkZHRoaXMudG9vbGJveCgnLmFkZHRoaXNfYnV0dG9uLnNmaWNuJyk7fX07aWYod2luZG93LlBpblV0aWxzKXt3aW5kb3cuUGluVXRpbHMuYnVpbGQoKTt9O2lmKGpRdWVyeSgnLnNmc2lfcGx1c193RGl2JykubGVuZ3RoID4gMCkge3NldFRpbWVvdXQoZnVuY3Rpb24oKSB7IHZhciBzID0gcGFyc2VJbnQoalF1ZXJ5KCcuc2ZzaV9wbHVzX3dEaXYnKS5oZWlnaHQoKSkgKyAxNSArICdweCc7alF1ZXJ5KCcuc2ZzaV9wbHVzX2hvbGRlcnMnKS5lYWNoKGZ1bmN0aW9uKCkge2pRdWVyeSh0aGlzKS5jc3MoJ2hlaWdodCcsIHMpO30pO2pRdWVyeSgnLnNmc2lfcGx1c193aWRnZXQnKS5jc3MoJ21pbi1oZWlnaHQnLCAnYXV0bycpO30sIDIwMCk7fTtpZih3aW5kb3cuRkIpe2lmKHdpbmRvdy5GQi5YRkJNTCl7d2luZG93LkZCLlhGQk1MLnBhcnNlKCk7fX07XFxuXFx0XFx0XFx0fSk7XFxuXFx0XFx0fSk7XFxuXFx0XCIsXG5cdFx0XHR0eXBlOiAnc3RyaW5nJ1xuXHRcdH0sXG5cdFx0c2hvd1RleHRCZWZvcmVTaGFyZToge1xuXHRcdFx0dHlwZTogJ3N0cmluZycsXG5cdFx0XHQvLyBzb3VyY2U6ICd0ZXh0Jyxcblx0XHRcdGRlZmF1bHQ6ICd5ZXMnXG5cdFx0XHQvLyBtZXRhOiAnc2ZzaV9wbHVzX2d1dGVuYmVyZ19zaG93X3RleHRfYmVmb3JlX3NoYXJlJ1xuXHRcdH0sXG5cdFx0dGV4dEJlZm9yZVNoYXJlOiB7XG5cdFx0XHR0eXBlOiAnc3RyaW5nJyxcblx0XHRcdC8vIHNvdXJjZTogJ3RleHQnLFxuXHRcdFx0ZGVmYXVsdDogJ1BsZWFzZSBTaGFyZTonXG5cdFx0fSxcblx0XHRpY29uVHlwZToge1xuXHRcdFx0dHlwZTogJ3N0cmluZycsXG5cdFx0XHQvLyBzb3VyY2U6ICd0ZXh0Jyxcblx0XHRcdGRlZmF1bHQ6ICdyb3VuZCdcblx0XHR9LFxuXHRcdGljb25BbGlnbmVtdDoge1xuXHRcdFx0dHlwZTogJ3N0cmluZycsXG5cdFx0XHQvLyBzb3VyY2U6ICd0ZXh0Jyxcblx0XHRcdGRlZmF1bHQ6ICdsZWZ0J1xuXHRcdH0sXG5cdFx0bWF4UGVyUm93OiB7XG5cdFx0XHR0eXBlOiAnc3RyaW5nJyxcblx0XHRcdC8vIHNvdXJjZTogJ3RleHQnLFxuXHRcdFx0ZGVmYXVsdDogJzUnXG5cblx0XHR9XG5cdH0sXG5cdC8qKlxuICAqIFRoZSBlZGl0IGZ1bmN0aW9uIGRlc2NyaWJlcyB0aGUgc3RydWN0dXJlIG9mIHlvdXIgYmxvY2sgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGVkaXRvci5cbiAgKiBUaGlzIHJlcHJlc2VudHMgd2hhdCB0aGUgZWRpdG9yIHdpbGwgcmVuZGVyIHdoZW4gdGhlIGJsb2NrIGlzIHVzZWQuXG4gICpcbiAgKiBUaGUgXCJlZGl0XCIgcHJvcGVydHkgbXVzdCBiZSBhIHZhbGlkIGZ1bmN0aW9uLlxuICAqXG4gICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvYmxvY2stZWRpdC1zYXZlL1xuICAqL1xuXHRlZGl0OiBmdW5jdGlvbiBlZGl0KHByb3BzKSB7XG5cdFx0ZnVuY3Rpb24gb25BdHRyQ2hhbmdlKG1ldGEsIHZhbHVlKSB7XG5cdFx0XHRwcm9wcy5zZXRBdHRyaWJ1dGVzKF9kZWZpbmVQcm9wZXJ0eSh7fSwgbWV0YSwgdmFsdWUpKTtcblx0XHR9XG5cdFx0dmFyIHNldEF0dHJpYnV0ZXMgPSBwcm9wcy5zZXRBdHRyaWJ1dGVzO1xuXHRcdC8vIHZhciBmb2N1cyA9IHByb3BzLmlzU2VsZWN0ZWQ7XG5cdFx0dmFyIGF0dHJpYnV0ZXMgPSBwcm9wcy5hdHRyaWJ1dGVzO1xuXHRcdC8vIGNvbnNvbGUubG9nKCdhdHRyaWJ1dGVzJyxhdHRyaWJ1dGVzLHdwLmVsZW1lbnQpO1xuXHRcdHZhciBzaG93VGV4dEJlZm9yZVNoYXJlID0gXCJ5ZXNcIjtcblx0XHR2YXIgdGV4dEJlZm9yZVNoYXJlID0gXCJQbGVhc2UgU2hhcmU6XCI7XG5cdFx0aWYgKGF0dHJpYnV0ZXMuc2hvd1RleHRCZWZvcmVTaGFyZSB8fCAnJyAhPT0gYXR0cmlidXRlcy5zaG93VGV4dEJlZm9yZVNoYXJlKSB7XG5cdFx0XHRzaG93VGV4dEJlZm9yZVNoYXJlID0gYXR0cmlidXRlcy5zaG93VGV4dEJlZm9yZVNoYXJlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRvbkF0dHJDaGFuZ2UoJ3Nob3dUZXh0QmVmb3JlU2hhcmUnLCAneWVzJyk7XG5cdFx0fVxuXHRcdGlmIChhdHRyaWJ1dGVzLnRleHRCZWZvcmVTaGFyZSB8fCAnJyAhPT0gYXR0cmlidXRlcy50ZXh0QmVmb3JlU2hhcmUpIHtcblx0XHRcdHRleHRCZWZvcmVTaGFyZSA9IGF0dHJpYnV0ZXMudGV4dEJlZm9yZVNoYXJlO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRvbkF0dHJDaGFuZ2UoJ3RleHRCZWZvcmVTaGFyZScsICdQbGVhc2UgU2hhcmU6Jyk7XG5cdFx0fVxuXG5cdFx0Ly8gQ3JlYXRlcyBhIDxwIGNsYXNzPSd3cC1ibG9jay1jZ2ItYmxvY2stc29jaWFsLXNoYXJlLWJsb2NrJz48L3A+LlxuXHRcdC8vIHJldHVybiByZW5kZXJCdXR0b25zKHByb3BzLmF0dHJpYnV0ZXMpO1xuXHRcdHZhciB0YXJnZXQgPSBqUXVlcnkoJ2RpdltkYXRhLWJsb2NrPVwiJyArIHByb3BzLmNsaWVudElkICsgJ1wiXScpLmZpbmQoJy5zZnNpX3BsdXNfYmxvY2tfY29udGFpbmVyJyk7XG5cdFx0Ly8gY29uc29sZS5sb2cocHJvcHMsdGFyZ2V0LHRhcmdldC5sZW5ndGgpO1xuXHRcdGlmICh0YXJnZXQubGVuZ3RoID4gMCkge1xuXHRcdFx0dmFyIGJ1dHRvbnMgPSB0YXJnZXQuZmluZCgnLnNmc2lfcGx1c19ibG9jaz5kaXYnKTtcblx0XHRcdGlmIChidXR0b25zLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0XHRmZXRjaEJ1dHRvbnMoYXR0cmlidXRlcy5pY29uVHlwZSwgYXR0cmlidXRlcywgdGFyZ2V0KTtcblx0XHRcdH1cblx0XHR9IGVsc2Uge1xuXHRcdFx0c2V0VGltZW91dChmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdHZhciB0YXJnZXQgPSBqUXVlcnkoJ2RpdltkYXRhLWJsb2NrPVwiJyArIHByb3BzLmNsaWVudElkICsgJ1wiXScpLmZpbmQoJy5zZnNpX3BsdXNfYmxvY2tfY29udGFpbmVyJyk7XG5cdFx0XHRcdHZhciBidXR0b25zID0gdGFyZ2V0LmZpbmQoJy5zZnNpX3BsdXNfYmxvY2s+ZGl2Jyk7XG5cdFx0XHRcdGlmIChidXR0b25zLmxlbmd0aCA9PT0gMCkge1xuXHRcdFx0XHRcdGZldGNoQnV0dG9ucyhhdHRyaWJ1dGVzLmljb25UeXBlLCBhdHRyaWJ1dGVzLCB0YXJnZXQpO1xuXHRcdFx0XHR9XG5cdFx0XHR9LCAzMDAwKTtcblx0XHR9XG5cblx0XHRyZXR1cm4gW2VsKHdwLmVkaXRvci5JbnNwZWN0b3JDb250cm9scywgeyBrZXk6ICdzZnNpLXBsdXMtYmxvY2staW5zcGVjdG9yJyB9LCBlbCgnZGl2JywgeyBjbGFzc05hbWU6IFwic2ZzaV9wbHVzX2Jsb2NrX2luc3BlY3RvclwiIH0sIGVsKCdoMycsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX2ljb250eXBlX2hlYWRlcicgfSwgX18oJ1R5cGUnKSksIGVsKCdzZWxlY3QnLCB7IGNsYXNzTmFtZTogJ2Zvcm0tY29udHJvbCBzZnNpX3BsdXNfYmxvY2tfaWNvbnR5cGVfc2VsZWN0b3InLFxuXHRcdFx0dmFsdWU6IGF0dHJpYnV0ZXMuaWNvblR5cGUsXG5cdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UoZXZlbnQpIHtcblx0XHRcdFx0dmFyIHRhcmdldCA9IGpRdWVyeSgnLndwLWJsb2NrLmlzLXNlbGVjdGVkJykuZmluZCgnLnNmc2lfcGx1c19ibG9ja19jb250YWluZXInKTtcblx0XHRcdFx0c2V0QXR0cmlidXRlcyh7IGljb25UeXBlOiBldmVudC50YXJnZXQudmFsdWUgfSk7XG5cdFx0XHRcdGZldGNoQnV0dG9ucyhldmVudC50YXJnZXQudmFsdWUsIGF0dHJpYnV0ZXMsIHRhcmdldCk7XG5cdFx0XHR9XG5cdFx0fSwgZWwoJ29wdGlvbicsIHtcblx0XHRcdCd2YWx1ZSc6ICdyb3VuZCdcblx0XHR9LCAnUm91bmQgLyDCq21haW7CuyBpY29ucycpLCBlbCgnb3B0aW9uJywge1xuXHRcdFx0J3ZhbHVlJzogJ3JlY3RhbmdsZSdcblx0XHR9LCAnUmVjdGFuZ2xlIGljb25zJykpLCAocHJvcHMuYXR0cmlidXRlcy5pY29uVHlwZSA9PT0gXCJyb3VuZFwiIHx8IHVuZGVmaW5lZCA9PT0gcHJvcHMuYXR0cmlidXRlcy5pY29uVHlwZSkgJiYgZWwoJ3AnLCB7IGNsYXNzTmFtZTogJ3Nmc2lfcGx1c19ibG9ja19pY29udHlwZV9kZXNjJyB9LCBfXygnIFRob3NlIGFyZSB0aGUgaWNvbnMgeW91IHNlbGVjdGVkIHVuZGVyIHF1ZXN0aW9uIDEgb24gdGhlIHBsdWdpbuKAmHMgJyksIGVsKCdhJywgeyAndGFyZ2V0JzogJ19ibGFuaycsICdocmVmJzogJy93cC1hZG1pbi9hZG1pbi5waHA/cGFnZT1zZnNpLXBsdXMtb3B0aW9ucyN1aS1pZC0xJyB9LCBfXygnIHNldHRpbmdzIHBhZ2UuJykpKSwgcHJvcHMuYXR0cmlidXRlcy5pY29uVHlwZSA9PT0gXCJyZWN0YW5nbGVcIiAmJiBlbCgncCcsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX2ljb250eXBlX2Rlc2MnIH0sIF9fKCdUaG9zZSBhcmUgdGhlIGljb25zIHlvdSBzZWxlY3RlZCAnKSwgZWwoJ2EnLCB7ICd0YXJnZXQnOiAnX2JsYW5rJywgJ2hyZWYnOiAnL3dwLWFkbWluL2FkbWluLnBocD9wYWdlPXNmc2ktcGx1cy1vcHRpb25zI3VpLWlkLTUnIH0sIF9fKCdoZXJlLicpKSksIGVsKCdoMycsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX2ljb250eXBlX2hlYWRlcicgfSwgX18oJ0FsaWdubWVudCcpKSwgZWwoJ3NlbGVjdCcsIHsgY2xhc3NOYW1lOiAnZm9ybS1jb250cm9sIHNmc2lfcGx1c19ibG9ja19pY29uYWxpZ25tZW50X3NlbGVjdG9yJyxcblx0XHRcdHZhbHVlOiBhdHRyaWJ1dGVzLmljb25BbGlnbmVtdCxcblx0XHRcdG9uQ2hhbmdlOiBmdW5jdGlvbiBvbkNoYW5nZShldmVudCkge1xuXHRcdFx0XHRzZXRBdHRyaWJ1dGVzKHsgaWNvbkFsaWduZW10OiBldmVudC50YXJnZXQudmFsdWUgfSk7XG5cdFx0XHRcdHZhciB0YXJnZXQgPSBqUXVlcnkoJy53cC1ibG9jay5pcy1zZWxlY3RlZCAuc2ZzaV9wbHVzX2Jsb2NrX2NvbnRhaW5lcicpO1xuXHRcdFx0XHRpZiAoJ2NlbnRlcicgPT09IGV2ZW50LnRhcmdldC52YWx1ZSkge1xuXHRcdFx0XHRcdGpRdWVyeSh0YXJnZXQpLmZpbmQoJy5zZnNpX3BsdXNfYmxvY2tfdGV4dF9iZWZvcmVfaWNvbicpLmNzcyh7ICdkaXNwbGF5JzogJ2luaGVyaXQnIH0pO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGpRdWVyeSh0YXJnZXQpLmNzcyh7ICd0ZXh0LWFsaWduJzogZXZlbnQudGFyZ2V0LnZhbHVlIH0pO1xuXHRcdFx0fVxuXHRcdH0sIGVsKCdvcHRpb24nLCB7XG5cdFx0XHQndmFsdWUnOiAnbGVmdCdcblx0XHR9LCAnTGVmdCcpLCBlbCgnb3B0aW9uJywge1xuXHRcdFx0J3ZhbHVlJzogJ3JpZ2h0J1xuXHRcdH0sICdSaWdodCcpLCBlbCgnb3B0aW9uJywge1xuXHRcdFx0J3ZhbHVlJzogJ2NlbnRlcidcblx0XHR9LCAnQ2VudGVyJykpLCAocHJvcHMuYXR0cmlidXRlcy5pY29uVHlwZSA9PT0gXCJyb3VuZFwiIHx8IHVuZGVmaW5lZCA9PT0gcHJvcHMuYXR0cmlidXRlcy5pY29uVHlwZSkgJiYgZWwoJ2RpdicsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX2ljb25wZXJyb3dfYm9keScgfSwgZWwoJ3NwYW4nLCB7IGNsYXNzTmFtZTogJ2xhYmVsJyB9LCBfXygnTWF4LiBpY29ucyBwZXIgcm93JykpLCBlbCgnaW5wdXQnLCB7XG5cdFx0XHR0eXBlOiAndGV4dCcsXG5cdFx0XHR2YWx1ZTogYXR0cmlidXRlcy5tYXhQZXJSb3csXG5cdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UoZXZlbnQpIHtcblx0XHRcdFx0Ly8gY29uc29sZS5sb2coZXZlbnQudGFyZ2V0LGV2ZW50LnRhcmdldC52YWx1ZSk7XG5cdFx0XHRcdHNldEF0dHJpYnV0ZXMoeyBtYXhQZXJSb3c6IChwYXJzZUludChldmVudC50YXJnZXQudmFsdWUpIHx8IDApICsgJycgfSk7XG5cdFx0XHRcdGNoYW5nZUljb25XaWR0aChldmVudC50YXJnZXQudmFsdWUpO1xuXHRcdFx0fVxuXHRcdH0pKSwgZWwoJ2xhYmVsJywge1xuXHRcdFx0aHRtbEZvcjogJ3Nmc2ktcGx1cy10ZXh0LWJlZm9yZS1pY29ucycsXG5cdFx0XHRjbGFzc05hbWU6ICdzZnNpX3BsdXNfYmxvY2tfdGV4dGJlZm9yZWljb25zJ1xuXHRcdH0sIGVsKCdpbnB1dCcsIHtcblx0XHRcdGNsYXNzTmFtZTogXCJmb3JtLWNvbnRyb2xcIixcblx0XHRcdGNoZWNrZWQ6IGF0dHJpYnV0ZXMuc2hvd1RleHRCZWZvcmVTaGFyZSA9PSAneWVzJyxcblx0XHRcdHR5cGU6ICdjaGVja2JveCcsXG5cdFx0XHRvbkNoYW5nZTogZnVuY3Rpb24gb25DaGFuZ2UoZXZlbnQpIHtcblx0XHRcdFx0c2V0QXR0cmlidXRlcyh7IHNob3dUZXh0QmVmb3JlU2hhcmU6IGV2ZW50LnRhcmdldC5jaGVja2VkID8gJ3llcycgOiAnbm8nIH0pO1xuXHRcdFx0fVxuXHRcdH0pLCAnVGV4dCBiZWZvcmUgaWNvbnM/JyksIGF0dHJpYnV0ZXMuc2hvd1RleHRCZWZvcmVTaGFyZSA9PSAneWVzJyAmJiBlbCgnaW5wdXQnLCB7XG5cdFx0XHRjbGFzc05hbWU6ICdmb3JtLWlucHV0IHNmc2lfcGx1c19ibG9ja190ZXh0YmVmb3JlaWNvbnNfaGVhZGVyJyxcblx0XHRcdHZhbHVlOiBhdHRyaWJ1dGVzLnRleHRCZWZvcmVTaGFyZSxcblx0XHRcdHN0eWxlOiB7XG5cdFx0XHRcdCdwYWRkaW5nLXRvcCc6ICczcHgnXG5cdFx0XHR9LFxuXHRcdFx0b25DaGFuZ2U6IGZ1bmN0aW9uIG9uQ2hhbmdlKGV2ZW50KSB7XG5cdFx0XHRcdHNldEF0dHJpYnV0ZXMoeyB0ZXh0QmVmb3JlU2hhcmU6IGV2ZW50LnRhcmdldC52YWx1ZSB9KTtcblx0XHRcdH1cblx0XHR9KSwgYXR0cmlidXRlcy5zaG93VGV4dEJlZm9yZVNoYXJlID09PSAneWVzJyAmJiBlbCgnZGl2JywgeyBjbGFzc05hbWU6ICdmb3JtLWlucHV0IHNmc2lfcGx1c19ibG9ja190ZXh0YmVmb3JlaWNvbnNfYm9keScgfSwgX18oJ0RlZmluZSB0aGUgZm9udCBzaXplICYgdHlwZSBpbiBvdXIgJyksIGVsKCdhJywgeyAnaHJlZic6ICdodHRwczovL3d3dy51bHRpbWF0ZWx5c29jaWFsLmNvbS91c20tcHJlbWl1bS8nLCAndGFyZ2V0JzogJ19ibGFuaycgfSwgX18oJ1ByZW1pdW0gcGx1Z2luJykpKSwgZWwoJ2gzJywgeyBjbGFzc05hbWU6ICdzZnNpX3BsdXNfYmxvY2tfbm90ZXNfaGVhZGluZycgfSwgX18oJ05vdGVzJykpLCBlbCgnaHInKSwgZWwoJ3VsJywgeyBjbGFzc05hbWU6ICdzZnNpX3BsdXNfYmxvY2tfbm90ZXNfbGlzdCcgfSwgZWwoJ2xpJywgeyBjbGFzc05hbWU6ICdzZnNpX3BsdXNfYmxvY2tfbm90ZXNfaXRlbScgfSwgX18oJ0ZvciBhbGwgb3RoZXIgc2VsZWN0aW9ucyAoIFdoYXQgdGhlIGljb25zIHNob3VsZCBkbyBldGMuKSBwbGVhc2UgZ28gdG8gJyksIGVsKCdhJywgeyAnaHJlZic6ICh3aW5kb3cuc2ZzaV9wbHVzX2xpbmtzID8gd2luZG93LnNmc2lfcGx1c19saW5rcy5hZG1pbl91cmwgOiAnL3dwLWFkbWluL2FkbWluLnBocCcpICsgJz9wYWdlPXNmc2ktcGx1cy1vcHRpb25zJywgJ3RhcmdldCc6ICdfYmxhbmsnIH0sIF9fKCdzZXR0aW5ncyBwYWdlJykpKSwgZWwoJ2xpJywgeyBjbGFzc05hbWU6ICdzZnNpX3BsdXNfYmxvY2tfbm90ZXNfaXRlbScgfSwgX18oJ1RvIHNlZSB0aGUgaWNvbnMgaW4g4oCaZnVsbCBhY3Rpb27igJggKHdpdGggYWxsIGZlYXR1cmVzKSBwbGVhc2Ugb3BlbiB0aGUgcGFnZSBpbiBsaXZlIG9yIHByZXZpZXcgbW9kZS4nKSksIGVsKCdsaScsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX25vdGVzX2l0ZW0nIH0sIF9fKCdJZiBxdWVzdGlvbnMgcmVtYWluLCBwbGVhc2UgYXNrIHRoZW0gaW4gdGhlICcpLCBlbCgnYScsIHtcblx0XHRcdCdocmVmJzogJ2h0dHBzOi8vZ29vLmdsL2t0QWVEdicsXG5cdFx0XHQndGFyZ2V0JzogJ19ibGFuaydcblx0XHR9LCBfXygnc3VwcG9ydCBmb3J1bScpKSwgX18oJyDigJMgd2XigJhsbCB0cnkgdG8gcmVzcG9uZCBxdWlja2x5LicpLCBlbCgnaW1nJywgeyBzcmM6ICh3aW5kb3cuc2ZzaV9wbHVzX2xpbmtzID8gd2luZG93LnNmc2lfcGx1c19saW5rcy5wbHVnaW5fZGlyX3VybCA6ICcvd3AtY29udGVudC9wbHVnaW5zL3VsdGltYXRlLXNvY2lhbC1tZWRpYS1wbHVzJykgKyAnL2ltYWdlcy9JY19pbnNlcnRfZW1vdGljb25fNDhweC5zdmcnLCBzdHlsZTogeyB3aWR0aDogJzE4cHgnLCAndmVydGljYWwtYWxpZ24nOiAndGV4dC1ib3R0b20nIH0gfSkpKSwgZWwoJ2gzJywgeyBjbGFzc05hbWU6ICdzZnNpX3BsdXNfYmxvY2tfYWRfaGVhZGluZycgfSwgJ1dhbnQgKG11Y2gpIG1vcmU/JyksIGVsKCdkaXYnLCB7IGNsYXNzTmFtZTogJ3Nmc2lfcGx1c19ibG9ja19hZF9ib2R5JyB9LCBlbCgnZGl2Jywge30sIF9fKCdDaGVjayBvdXQgb3VyICcpLCBlbCgnYScsIHsgJ2hyZWYnOiAnaHR0cHM6Ly93d3cudWx0aW1hdGVseXNvY2lhbC5jb20vdXNtLXByZW1pdW0vP3V0bV9zb3VyY2U9cGx1c19ndXRlbmJlcmdfcGFnZSZ1dG1fY2FtcGFpZ249c2lkZV93aWRnZXQmdXRtX21lZGl1bT1saW5rJywgJ3RhcmdldCc6ICdfYmxhbmsnIH0sIF9fKCdwcmVtaXVtIHBsdWdpbuKAmHMgZmVhdHVyZXMnKSksIF9fKCcuIFdhdGNoIGEgdGVhc2VyOiAnKSkpLCBlbCgnZGl2JywgeyBzdHlsZTogeyAndGV4dC1hbGlnbic6ICdjZW50ZXInIH0gfSwgZWwoJ2lmcmFtZScsIHsgc3JjOiAnaHR0cHM6Ly9wbGF5ZXIudmltZW8uY29tL3ZpZGVvLzI2OTE0MDc5OCcsIHdpZHRoOiAnNjQwJywgZnJhbWVib3JkZXI6IDAsICd3ZWJraXRhbGxvd2Z1bGxzY3JlZW4nOiBcIlwiLCAnbW96YWxsb3dmdWxsc2NyZWVuJzogXCJcIiwgJ2FsbG93ZnVsbHNjcmVlbic6IFwiXCIgfSksIGVsKCdhJywgeyBocmVmOiBcImh0dHBzOi8vd3d3LnVsdGltYXRlbHlzb2NpYWwuY29tL3VzbS1wcmVtaXVtLz91dG1fc291cmNlPXBsdXNfZ3V0ZW5iZXJnX3BhZ2UmdXRtX2NhbXBhaWduPXNpZGVfd2lkZ2V0JnV0bV9tZWRpdW09bGlua1wiLCAndGFyZ2V0JzogJ19ibGFuaycsIHN0eWxlOiB7ICdkaXNwbGF5JzogJ2lubGluZS1ibG9jaycsIHBhZGRpbmc6ICc0cHggMTBweCcsICd0ZXh0LWRlY29yYXRpb24nOiAnbm9uZScsICdiYWNrZ3JvdW5kJzogJyMwMEExNUEnLCAnY29sb3InOiAnI2ZmZicsICdmb250LXNpemUnOiAnMTFweCcsICdmb250LXdlaWdodCc6ICc5MDAnIH0gfSwgX18oJ0NoZWNrIG91dCB0aGUgUHJlbWl1bSBQbHVnaW4gPj4nKSkpLCBlbCgnYnInKSwgZWwoJ3NwYW4nLCB7IGNsYXNzTmFtZTogJ3Nmc2lfcGx1c19ibG9ja19hZF9mb290ZXInIH0sIF9fKCcuLm9ubHkgMjQuOTggVVNEIChpbmNsdWRlcyBzdXBwb3J0IGFuZCB1cGRhdGVzIGZvciAxIHllYXIsIGFuZCBhZnRlciB0aGF0IGl0IHdpbGwgbm90IGJlIGRlYWN0aXZhdGVkLCBzbyB5b3UgY2FuIGp1c3Qga2VlcCB1c2luZyBpdCEpJykpKSksIGVsKCdkaXYnLCB7IGtleTogJ3Nmc2ktcGx1cy1ibG9jay1jb250ZW50JywgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX2NvbnRhaW5lciBzZnNpX3BsdXNfYmxvY2tfd3JhcHBlcicgfSwgJ1xcdCcsIHNob3dUZXh0QmVmb3JlU2hhcmUgPT0gXCJ5ZXNcIiAmJiBlbCgnc3BhbicsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX3RleHRfYmVmb3JlX2ljb24nLCAnZGF0YS1hbGlnbic6IGF0dHJpYnV0ZXMuaWNvbkFsaWduZW10IH0sIHRleHRCZWZvcmVTaGFyZSksIGVsKCdkaXYnLCB7IGNsYXNzTmFtZTogJ3Nmc2lfcGx1c19ibG9jaycsICdkYXRhLWNvdW50JzogYXR0cmlidXRlcy5tYXhQZXJSb3csICdkYXRhLWFsaWduJzogYXR0cmlidXRlcy5pY29uQWxpZ25lbXQsICdkYXRhLWljb24tdHlwZSc6IGF0dHJpYnV0ZXMuaWNvblR5cGUgfSwgJ2xvYWRpbmcuLi4uJykpXTtcblx0fSxcblxuXHQvKipcbiAgKiBUaGUgc2F2ZSBmdW5jdGlvbiBkZWZpbmVzIHRoZSB3YXkgaW4gd2hpY2ggdGhlIGRpZmZlcmVudCBhdHRyaWJ1dGVzIHNob3VsZCBiZSBjb21iaW5lZFxuICAqIGludG8gdGhlIGZpbmFsIG1hcmt1cCwgd2hpY2ggaXMgdGhlbiBzZXJpYWxpemVkIGJ5IEd1dGVuYmVyZyBpbnRvIHBvc3RfY29udGVudC5cbiAgKlxuICAqIFRoZSBcInNhdmVcIiBwcm9wZXJ0eSBtdXN0IGJlIHNwZWNpZmllZCBhbmQgbXVzdCBiZSBhIHZhbGlkIGZ1bmN0aW9uLlxuICAqXG4gICogQGxpbmsgaHR0cHM6Ly93b3JkcHJlc3Mub3JnL2d1dGVuYmVyZy9oYW5kYm9vay9ibG9jay1hcGkvYmxvY2stZWRpdC1zYXZlL1xuICAqL1xuXHRkZXByZWNhdGVkOiBbe1xuXHRcdGF0dHJpYnV0ZXM6IHtcblx0XHRcdFwianNjb2RlXCI6IHtcblx0XHRcdFx0XCJkZWZhdWx0XCI6IFwiXFxuXFx0XFx0alF1ZXJ5KGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigkKSB7XFxuXFx0XFx0XFx0alF1ZXJ5LmFqYXgoe1xcblxcdFxcdFxcdFxcdCd1cmwnOiAnL3dwLWpzb24vdWx0aW1hdGUtc29jaWFsLW1lZGlhLXBsdXMvdjEvaWNvbnMvP3NoYXJlX3VybD0nK3dpbmRvdy5sb2NhdGlvbi5ocmVmLFxcblxcdFxcdFxcdFxcdCdtZXRob2QnOiAnR0VUJ1xcblxcdFxcdFxcdH0pLmRvbmUoIGZ1bmN0aW9uKHJlc3BvbnNlKXtcXG5cXHRcXHRcXHRcXHQkKCcuc2ZzaV9wbHVzX2Jsb2NrX2NvbnRhaW5lciAuc2ZzaV9wbHVzX2Jsb2NrJykuaHRtbChyZXNwb25zZSk7aWYod2luZG93LmdhcGkpe3dpbmRvdy5nYXBpLnBsdXNvbmUuZ28oKTt3aW5kb3cuZ2FwaS5wbHVzLmdvKCk7d2luZG93LmdhcGkueXRzdWJzY3JpYmUuZ28oKTt9O2lmKHdpbmRvdy50d3R0cil7d2luZG93LnR3dHRyLndpZGdldHMubG9hZCgpO307aWYod2luZG93LklOKXt3aW5kb3cuSU4ucGFyc2UoKTt9O2lmKHdpbmRvdy5hZGR0aGlzKXtpZih3aW5kb3cuYWRkdGhpcy50b29sYm94KXt3aW5kb3cuYWRkdGhpcy50b29sYm94KCcuYWRkdGhpc19idXR0b24uc2ZpY24nKTt9ZWxzZXt3aW5kb3cuYWRkdGhpcy5pbml0KCk7d2luZG93LmFkZHRoaXMudG9vbGJveCgnLmFkZHRoaXNfYnV0dG9uLnNmaWNuJyk7fX07aWYod2luZG93LlBpblV0aWxzKXt3aW5kb3cuUGluVXRpbHMuYnVpbGQoKTt9O2lmKGpRdWVyeSgnLnNmc2lfcGx1c193RGl2JykubGVuZ3RoID4gMCkge3NldFRpbWVvdXQoZnVuY3Rpb24oKSB7IHZhciBzID0gcGFyc2VJbnQoalF1ZXJ5KCcuc2ZzaV9wbHVzX3dEaXYnKS5oZWlnaHQoKSkgKyAxNSArICdweCc7alF1ZXJ5KCcuc2ZzaV9wbHVzX2hvbGRlcnMnKS5lYWNoKGZ1bmN0aW9uKCkge2pRdWVyeSh0aGlzKS5jc3MoJ2hlaWdodCcsIHMpO30pO2pRdWVyeSgnLnNmc2lfcGx1c193aWRnZXQnKS5jc3MoJ21pbi1oZWlnaHQnLCAnYXV0bycpO30sIDIwMCk7fTtpZih3aW5kb3cuRkIpe2lmKHdpbmRvdy5GQi5YRkJNTCl7d2luZG93LkZCLlhGQk1MLnBhcnNlKCk7fX07XFxuXFx0XFx0XFx0fSk7XFxuXFx0XFx0fSk7XFxuXFx0XCIsXG5cdFx0XHRcdHR5cGU6ICdzdHJpbmcnXG5cdFx0XHR9XG5cdFx0fSxcblxuXHRcdGlzRWxpZ2libGU6IGZ1bmN0aW9uIGlzRWxpZ2libGUoYXR0cmlidXRlcykge1xuXHRcdFx0Y29uc29sZS5sb2coYXR0cmlidXRlcyk7XG5cdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHRcdC8vIHJldHVybiAoYXR0cmlidXRlcy5qc2NvZGU9PT1cIlxcblxcdFxcdGpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCkge1xcblxcdFxcdFxcdGpRdWVyeS5hamF4KHtcXG5cXHRcXHRcXHRcXHQndXJsJzogJy93cC1qc29uL3VsdGltYXRlLXNvY2lhbC1tZWRpYS1wbHVzL3YxL2ljb25zLz9zaGFyZV91cmw9Jyt3aW5kb3cubG9jYXRpb24uaHJlZixcXG5cXHRcXHRcXHRcXHQnbWV0aG9kJzogJ0dFVCdcXG5cXHRcXHRcXHR9KS5kb25lKCBmdW5jdGlvbihyZXNwb25zZSl7XFxuXFx0XFx0XFx0XFx0JCgnLnNmc2lfcGx1c19ibG9ja19jb250YWluZXIgLnNmc2lfcGx1c19ibG9jaycpLmh0bWwocmVzcG9uc2UpO2lmKHdpbmRvdy5nYXBpKXt3aW5kb3cuZ2FwaS5wbHVzb25lLmdvKCk7d2luZG93LmdhcGkucGx1cy5nbygpO3dpbmRvdy5nYXBpLnl0c3Vic2NyaWJlLmdvKCk7fTtpZih3aW5kb3cudHd0dHIpe3dpbmRvdy50d3R0ci53aWRnZXRzLmxvYWQoKTt9O2lmKHdpbmRvdy5JTil7d2luZG93LklOLnBhcnNlKCk7fTtpZih3aW5kb3cuYWRkdGhpcyl7aWYod2luZG93LmFkZHRoaXMudG9vbGJveCl7d2luZG93LmFkZHRoaXMudG9vbGJveCgnLmFkZHRoaXNfYnV0dG9uLnNmaWNuJyk7fWVsc2V7d2luZG93LmFkZHRoaXMuaW5pdCgpO3dpbmRvdy5hZGR0aGlzLnRvb2xib3goJy5hZGR0aGlzX2J1dHRvbi5zZmljbicpO319O2lmKHdpbmRvdy5QaW5VdGlscyl7d2luZG93LlBpblV0aWxzLmJ1aWxkKCk7fTtpZihqUXVlcnkoJy5zZnNpX3BsdXNfd0RpdicpLmxlbmd0aCA+IDApIHtzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeyB2YXIgcyA9IHBhcnNlSW50KGpRdWVyeSgnLnNmc2lfcGx1c193RGl2JykuaGVpZ2h0KCkpICsgMTUgKyAncHgnO2pRdWVyeSgnLnNmc2lfcGx1c19ob2xkZXJzJykuZWFjaChmdW5jdGlvbigpIHtqUXVlcnkodGhpcykuY3NzKCdoZWlnaHQnLCBzKTt9KTtqUXVlcnkoJy5zZnNpX3BsdXNfd2lkZ2V0JykuY3NzKCdtaW4taGVpZ2h0JywgJ2F1dG8nKTt9LCAyMDApO307aWYod2luZG93LkZCKXtpZih3aW5kb3cuRkIuWEZCTUwpe3dpbmRvdy5GQi5YRkJNTC5wYXJzZSgpO319O1xcblxcdFxcdFxcdH0pO1xcblxcdFxcdH0pO1xcblxcdFwiKTtcblx0XHR9LFxuXHRcdG1pZ3JhdGU6IGZ1bmN0aW9uIG1pZ3JhdGUoYXR0cmlidXRlcykge1xuXHRcdFx0Y29uc29sZS5sb2coJ21pZ3JhdGUnLCBhdHRyaWJ1dGVzKTtcblx0XHRcdHJldHVybiBbe1xuXHRcdFx0XHRcImpzY29kZVwiOiBcIlxcblxcdFxcdGpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCkge1xcblxcdFxcdFxcdGpRdWVyeS5hamF4KHtcXG5cXHRcXHRcXHRcXHQndXJsJzogJy93cC1qc29uL3VsdGltYXRlLXNvY2lhbC1tZWRpYS1wbHVzL3YxL2ljb25zLz9zaGFyZV91cmw9Jyt3aW5kb3cubG9jYXRpb24uaHJlZixcXG5cXHRcXHRcXHRcXHQnbWV0aG9kJzogJ0dFVCdcXG5cXHRcXHRcXHR9KS5kb25lKCBmdW5jdGlvbihyZXNwb25zZSl7XFxuXFx0XFx0XFx0XFx0JCgnLnNmc2lfcGx1c19ibG9ja193cmFwcGVyIC5zZnNpX3BsdXNfYmxvY2snKS5odG1sKHJlc3BvbnNlKTtzZnNpX3BsdXNfdXBkYXRlX2ljb25jb3VudCgpO2lmKHdpbmRvdy5nYXBpKXt3aW5kb3cuZ2FwaS5wbHVzb25lLmdvKCk7d2luZG93LmdhcGkucGx1cy5nbygpO3dpbmRvdy5nYXBpLnl0c3Vic2NyaWJlLmdvKCk7fTtpZih3aW5kb3cudHd0dHIpe3dpbmRvdy50d3R0ci53aWRnZXRzLmxvYWQoKTt9O2lmKHdpbmRvdy5JTil7d2luZG93LklOLnBhcnNlKCk7fTtpZih3aW5kb3cuYWRkdGhpcyl7aWYod2luZG93LmFkZHRoaXMudG9vbGJveCl7d2luZG93LmFkZHRoaXMudG9vbGJveCgnLmFkZHRoaXNfYnV0dG9uLnNmaWNuJyk7fWVsc2V7d2luZG93LmFkZHRoaXMuaW5pdCgpO3dpbmRvdy5hZGR0aGlzLnRvb2xib3goJy5hZGR0aGlzX2J1dHRvbi5zZmljbicpO319O2lmKHdpbmRvdy5QaW5VdGlscyl7d2luZG93LlBpblV0aWxzLmJ1aWxkKCk7fTtpZihqUXVlcnkoJy5zZnNpX3BsdXNfd0RpdicpLmxlbmd0aCA+IDApIHtzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeyB2YXIgcyA9IHBhcnNlSW50KGpRdWVyeSgnLnNmc2lfcGx1c193RGl2JykuaGVpZ2h0KCkpICsgMTUgKyAncHgnO2pRdWVyeSgnLnNmc2lfcGx1c19ob2xkZXJzJykuZWFjaChmdW5jdGlvbigpIHtqUXVlcnkodGhpcykuY3NzKCdoZWlnaHQnLCBzKTt9KTtqUXVlcnkoJy5zZnNpX3BsdXNfd2lkZ2V0JykuY3NzKCdtaW4taGVpZ2h0JywgJ2F1dG8nKTt9LCAyMDApO307aWYod2luZG93LkZCKXtpZih3aW5kb3cuRkIuWEZCTUwpe3dpbmRvdy5GQi5YRkJNTC5wYXJzZSgpO319O1xcblxcdFxcdFxcdH0pO1xcblxcdFxcdH0pO1xcblxcdFwiLFxuXHRcdFx0XHRzaG93VGV4dEJlZm9yZVNoYXJlOiAneWVzJyxcblx0XHRcdFx0dGV4dEJlZm9yZVNoYXJlOiAnUGxlYXNlIFNoYXJlOicsXG5cdFx0XHRcdGljb25UeXBlOiAncm91bmQnLFxuXHRcdFx0XHRpY29uQWxpZ25lbXQ6ICdsZWZ0Jyxcblx0XHRcdFx0bWF4UGVyUm93OiAnNSdcblx0XHRcdH1dO1xuXHRcdH0sXG5cdFx0c2F2ZTogZnVuY3Rpb24gc2F2ZShwcm9wcykge1xuXHRcdFx0Y29uc29sZS5sb2cocHJvcHMpO1xuXHRcdFx0dmFyIGF0dHJpYnV0ZXMgPSBwcm9wcy5hdHRyaWJ1dGVzO1xuXHRcdFx0cmV0dXJuIHJlbmRlckJ1dHRvbnMoYXR0cmlidXRlcyk7XG5cdFx0fVxuXHR9XSxcblxuXHQvLyBkZXByZWNhdGVkOiBbXG5cdC8vIFx0e1xuXHQvLyBcdFx0YXR0cmlidXRlczoge1xuXHQvLyBcdFx0XHRcImpzY29kZVwiOntcblx0Ly8gXHRcdFx0XHRcdFx0XCJkZWZhdWx0XCI6XCJcXG5cXHRcXHRqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpIHtcXG5cXHRcXHRcXHRqUXVlcnkuYWpheCh7XFxuXFx0XFx0XFx0XFx0J3VybCc6ICcvd3AtanNvbi91bHRpbWF0ZS1zb2NpYWwtbWVkaWEtcGx1cy92MS9pY29ucy8/c2hhcmVfdXJsPScrd2luZG93LmxvY2F0aW9uLmhyZWYsXFxuXFx0XFx0XFx0XFx0J21ldGhvZCc6ICdHRVQnXFxuXFx0XFx0XFx0fSkuZG9uZSggZnVuY3Rpb24ocmVzcG9uc2Upe1xcblxcdFxcdFxcdFxcdCQoJy5zZnNpX3BsdXNfYmxvY2tfY29udGFpbmVyIC5zZnNpX3BsdXNfYmxvY2snKS5odG1sKHJlc3BvbnNlKTtpZih3aW5kb3cuZ2FwaSl7d2luZG93LmdhcGkucGx1c29uZS5nbygpO3dpbmRvdy5nYXBpLnBsdXMuZ28oKTt3aW5kb3cuZ2FwaS55dHN1YnNjcmliZS5nbygpO307aWYod2luZG93LnR3dHRyKXt3aW5kb3cudHd0dHIud2lkZ2V0cy5sb2FkKCk7fTtpZih3aW5kb3cuSU4pe3dpbmRvdy5JTi5wYXJzZSgpO307aWYod2luZG93LmFkZHRoaXMpe2lmKHdpbmRvdy5hZGR0aGlzLnRvb2xib3gpe3dpbmRvdy5hZGR0aGlzLnRvb2xib3goJy5hZGR0aGlzX2J1dHRvbi5zZmljbicpO31lbHNle3dpbmRvdy5hZGR0aGlzLmluaXQoKTt3aW5kb3cuYWRkdGhpcy50b29sYm94KCcuYWRkdGhpc19idXR0b24uc2ZpY24nKTt9fTtpZih3aW5kb3cuUGluVXRpbHMpe3dpbmRvdy5QaW5VdGlscy5idWlsZCgpO307aWYoalF1ZXJ5KCcuc2ZzaV9wbHVzX3dEaXYnKS5sZW5ndGggPiAwKSB7c2V0VGltZW91dChmdW5jdGlvbigpIHsgdmFyIHMgPSBwYXJzZUludChqUXVlcnkoJy5zZnNpX3BsdXNfd0RpdicpLmhlaWdodCgpKSArIDE1ICsgJ3B4JztqUXVlcnkoJy5zZnNpX3BsdXNfaG9sZGVycycpLmVhY2goZnVuY3Rpb24oKSB7alF1ZXJ5KHRoaXMpLmNzcygnaGVpZ2h0Jywgcyk7fSk7alF1ZXJ5KCcuc2ZzaV9wbHVzX3dpZGdldCcpLmNzcygnbWluLWhlaWdodCcsICdhdXRvJyk7fSwgMjAwKTt9O2lmKHdpbmRvdy5GQil7aWYod2luZG93LkZCLlhGQk1MKXt3aW5kb3cuRkIuWEZCTUwucGFyc2UoKTt9fTtcXG5cXHRcXHRcXHR9KTtcXG5cXHRcXHR9KTtcXG5cXHRcIixcblx0Ly8gXHRcdFx0XHRcdFx0dHlwZTogJ3N0cmluZydcblx0Ly8gXHRcdFx0fVxuXHQvLyBcdFx0fSxcblx0Ly8gXHRcdHNhdmU6IGZ1bmN0aW9uKCBwcm9wcyApIHtcblx0Ly8gXHRcdFx0dmFyIGF0dHJpYnV0ZXMgPSBwcm9wcy5hdHRyaWJ1dGVzO1xuXHQvLyBcdFx0XHRyZXR1cm4gcmVuZGVyQnV0dG9ucyhhdHRyaWJ1dGVzKTtcblx0Ly8gXHRcdH1cblx0Ly8gXHRcdG1pZ3JhdGU6IGZ1bmN0aW9uKCl7XG5cdC8vIFx0XHRcdHJldHVybiBcblx0Ly8gXHRcdH1cblx0Ly8gXHR9XG5cdC8vIF0sXG5cblxuXHRzYXZlOiBmdW5jdGlvbiBzYXZlKHByb3BzKSB7XG5cdFx0Ly8gY29uc29sZS5sb2cocHJvcHMpO1xuXHRcdHZhciBhdHRyaWJ1dGVzID0gcHJvcHMuYXR0cmlidXRlcztcblx0XHRzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHtcblx0XHRcdGNoYW5nZUljb25XaWR0aChhdHRyaWJ1dGVzLm1heFBlclJvdyk7XG5cdFx0XHQvLyBjb25zb2xlLmxvZygnY2hhbmdlZEljb25XaWR0aCcpO1xuXHRcdH0sIDMwMCk7XG5cdFx0cmV0dXJuIHJlbmRlckJ1dHRvbnNfbmV3KGF0dHJpYnV0ZXMpO1xuXHR9XG5cbn0pO1xuXG5mdW5jdGlvbiByZW5kZXJCdXR0b25zKGF0dHJpYnV0ZXMpIHtcblx0dmFyIGpzY29kZSA9IGF0dHJpYnV0ZXMuanNjb2RlO1xuXHQvLyBpZihhdHRyaWJ1dGVzLmljb25UeXBlPT09XCJyZWN0YW5nbGVcIil7XG5cdC8vIFx0anNjb2RlPWpzY29kZS5yZXBsYWNlKC93aW5kb3cubG9jYXRpb24uaHJlZi9naSwnd2luZG93LmxvY2F0aW9uLmhyZWYrXCImcmFjdGFuZ2xlX2ljb249MVwiJylcblx0Ly8gfVxuXHRyZXR1cm4gZWwoJ2RpdicsIHsgJ2NsYXNzTmFtZSc6ICdzZnNpX3BsdXNfYmxvY2tfY29udGFpbmVyJyB9LCBcIlxcblx0XCIsIGVsKCdkaXYnLCB7IGNsYXNzTmFtZTogJ3Nmc2lfcGx1c19ibG9jaycgfSwgXCJcIiksIFwiXFxuXHRcIiwgZWwoJ3NjcmlwdCcsIHt9LCBqc2NvZGUpLCBcIlxcblwiKTtcbn1cblxuZnVuY3Rpb24gcmVuZGVyQnV0dG9uc19uZXcoYXR0cmlidXRlcykge1xuXHQvLyBjb25zb2xlLmxvZyhhdHRyaWJ1dGVzKTtcblx0dmFyIGpzY29kZSA9IGF0dHJpYnV0ZXMuanNjb2RlO1xuXHRpZiAoYXR0cmlidXRlcy5pY29uVHlwZSA9PT0gXCJyZWN0YW5nbGVcIikge1xuXHRcdGpzY29kZSA9IGpzY29kZS5yZXBsYWNlKC93aW5kb3cubG9jYXRpb24uaHJlZi9naSwgJ3dpbmRvdy5sb2NhdGlvbi5ocmVmK1wiJnJhY3RhbmdsZV9pY29uPTFcIicpO1xuXHR9XG5cdHZhciBzaG93VGV4dEJlZm9yZVNoYXJlID0gXCJ5ZXNcIjtcblx0dmFyIHRleHRCZWZvcmVTaGFyZSA9IFwiUGxlYXNlIFNoYXJlOlwiO1xuXHRpZiAoYXR0cmlidXRlcy5zaG93VGV4dEJlZm9yZVNoYXJlIHx8ICcnICE9PSBhdHRyaWJ1dGVzLnNob3dUZXh0QmVmb3JlU2hhcmUpIHtcblx0XHRzaG93VGV4dEJlZm9yZVNoYXJlID0gYXR0cmlidXRlcy5zaG93VGV4dEJlZm9yZVNoYXJlO1xuXHR9IGVsc2Uge1xuXHRcdG9uQXR0ckNoYW5nZSgnc2hvd1RleHRCZWZvcmVTaGFyZScsICd5ZXMnKTtcblx0fVxuXHRpZiAoYXR0cmlidXRlcy50ZXh0QmVmb3JlU2hhcmUgfHwgJycgIT09IGF0dHJpYnV0ZXMudGV4dEJlZm9yZVNoYXJlKSB7XG5cdFx0dGV4dEJlZm9yZVNoYXJlID0gYXR0cmlidXRlcy50ZXh0QmVmb3JlU2hhcmU7XG5cdH0gZWxzZSB7XG5cdFx0b25BdHRyQ2hhbmdlKCd0ZXh0QmVmb3JlU2hhcmUnLCAnUGxlYXNlIFNoYXJlOicpO1xuXHR9XG5cdHJldHVybiBlbCgnZGl2JywgeyAnY2xhc3NOYW1lJzogJ3Nmc2lfcGx1c19ibG9ja193cmFwcGVyJyB9LCBcIlxcblx0XCIsIHNob3dUZXh0QmVmb3JlU2hhcmUgPT0gXCJ5ZXNcIiAmJiBlbCgnc3BhbicsIHsgY2xhc3NOYW1lOiAnc2ZzaV9wbHVzX2Jsb2NrX3RleHRfYmVmb3JlX2ljb24nIH0sIHRleHRCZWZvcmVTaGFyZSksIFwiXFxuXCIsIGVsKCdkaXYnLCB7IGNsYXNzTmFtZTogJ3Nmc2lfcGx1c19ibG9jaycsICdkYXRhLWNvdW50JzogYXR0cmlidXRlcy5tYXhQZXJSb3csICdkYXRhLWFsaWduJzogYXR0cmlidXRlcy5pY29uQWxpZ25lbXQsICdkYXRhLWljb24tdHlwZSc6IGF0dHJpYnV0ZXMuaWNvblR5cGUgfSwgXCJcIiksIFwiXFxuXFx0XCJcblx0Ly8gZWwoJ3NjcmlwdCcse30sanNjb2RlXG5cdC8vICksXCJcXG5cIlxuXHQpO1xufVxuZnVuY3Rpb24gY2hhbmdlSWNvbldpZHRoKCkge1xuXHR2YXIgcGVyX3JvdyA9IGFyZ3VtZW50cy5sZW5ndGggPiAwICYmIGFyZ3VtZW50c1swXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzBdIDogbnVsbDtcblxuXHQvLyBjb25zb2xlLmxvZygnaWNvbmNoYW5nZWNhbGxlZCcpO1xuXHQvLyBqUXVlcnkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCQpe1xuXHQvLyBjb25zb2xlLmxvZygnaWNvbmNoYW5nZWNhbGxlZCBhbmQgZG9jIHJlYWR5Jyk7XG5cdHZhciBpY29uV2lkdGggPSBwYXJzZUludChqUXVlcnkoJy5zZnNpX3BsdXNfYmxvY2tfd3JhcHBlciAuc2ZzaV9wbHVzX3dEaXYgZGl2JykuY3NzKCd3aWR0aCcpKSB8fCA0MDtcblx0Ly8gY29uc29sZS5sb2coJ2ljb253aWR0aCcsaWNvbldpZHRoKTtcblxuXHR2YXIgaWNvbk1hcmdpbiA9IHBhcnNlSW50KGpRdWVyeSgnLnNmc2lfcGx1c19ibG9ja193cmFwcGVyIC5zZnNpX3BsdXNfd0RpdiBkaXYnKS5jc3MoJ21hcmdpbi1sZWZ0JykpIHx8IDA7XG5cdC8vIGNvbnNvbGUubG9nKCdpY29uTWFyZ2luJyxpY29uTWFyZ2luKTtcblxuXHR2YXIgd3JhcHBlcldpZHRoID0gKGljb25XaWR0aCArIGljb25NYXJnaW4pICogcGVyX3Jvdztcblx0Ly8gY29uc29sZS5sb2coJ2luIGljb24gY2hhbmdlICcsaWNvbldpZHRoLGljb25NYXJnaW4sd3JhcHBlcldpZHRoKTtcblx0dmFyIGljb25IZWlnaHQgPSBqUXVlcnkoJy5zZnNpX3BsdXNfYmxvY2tfd3JhcHBlciAuc2ZzaV9wbHVzX3dEaXYgaW1nJykuZmlyc3QoKS5oZWlnaHQoKTtcblx0dmFyIHRleHRIZWlnaHQgPSBqUXVlcnkoJy5zZnNpX3BsdXNfYmxvY2tfdGV4dF9iZWZvcmVfaWNvbicpLmhlaWdodCgpO1xuXHQvLyBjb25zb2xlLmxvZygnd3JhcHBlcldpZHRoJyx3cmFwcGVyV2lkdGgpO1xuXHRqUXVlcnkoJy5zZnNpX3BsdXNfYmxvY2tfdGV4dF9iZWZvcmVfaWNvbicpLmNzcyh7ICdtYXJnaW4tdG9wJzogKHRleHRIZWlnaHQgLSBpY29uSGVpZ2h0KSAvIDIgLSAyICsgJ3B4JyB9KTtcblx0aWYgKGpRdWVyeSgnLnNmc2lfcGx1c19ibG9ja193cmFwcGVyIC5zZnNpcGx1c19ub3JtX3JvdycpLmxlbmd0aCA8IDEpIHtcblx0XHQvLyBjb25zb2xlLmxvZygnc2V0VGltZW91dCcsalF1ZXJ5KCcuc2ZzaV9wbHVzX2Jsb2NrX3dyYXBwZXIgLnNmc2lwbHVzX25vcm1fcm93JykpO1xuXHRcdHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXHRcdFx0alF1ZXJ5KCcuc2ZzaV9wbHVzX2Jsb2NrX3dyYXBwZXIgLnNmc2lwbHVzX25vcm1fcm93JykuY3NzKHsgJ3dpZHRoJzogd3JhcHBlcldpZHRoICsgJ3B4JyB9KTtcblx0XHR9LCAxMDAwKTtcblx0fSBlbHNlIHt9XG5cdC8vIGNvbnNvbGUubG9nKCdkaWRub3Qgc2V0VGltZW91dCcsalF1ZXJ5KCcuc2ZzaV9wbHVzX2Jsb2NrX3dyYXBwZXIgLnNmc2lwbHVzX25vcm1fcm93JykpO1xuXG5cdC8vIHZhciB0YXJnZXQ9alF1ZXJ5KCcuc2ZzaV9wbHVzX2Jsb2NrX2NvbnRhaW5lcicpO1xuXHQvLyBjb25zb2xlLmxvZyh0YXJnZXQsaWNvbl9hbGlnbm1lbnQpO1xuXHRqUXVlcnkoJy5zZnNpX3BsdXNfYmxvY2tfd3JhcHBlciAuc2ZzaXBsdXNfbm9ybV9yb3cnKS5jc3MoeyAnd2lkdGgnOiB3cmFwcGVyV2lkdGggKyAncHgnIH0pO1xuXHRzZXRJY29uQmxvY2tBbGlnbm1lbnQoKTtcblxuXHQvLyB9KVxufVxuXG5mdW5jdGlvbiBzZXRJY29uQmxvY2tBbGlnbm1lbnQoKSB7XG5cdHZhciB0YXJnZXQgPSBqUXVlcnkoJy53cC1ibG9jay5pcy1zZWxlY3RlZCAuc2ZzaV9wbHVzX2Jsb2NrX2NvbnRhaW5lcicpO1xuXHR2YXIgaWNvbl9hbGlnbm1lbnQgPSB0YXJnZXQuZmluZCgnLnNmc2lfcGx1c19ibG9jaycpLmF0dHIoJ2RhdGEtYWxpZ24nKTtcblx0aWYgKCdjZW50ZXInID09PSBpY29uX2FsaWdubWVudCkge1xuXHRcdGpRdWVyeSh0YXJnZXQpLmZpbmQoJy5zZnNpX3BsdXNfYmxvY2tfdGV4dF9iZWZvcmVfaWNvbicpLmNzcyh7ICdkaXNwbGF5JzogJ2luaGVyaXQnIH0pO1xuXHR9XG5cdGpRdWVyeSh0YXJnZXQpLmNzcyh7ICd0ZXh0LWFsaWduJzogaWNvbl9hbGlnbm1lbnQgfSk7XG59XG5cbmZ1bmN0aW9uIGZldGNoQnV0dG9ucygpIHtcblx0dmFyIGljb25UeXBlID0gYXJndW1lbnRzLmxlbmd0aCA+IDAgJiYgYXJndW1lbnRzWzBdICE9PSB1bmRlZmluZWQgPyBhcmd1bWVudHNbMF0gOiBudWxsO1xuXHR2YXIgYXR0cmlidXRlcyA9IGFyZ3VtZW50cy5sZW5ndGggPiAxICYmIGFyZ3VtZW50c1sxXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzFdIDogbnVsbDtcblx0dmFyIHRhcmdldCA9IGFyZ3VtZW50cy5sZW5ndGggPiAyICYmIGFyZ3VtZW50c1syXSAhPT0gdW5kZWZpbmVkID8gYXJndW1lbnRzWzJdIDogbnVsbDtcblxuXHRpZiAobnVsbCA9PT0gaWNvblR5cGUgfHwgdW5kZWZpbmVkID09PSBpY29uVHlwZSkge1xuXHRcdGljb25UeXBlID0gXCJyb3VuZFwiO1xuXHR9XG5cdC8vIGNvbnNvbGUubG9nKGljb25UeXBlKTtcblx0Ly8gcmV0dXJuIGpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oJCl7XG5cdC8vIGNvbnNvbGUubG9nKGljb25UeXBlKTtcblx0aWYgKG51bGwgPT0gdGFyZ2V0KSB7XG5cdFx0dGFyZ2V0ID0gJChkb2N1bWVudCk7XG5cdH1cblx0Ly8gY29uc29sZS5sb2codGFyZ2V0KTtcblx0cmV0dXJuIGpRdWVyeS5hamF4KHtcblx0XHQndXJsJzogJy93cC1qc29uL3VsdGltYXRlLXNvY2lhbC1tZWRpYS1wbHVzL3YxL2ljb25zLz9hZG1pbl9yZWZlcmVhbD10cnVlJnJhY3RhbmdsZV9pY29uPScgKyAoJ3JvdW5kJyA9PSBpY29uVHlwZSA/IDAgOiAxKSxcblx0XHQnbWV0aG9kJzogJ0dFVCdcblx0XHQvLyAnZGF0YSc6eydpc19hZG1pbic6dHJ1ZSwnc2hhcmVfdXJsJzonLyd9XG5cdH0pLmRvbmUoZnVuY3Rpb24gKHJlc3BvbnNlKSB7XG5cdFx0Ly8gY29uc29sZS5sb2cocmVzcG9uc2UsJCgnLnNmc2lfcGx1c19ibG9jaycpKTtcblxuXHRcdGlmIChqUXVlcnkodGFyZ2V0KS5maW5kKCcuc2ZzaV9wbHVzX2Jsb2NrJykubGVuZ3RoID4gMCkge1xuXHRcdFx0alF1ZXJ5KHRhcmdldCkuZmluZCgnLnNmc2lfcGx1c19ibG9jaycpLmh0bWwocmVzcG9uc2UpO1xuXHRcdFx0Y2hhbmdlSWNvbldpZHRoKGF0dHJpYnV0ZXMubWF4UGVyUm93KTtcblx0XHRcdGlmIChpY29uVHlwZSAhPT0gJ3JvdW5kJykge1xuXHRcdFx0XHRyZW5kZXJBdXRvU29jaWFsSWNvbnMoKTtcblx0XHRcdH1cblx0XHRcdC8vIGNvbnNvbGUubG9nKCd1cGRhdGVkJyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRqUXVlcnkoJy5zZnNpX3BsdXNfYmxvY2snKS5odG1sKHJlc3BvbnNlKTtcblx0XHRcdFx0Y2hhbmdlSWNvbldpZHRoKGF0dHJpYnV0ZXMubWF4UGVyUm93KTtcblxuXHRcdFx0XHRjb25zb2xlLmxvZygnbm93IHVwZGF0ZWQnKTtcblx0XHRcdH0sIDUwMDApO1xuXHRcdFx0Y29uc29sZS5sb2coJ3RpbWVzZXQnKTtcblx0XHR9XG5cdH0pLmZhaWwoZnVuY3Rpb24gKHJlc3BvbnNlKSB7XG5cdFx0Ly8gY29uc29sZS5sb2cocmVzcG9uc2UsJCgnLnNmc2lfcGx1c19ibG9jaycpKTtcblx0XHRqUXVlcnkodGFyZ2V0KS5maW5kKCcuc2ZzaV9wbHVzX2Jsb2NrJykuaHRtbChyZXNwb25zZS5yZXNwb25zZVRleHQucmVwbGFjZSgnL1xcXFwvZycsICcnKSk7XG5cdH0pO1xuXHQvLyB9KTtcbn1cbmZ1bmN0aW9uIHJlbmRlckF1dG9Tb2NpYWxJY29ucygpIHtcblx0aWYgKHdpbmRvdy5nYXBpKSB7XG5cdFx0d2luZG93LmdhcGkucGx1c29uZS5nbygpO3dpbmRvdy5nYXBpLnBsdXMuZ28oKTt3aW5kb3cuZ2FwaS55dHN1YnNjcmliZS5nbygpO1xuXHR9O1xuXHRpZiAod2luZG93LnR3dHRyKSB7XG5cdFx0d2luZG93LnR3dHRyLndpZGdldHMubG9hZCgpO1xuXHR9O1xuXHRpZiAod2luZG93LklOICYmIHdpbmRvdy5JTi5wYXJzZSkge1xuXHRcdHdpbmRvdy5JTi5wYXJzZSgpO1xuXHR9O1xuXHRpZiAod2luZG93LmFkZHRoaXMpIHtcblx0XHRpZiAod2luZG93LmFkZHRoaXMudG9vbGJveCkge1xuXHRcdFx0d2luZG93LmFkZHRoaXMudG9vbGJveCgnLmFkZHRoaXNfYnV0dG9uLnNmaWNuJyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHdpbmRvdy5hZGR0aGlzLmluaXQoKTt3aW5kb3cuYWRkdGhpcy50b29sYm94KCcuYWRkdGhpc19idXR0b24uc2ZpY24nKTtcblx0XHR9XG5cdH07XG5cdGlmICh3aW5kb3cuUGluVXRpbHMpIHtcblx0XHR3aW5kb3cuUGluVXRpbHMuYnVpbGQoKTtcblx0fTtcblx0aWYgKHdpbmRvdy5GQikge1xuXHRcdGlmICh3aW5kb3cuRkIuWEZCTUwpIHtcblx0XHRcdHdpbmRvdy5GQi5YRkJNTC5wYXJzZSgpO1xuXHRcdH1cblx0fTtcbn1cbmlmICh1bmRlZmluZWQgPT09IHNmc2lfcGx1c19mbG9hdF93aWRnZXQpIHtcblx0dmFyIF9zZnNpX3BsdXNfZmxvYXRfd2lkZ2V0ID0gZnVuY3Rpb24gX3Nmc2lfcGx1c19mbG9hdF93aWRnZXQoKSB7XG5cdFx0cmV0dXJuO1xuXHR9O1xufVxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gV0VCUEFDSyBGT09URVJcbi8vIC4vc3JjL2Jsb2NrL2Jsb2NrLmpzXG4vLyBtb2R1bGUgaWQgPSAxXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///1\n");
|
88 |
+
|
89 |
+
/***/ }),
|
90 |
+
/* 2 */
|
91 |
+
/*!******************************!*\
|
92 |
+
!*** ./src/block/style.scss ***!
|
93 |
+
\******************************/
|
94 |
+
/*! dynamic exports provided */
|
95 |
+
/***/ (function(module, exports) {
|
96 |
+
|
97 |
+
eval("// removed by extract-text-webpack-plugin//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMi5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9ibG9jay9zdHlsZS5zY3NzPzgwZjMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gcmVtb3ZlZCBieSBleHRyYWN0LXRleHQtd2VicGFjay1wbHVnaW5cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFdFQlBBQ0sgRk9PVEVSXG4vLyAuL3NyYy9ibG9jay9zdHlsZS5zY3NzXG4vLyBtb2R1bGUgaWQgPSAyXG4vLyBtb2R1bGUgY2h1bmtzID0gMCJdLCJtYXBwaW5ncyI6IkFBQUEiLCJzb3VyY2VSb290IjoiIn0=\n//# sourceURL=webpack-internal:///2\n");
|
98 |
+
|
99 |
+
/***/ }),
|
100 |
+
/* 3 */
|
101 |
+
/*!*******************************!*\
|
102 |
+
!*** ./src/block/editor.scss ***!
|
103 |
+
\*******************************/
|
104 |
+
/*! dynamic exports provided */
|
105 |
+
/***/ (function(module, exports) {
|
106 |
+
|
107 |
+
eval("// removed by extract-text-webpack-plugin//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMy5qcyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3NyYy9ibG9jay9lZGl0b3Iuc2Nzcz80OWQyIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIHJlbW92ZWQgYnkgZXh0cmFjdC10ZXh0LXdlYnBhY2stcGx1Z2luXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gLi9zcmMvYmxvY2svZWRpdG9yLnNjc3Ncbi8vIG1vZHVsZSBpZCA9IDNcbi8vIG1vZHVsZSBjaHVua3MgPSAwIl0sIm1hcHBpbmdzIjoiQUFBQSIsInNvdXJjZVJvb3QiOiIifQ==\n//# sourceURL=webpack-internal:///3\n");
|
108 |
+
|
109 |
+
/***/ })
|
110 |
+
/******/ ]);
|
dist/blocks.editor.build.css
CHANGED
@@ -1 +1,156 @@
|
|
1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* #.# Common SCSS
|
3 |
+
*
|
4 |
+
* Can include things like variables and mixins
|
5 |
+
* that are used across the project.
|
6 |
+
*/
|
7 |
+
/**
|
8 |
+
* #.# Editor Styles
|
9 |
+
*
|
10 |
+
* CSS for just Backend enqueued after style.scss
|
11 |
+
* which makes it higher in priority.
|
12 |
+
*/
|
13 |
+
.sfsi_plus_block {
|
14 |
+
min-height: 55px; }
|
15 |
+
.sfsi_plus_block.sfsi_plus_block.sfsi_plus_block img {
|
16 |
+
padding: 0;
|
17 |
+
border: none;
|
18 |
+
max-width: 90%; }
|
19 |
+
.sfsi_plus_block .sfsi_plus_widget .sfsi_plus_linkedin_tool_bdr .sfsi_plus_inside .icon4,
|
20 |
+
.sfsi_plus_block .sfsi_plus_widget .sfsi_plus_gpls_tool_bdr .sfsi_plus_inside .icon1,
|
21 |
+
.sfsi_plus_block .sfsi_plus_widget .sfsi_plus_fb_tool_bdr .sfsi_plus_inside .icon1 {
|
22 |
+
height: auto; }
|
23 |
+
.sfsi_plus_block .sfsi_plus_widget {
|
24 |
+
min-height: 55px; }
|
25 |
+
.sfsi_plus_block .sfsi_plus_widget a img {
|
26 |
+
-webkit-box-shadow: none !important;
|
27 |
+
box-shadow: none !important;
|
28 |
+
outline: 0;
|
29 |
+
padding: 0 !important;
|
30 |
+
border: none !important;
|
31 |
+
max-width: 100%; }
|
32 |
+
.sfsi_plus_block .sfsiplus_inerCnt {
|
33 |
+
position: relative;
|
34 |
+
z-index: inherit !important;
|
35 |
+
float: left;
|
36 |
+
width: 100%;
|
37 |
+
float: left; }
|
38 |
+
.sfsi_plus_block .sfsi_plus_widget .sfsi_plus_wDiv .sfsi_plus_wicons .sfsiplus_inerCnt a, .sfsi_plus_block .sfsi_plus_widget .sfsi_plus_wDiv .sfsi_plus_wicons .sfsiplus_inerCnt a.sficn {
|
39 |
+
padding: 0px;
|
40 |
+
margin: 0px;
|
41 |
+
width: 100%;
|
42 |
+
/*float: left;*/
|
43 |
+
border: medium none; }
|
44 |
+
.sfsi_plus_block .sfsiplus_norm_row {
|
45 |
+
float: left;
|
46 |
+
min-width: 25px; }
|
47 |
+
.sfsi_plus_block .sfsiplus_norm_row a {
|
48 |
+
border: none;
|
49 |
+
display: inline-block;
|
50 |
+
position: relative; }
|
51 |
+
.sfsi_plus_block .sfsiplus_norm_row .cbtn_vsmall {
|
52 |
+
font-size: 9px;
|
53 |
+
left: -28%;
|
54 |
+
top: 4px; }
|
55 |
+
.sfsi_plus_block .sfsiplus_norm_row .cbtn_vsmall:before {
|
56 |
+
left: 31%;
|
57 |
+
top: -9px;
|
58 |
+
margin-left: -31%; }
|
59 |
+
.sfsi_plus_block .sfsiplus_norm_row {
|
60 |
+
position: relative !important; }
|
61 |
+
.sfsi_plus_block .sfsi_plus_wicons {
|
62 |
+
margin-bottom: 30px;
|
63 |
+
position: relative;
|
64 |
+
padding-top: 5px;
|
65 |
+
display: inline-block; }
|
66 |
+
.sfsi_plus_block .sfsiplus_norm_row .bot_no {
|
67 |
+
padding: 1px 0;
|
68 |
+
font-size: 12px !important;
|
69 |
+
text-align: center;
|
70 |
+
line-height: 12px !important;
|
71 |
+
background: #fff;
|
72 |
+
border-radius: 5px;
|
73 |
+
z-index: 9;
|
74 |
+
border: 1px solid #333;
|
75 |
+
white-space: pre;
|
76 |
+
-webkit-box-sizing: border-box;
|
77 |
+
box-sizing: border-box;
|
78 |
+
width: 40px;
|
79 |
+
display: inline-block; }
|
80 |
+
.sfsi_plus_block .sfsiplus_norm_row .bot_no:before {
|
81 |
+
content: url("../css/images/count_top_arow.png");
|
82 |
+
position: absolute;
|
83 |
+
height: 9px;
|
84 |
+
margin-left: -7.5px;
|
85 |
+
margin-top: -11px;
|
86 |
+
left: 50%;
|
87 |
+
width: 15px; }
|
88 |
+
.sfsi_plus_block .sfsi_plus_widget.sfsi_plus_widget.sfsi_plus_widget img {
|
89 |
+
border: none;
|
90 |
+
padding: 0; }
|
91 |
+
.sfsi_plus_block .sfsi_plus_Sicons .sf_fb {
|
92 |
+
margin-top: -4px;
|
93 |
+
margin-right: 4px; }
|
94 |
+
.sfsi_plus_block .sfsi_plus_Sicons .sf_twiter {
|
95 |
+
margin-right: 4px; }
|
96 |
+
.sfsi_plus_block .sfsi_plus_Sicons .sf_pinit {
|
97 |
+
margin-top: -3px;
|
98 |
+
margin-right: 4px; }
|
99 |
+
|
100 |
+
.gutenberg__editor .sfsi_new_prmium_follw {
|
101 |
+
height: auto !important;
|
102 |
+
min-height: 63px; }
|
103 |
+
|
104 |
+
.gutenberg__editor .sfsi_plus_block_text_before_icon {
|
105 |
+
display: inline-block;
|
106 |
+
vertical-align: top; }
|
107 |
+
|
108 |
+
.gutenberg__editor .sfsi_plus_block {
|
109 |
+
display: inline-block; }
|
110 |
+
.gutenberg__editor .sfsi_plus_block[data-icon-type="rectangle"] .fb_iframe_widget > span {
|
111 |
+
vertical-align: top !important; }
|
112 |
+
.gutenberg__editor .sfsi_plus_block[data-icon-type="rectangle"] .sf_pinit > span {
|
113 |
+
vertical-align: top !important; }
|
114 |
+
|
115 |
+
.sfsi_plus_block_inspector h3, .sfsi_plus_block_inspector label {
|
116 |
+
padding-top: 20px;
|
117 |
+
margin-bottom: 0; }
|
118 |
+
|
119 |
+
.sfsi_plus_block_inspector select, .sfsi_plus_block_inspector input[type="text"], .sfsi_plus_block_inspector input[type="number"], .sfsi_plus_block_inspector input[type="email"], .sfsi_plus_block_inspector textarea {
|
120 |
+
width: 100%; }
|
121 |
+
|
122 |
+
.sfsi_plus_block_inspector .sfsi_plus_block_iconperrow_body {
|
123 |
+
padding-top: 20px;
|
124 |
+
font-weight: 600; }
|
125 |
+
.sfsi_plus_block_inspector .sfsi_plus_block_iconperrow_body .label {
|
126 |
+
display: inline-block;
|
127 |
+
width: 69%; }
|
128 |
+
.sfsi_plus_block_inspector .sfsi_plus_block_iconperrow_body input {
|
129 |
+
display: inline-block;
|
130 |
+
width: 30%; }
|
131 |
+
|
132 |
+
.sfsi_plus_block_inspector .sfsi_plus_block_textbeforeicons {
|
133 |
+
display: inline-block; }
|
134 |
+
|
135 |
+
.sfsi_plus_block_inspector .sfsi_plus_block_textbeforeicons_header {
|
136 |
+
padding-top: 10px; }
|
137 |
+
|
138 |
+
.sfsi_plus_block_inspector hr {
|
139 |
+
margin: .3em 0; }
|
140 |
+
|
141 |
+
.sfsi_plus_block_inspector ul {
|
142 |
+
margin-top: 0; }
|
143 |
+
.sfsi_plus_block_inspector ul.sfsi_plus_block_notes_list {
|
144 |
+
list-style-type: disc;
|
145 |
+
-webkit-padding-start: 20px;
|
146 |
+
padding-inline-start: 20px; }
|
147 |
+
|
148 |
+
.sfsi_plus_block_inspector .sfsi_plus_block_ad_heading, .sfsi_plus_block_inspector .sfsi_plus_block_ad_body {
|
149 |
+
text-align: center; }
|
150 |
+
|
151 |
+
.sfsi_plus_block_wrapper .sfsi_plus_block, .sfsi_plus_block_wrapper .sfsi_plus_block_text_before_icon {
|
152 |
+
display: inline-block; }
|
153 |
+
|
154 |
+
.sfsi_plus_block_wrapper .sfsi_plus_block_text_before_icon {
|
155 |
+
vertical-align: top;
|
156 |
+
margin-top: 10px; }
|
dist/blocks.style.build.css
CHANGED
@@ -1 +1,13 @@
|
|
1 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* #.# Common SCSS
|
3 |
+
*
|
4 |
+
* Can include things like variables and mixins
|
5 |
+
* that are used across the project.
|
6 |
+
*/
|
7 |
+
/**
|
8 |
+
* #.# Styles
|
9 |
+
*
|
10 |
+
* CSS for both Frontend+Backend.
|
11 |
+
*/
|
12 |
+
.wp-block-ultimate-social-media-plus-sfsi-plus-share-block .fb_iframe_widget {
|
13 |
+
-webkit-appearance: none !important; }
|
images/Chat_with_us_bar_dark_green.png
ADDED
Binary file
|
images/Chat_with_us_bar_light_green.png
ADDED
Binary file
|
images/Ic_insert_emoticon_48px.svg
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
1 |
+
<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48">
|
2 |
+
<path d="M0 0h48v48h-48z" fill="none"/>
|
3 |
+
<path d="M23.99 4c-11.05 0-19.99 8.95-19.99 20s8.94 20 19.99 20c11.05 0 20.01-8.95 20.01-20s-8.96-20-20.01-20zm.01 36c-8.84 0-16-7.16-16-16s7.16-16 16-16 16 7.16 16 16-7.16 16-16 16zm7-18c1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3 1.34 3 3 3zm-14 0c1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3 1.34 3 3 3zm7 13c4.66 0 8.61-2.91 10.21-7h-20.42c1.6 4.09 5.55 7 10.21 7z"/>
|
4 |
+
</svg>
|
images/sfsi_block_icon.jpg
ADDED
Binary file
|
images/sfsi_block_premium_ad.png
ADDED
Binary file
|
js/custom-admin.js
CHANGED
@@ -735,6 +735,7 @@ function sfsi_plus_update_step8()
|
|
735 |
sfsi_plus_icons_floatMargin_left:msl,
|
736 |
sfsi_plus_icons_floatMargin_right:msr,
|
737 |
sfsi_plus_place_item_manually: n,
|
|
|
738 |
sfsi_plus_show_item_onposts: o,
|
739 |
sfsi_plus_display_button_type: a,
|
740 |
sfsi_plus_post_icons_size: r,
|
@@ -1132,7 +1133,7 @@ function sfsi_plus_create_suscriber_form()
|
|
1132 |
var global_error = 0;
|
1133 |
SFSI(document).ready(function(s) {
|
1134 |
//changes done {Monad}
|
1135 |
-
|
1136 |
SFSI(document).on("click", ".sfsi-notice-dismiss", function(){
|
1137 |
|
1138 |
SFSI.ajax({
|
@@ -1974,7 +1975,23 @@ SFSI(document).ready(function(s) {
|
|
1974 |
}
|
1975 |
});
|
1976 |
});
|
1977 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1978 |
});
|
1979 |
|
1980 |
//for utube channel name and id
|
@@ -2077,7 +2094,6 @@ SFSI("body").on("click", ".sfsi_plus_tokenGenerateButton a", function(){
|
|
2077 |
}
|
2078 |
|
2079 |
});
|
2080 |
-
|
2081 |
SFSI(document).on("click", '.radio', function () {
|
2082 |
|
2083 |
var s = SFSI(this).parent().find("input:radio:first");
|
@@ -2100,5 +2116,51 @@ SFSI(document).on("click", '.radio', function () {
|
|
2100 |
|
2101 |
break;
|
2102 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2103 |
|
2104 |
-
|
|
|
|
735 |
sfsi_plus_icons_floatMargin_left:msl,
|
736 |
sfsi_plus_icons_floatMargin_right:msr,
|
737 |
sfsi_plus_place_item_manually: n,
|
738 |
+
sfsi_plus_place_item_gutenberg:SFSI("input[name='sfsi_plus_place_item_gutenberg']:checked").val(),
|
739 |
sfsi_plus_show_item_onposts: o,
|
740 |
sfsi_plus_display_button_type: a,
|
741 |
sfsi_plus_post_icons_size: r,
|
1133 |
var global_error = 0;
|
1134 |
SFSI(document).ready(function(s) {
|
1135 |
//changes done {Monad}
|
1136 |
+
|
1137 |
SFSI(document).on("click", ".sfsi-notice-dismiss", function(){
|
1138 |
|
1139 |
SFSI.ajax({
|
1975 |
}
|
1976 |
});
|
1977 |
});
|
1978 |
+
if( undefined !==window.location.hash){
|
1979 |
+
switch(window.location.hash){
|
1980 |
+
case '#ui-id-1':SFSI('#ui-id-1').removeClass('ui-corner-all').addClass('accordion-header-active ui-state-active ui-corner-top');SFSI('#ui-id-2').css({'display':'block'});window.scroll(0,30);break;
|
1981 |
+
case '#ui-id-5':SFSI('#ui-id-5').removeClass('ui-corner-all').addClass('accordion-header-active ui-state-active ui-corner-top');SFSI('#ui-id-6').css({'display':'block'});window.scroll(0,30);
|
1982 |
+
var scrolto_elem=SFSI('.sfsiplusbeforeafterpostselector');
|
1983 |
+
if(scrolto_elem&&scrolto_elem.length>0&&scrolto_elem.offset()&&scrolto_elem.offset().top){
|
1984 |
+
console.log('scrolling:', 'window.scrollTo(0,'+scrolto_elem.offset().top+');');
|
1985 |
+
window.scrollTo(0,scrolto_elem.offset().top-30);
|
1986 |
+
setTimeout(function(){
|
1987 |
+
console.log('scrolling:', 'window.scrollTo(0,'+scrolto_elem.offset().top+');');
|
1988 |
+
window.scrollTo(0,scrolto_elem.offset().top-30);
|
1989 |
+
},1000);
|
1990 |
+
// console.log(window.scrollTo(0,scrolto_elem.offset().top));
|
1991 |
+
}
|
1992 |
+
break;
|
1993 |
+
}
|
1994 |
+
}
|
1995 |
});
|
1996 |
|
1997 |
//for utube channel name and id
|
2094 |
}
|
2095 |
|
2096 |
});
|
|
|
2097 |
SFSI(document).on("click", '.radio', function () {
|
2098 |
|
2099 |
var s = SFSI(this).parent().find("input:radio:first");
|
2116 |
|
2117 |
break;
|
2118 |
}
|
2119 |
+
});
|
2120 |
+
function getElementPosition(element) {
|
2121 |
+
var xPosition = 0;
|
2122 |
+
var yPosition = 0;
|
2123 |
+
|
2124 |
+
while(element) {
|
2125 |
+
xPosition += (element.offsetLeft - element.scrollLeft + element.clientLeft);
|
2126 |
+
yPosition += (element.offsetTop - element.scrollTop + element.clientTop);
|
2127 |
+
element = element.offsetParent;
|
2128 |
+
}
|
2129 |
+
|
2130 |
+
return { x: xPosition, y: yPosition };
|
2131 |
+
}
|
2132 |
+
SFSI(document).ready(function(){
|
2133 |
+
SFSI('#sfsi_plus_jivo_offline_chat .tab-link').click(function(){
|
2134 |
+
var cur=SFSI(this);
|
2135 |
+
if(!cur.hasClass('active')){
|
2136 |
+
var target=cur.find('a').attr('href');
|
2137 |
+
cur.parent().children().removeClass('active');
|
2138 |
+
cur.addClass('active');
|
2139 |
+
SFSI('#sfsi_plus_jivo_offline_chat .tabs').children().hide();
|
2140 |
+
SFSI(target).show();
|
2141 |
+
}
|
2142 |
+
});
|
2143 |
+
SFSI('#sfsi_plus_jivo_offline_chat #sfsi_sales form').submit(function(event){
|
2144 |
+
event&event.preventDefault();
|
2145 |
+
// console.log(event);
|
2146 |
+
var target=SFSI(this).parents('.tab-content');
|
2147 |
+
SFSI.ajax({
|
2148 |
+
url:ajax_object.ajax_url,
|
2149 |
+
type:"post",
|
2150 |
+
data:{
|
2151 |
+
action: "sfsiplusOfflineChatMessage",
|
2152 |
+
message: SFSI(this).find('textarea[name="question"]').val(),
|
2153 |
+
email: SFSI(this).find('input[name="email"]').val(),
|
2154 |
+
}
|
2155 |
+
}).done(function(){
|
2156 |
+
target.find('.before_message_sent').hide();
|
2157 |
+
target.find('.after_message_sent').show();
|
2158 |
+
});
|
2159 |
+
})
|
2160 |
+
});
|
2161 |
+
function sfsi_close_offline_chat(e){
|
2162 |
+
e&&e.preventDefault();
|
2163 |
|
2164 |
+
SFSI('#sfsi_plus_jivo_offline_chat').hide();
|
2165 |
+
SFSI('#sfsi_dummy_chat_icon').show();
|
2166 |
+
}
|
js/custom.js
CHANGED
@@ -303,12 +303,102 @@ SFSI(document).ready(function(s) {
|
|
303 |
});
|
304 |
SFSI(".sfsi_plus_widget").css("min-height", "auto");
|
305 |
}, 200);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
306 |
});
|
307 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
308 |
//hiding popup on close button
|
309 |
function sfsiplushidemepopup()
|
310 |
{
|
311 |
SFSI(".sfsi_plus_FrntInner").fadeOut();
|
312 |
}
|
313 |
|
314 |
-
var sfsiplus_initTop = new Array();
|
|
303 |
});
|
304 |
SFSI(".sfsi_plus_widget").css("min-height", "auto");
|
305 |
}, 200);
|
306 |
+
jQuery(document).find('.wp-block-ultimate-social-media-plus-sfsi-plus-share-block').each(function(index,target){
|
307 |
+
console.log('gutenberg',target);
|
308 |
+
var actual_target= jQuery(target).find('.sfsi_plus_block');
|
309 |
+
var align= jQuery(actual_target).attr('data-align');
|
310 |
+
var maxPerRow= jQuery(actual_target).attr('data-count');
|
311 |
+
var iconType= jQuery(actual_target).attr('data-icon-type');
|
312 |
+
// console.log(iconType);
|
313 |
+
jQuery.ajax({
|
314 |
+
'url': '/wp-json/ultimate-social-media-plus/v1/icons/?url='+window.location.href+'&ractangle_icon='+('round'==iconType?0:1),
|
315 |
+
'method':'GET'
|
316 |
+
// 'data':{'is_admin':true,'share_url':'/'}
|
317 |
+
}).done((response)=>{
|
318 |
+
jQuery(actual_target).html(response);
|
319 |
+
if(iconType=='round'){
|
320 |
+
sfsi_plus_changeIconWidth(maxPerRow,target,align);
|
321 |
+
}else{
|
322 |
+
if('center'===align){
|
323 |
+
jQuery(target).find('.sfsi_plus_block_text_before_icon').css({'display':'inherit'});
|
324 |
+
}
|
325 |
+
jQuery(target).css({'text-align':align});
|
326 |
+
}
|
327 |
+
if(window.gapi){
|
328 |
+
window.gapi.plusone.go();window.gapi.plus.go();window.gapi.ytsubscribe.go();
|
329 |
+
};
|
330 |
+
if(window.twttr){
|
331 |
+
window.twttr.widgets.load();
|
332 |
+
};
|
333 |
+
if(window.IN && window.IN.parse){
|
334 |
+
window.IN.parse();
|
335 |
+
};
|
336 |
+
if(window.addthis){
|
337 |
+
if(window.addthis.toolbox){
|
338 |
+
window.addthis.toolbox('.addthis_button.sficn');
|
339 |
+
}else{
|
340 |
+
window.addthis.init();window.addthis.toolbox('.addthis_button.sficn');
|
341 |
+
}
|
342 |
+
};
|
343 |
+
if(window.PinUtils){
|
344 |
+
window.PinUtils.build();
|
345 |
+
};
|
346 |
+
if(window.FB){
|
347 |
+
if(window.FB.XFBML){
|
348 |
+
window.FB.XFBML.parse();
|
349 |
+
}
|
350 |
+
};
|
351 |
+
}).fail((response)=>{
|
352 |
+
// console.log(response,$('.sfsi_plus_block'));
|
353 |
+
jQuery(actual_target).html(response.responseText.replace('/\\/g',''));
|
354 |
+
});
|
355 |
+
});
|
356 |
+
if( undefined !==window.location.hash){
|
357 |
+
switch(window.location.hash){
|
358 |
+
case '#ui-id-3' : jQuery('#ui-id-3').click();
|
359 |
+
case '#ui-id-1' : jQuery('#ui-id-1').click();
|
360 |
+
}
|
361 |
+
}
|
362 |
+
// sfsi_plus_update_iconcount();
|
363 |
});
|
364 |
|
365 |
+
function sfsi_plus_update_iconcount(){
|
366 |
+
SFSI(".wp-block-ultimate-social-media-plus-sfsi-plus-share-block").each(function(){
|
367 |
+
var icon_count = SFSI(this).find(".sfsi_plus_block").attr('data-count');
|
368 |
+
var icon_align = SFSI(this).find(".sfsi_plus_block").attr('data-align');
|
369 |
+
// console.log(icon_count,icon_align,this,jQuery(this),jQuery(this).find('.sfsiplus_norm_row'));
|
370 |
+
// sfsi_plus_changeIconWidth(icon_count,this);
|
371 |
+
if(jQuery(this).find('.sfsiplus_norm_row').length<1){
|
372 |
+
setTimeout(function(){
|
373 |
+
// console.log(icon_count);
|
374 |
+
sfsi_plus_changeIconWidth(icon_count,this,icon_align);
|
375 |
+
},1000);
|
376 |
+
}else{
|
377 |
+
sfsi_plus_changeIconWidth(icon_count,this,icon_align);
|
378 |
+
}
|
379 |
+
});
|
380 |
+
}
|
381 |
+
|
382 |
+
function sfsi_plus_changeIconWidth(per_row=null,target,icon_align){
|
383 |
+
var iconWidth = parseInt(jQuery(target).find('.sfsiplus_norm_row div').css('width'))||40;
|
384 |
+
console.log('iconwidth',iconWidth,jQuery(target).find('.sfsiplus_norm_row'),jQuery(target).find('.sfsiplus_norm_row div').css('width'));
|
385 |
+
|
386 |
+
var iconMargin = parseInt(jQuery(target).find('.sfsiplus_norm_row div').css('margin-left'))||0;
|
387 |
+
|
388 |
+
var wrapperWidth = (iconWidth+iconMargin)*per_row;
|
389 |
+
jQuery(target).find('.sfsiplus_norm_row').css({'width':wrapperWidth+'px'});
|
390 |
+
jQuery(target).find('.sfsi_plus_block').css({'width':wrapperWidth+'px'});
|
391 |
+
jQuery(target).find('.sfsi_plus_block_text_before_icon').css({'padding-top':'12px'});
|
392 |
+
if('center'===icon_align){
|
393 |
+
jQuery(target).find('.sfsi_plus_block_text_before_icon').css({'display':'inherit'});
|
394 |
+
}
|
395 |
+
jQuery(target).css({'text-align':icon_align});
|
396 |
+
}
|
397 |
//hiding popup on close button
|
398 |
function sfsiplushidemepopup()
|
399 |
{
|
400 |
SFSI(".sfsi_plus_FrntInner").fadeOut();
|
401 |
}
|
402 |
|
403 |
+
var sfsiplus_initTop = new Array();
|
404 |
+
|
libs/controllers/sfsi_buttons_controller.php
CHANGED
@@ -585,6 +585,7 @@ function sfsi_plus_options_updater8()
|
|
585 |
$sfsi_plus_icons_floatMargin_right = isset($_POST["sfsi_plus_icons_floatMargin_right"]) ? $_POST["sfsi_plus_icons_floatMargin_right"]:'';
|
586 |
|
587 |
$sfsi_plus_place_item_manually = isset($_POST["sfsi_plus_place_item_manually"]) ? $_POST["sfsi_plus_place_item_manually"] : 'no';
|
|
|
588 |
$sfsi_plus_show_item_onposts = isset($_POST["sfsi_plus_show_item_onposts"]) ? $_POST["sfsi_plus_show_item_onposts"] : 'no';
|
589 |
$sfsi_plus_display_button_type = isset($_POST["sfsi_plus_display_button_type"]) ? $_POST["sfsi_plus_display_button_type"] : 'no';
|
590 |
|
@@ -618,6 +619,7 @@ function sfsi_plus_options_updater8()
|
|
618 |
'sfsi_plus_icons_floatMargin_left' => intval($sfsi_plus_icons_floatMargin_left),
|
619 |
'sfsi_plus_icons_floatMargin_right' => intval($sfsi_plus_icons_floatMargin_right),
|
620 |
'sfsi_plus_place_item_manually' => sanitize_text_field($sfsi_plus_place_item_manually),
|
|
|
621 |
'sfsi_plus_show_item_onposts' => sanitize_text_field($sfsi_plus_show_item_onposts),
|
622 |
'sfsi_plus_display_button_type' => sanitize_text_field($sfsi_plus_display_button_type),
|
623 |
'sfsi_plus_post_icons_size' => intval($sfsi_plus_post_icons_size),
|
@@ -1137,4 +1139,20 @@ function sfsi_plus_bannerOption(){
|
|
1137 |
}
|
1138 |
die;
|
1139 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1140 |
?>
|
585 |
$sfsi_plus_icons_floatMargin_right = isset($_POST["sfsi_plus_icons_floatMargin_right"]) ? $_POST["sfsi_plus_icons_floatMargin_right"]:'';
|
586 |
|
587 |
$sfsi_plus_place_item_manually = isset($_POST["sfsi_plus_place_item_manually"]) ? $_POST["sfsi_plus_place_item_manually"] : 'no';
|
588 |
+
$sfsi_plus_place_item_gutenberg = isset($_POST["sfsi_plus_place_item_gutenberg"]) ? $_POST["sfsi_plus_place_item_gutenberg"] : 'no';
|
589 |
$sfsi_plus_show_item_onposts = isset($_POST["sfsi_plus_show_item_onposts"]) ? $_POST["sfsi_plus_show_item_onposts"] : 'no';
|
590 |
$sfsi_plus_display_button_type = isset($_POST["sfsi_plus_display_button_type"]) ? $_POST["sfsi_plus_display_button_type"] : 'no';
|
591 |
|
619 |
'sfsi_plus_icons_floatMargin_left' => intval($sfsi_plus_icons_floatMargin_left),
|
620 |
'sfsi_plus_icons_floatMargin_right' => intval($sfsi_plus_icons_floatMargin_right),
|
621 |
'sfsi_plus_place_item_manually' => sanitize_text_field($sfsi_plus_place_item_manually),
|
622 |
+
'sfsi_plus_place_item_gutenberg' => sanitize_text_field($sfsi_plus_place_item_gutenberg),
|
623 |
'sfsi_plus_show_item_onposts' => sanitize_text_field($sfsi_plus_show_item_onposts),
|
624 |
'sfsi_plus_display_button_type' => sanitize_text_field($sfsi_plus_display_button_type),
|
625 |
'sfsi_plus_post_icons_size' => intval($sfsi_plus_post_icons_size),
|
1139 |
}
|
1140 |
die;
|
1141 |
}
|
1142 |
+
|
1143 |
+
add_action('wp_ajax_sfsiplusOfflineChatMessage','sfsi_plus_OfflineChatMessage');
|
1144 |
+
|
1145 |
+
function sfsi_plus_OfflineChatMessage(){
|
1146 |
+
error_reporting(0);
|
1147 |
+
extract($_POST);
|
1148 |
+
$body="<table><tr><th>Site:</th><td>".home_url()."</td></tr><tr><th>Email:</th><td>".$email."</td></tr><tr><th>Message:</th><td>".$message."</td></tr></table>";
|
1149 |
+
$sent=wp_mail('help@ultimatelysocial.com',"New question from user",$body,array('Content-Type: text/html; charset=UTF-8'));
|
1150 |
+
if(isset($sent)&&(true===$sent)){
|
1151 |
+
echo "success";
|
1152 |
+
}else{
|
1153 |
+
echo "failure";
|
1154 |
+
}
|
1155 |
+
die();
|
1156 |
+
}
|
1157 |
+
|
1158 |
?>
|
libs/sfsi_gutenberg_block.php
CHANGED
@@ -65,9 +65,28 @@ function sfsi_plus_register_icon_route(){
|
|
65 |
"share_url"=>array(
|
66 |
"type"=>'string',
|
67 |
"sanitize_callback" => 'sanitize_text_field'
|
68 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
69 |
)
|
70 |
));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
}
|
72 |
|
73 |
add_action( 'rest_api_init', 'sfsi_plus_register_icon_route');
|
@@ -75,10 +94,209 @@ add_action( 'rest_api_init', 'sfsi_plus_register_icon_route');
|
|
75 |
function sfsi_plus_render_shortcode(){
|
76 |
ob_start();
|
77 |
if(isset($_GET['ractangle_icon']) && 1==$_GET['ractangle_icon']){
|
78 |
-
$returndata=
|
79 |
}else{
|
80 |
-
$returndata=
|
81 |
}
|
82 |
ob_clean();
|
83 |
return rest_ensure_response($returndata);
|
84 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
"share_url"=>array(
|
66 |
"type"=>'string',
|
67 |
"sanitize_callback" => 'sanitize_text_field'
|
68 |
+
),
|
69 |
+
"admin_refereal" => array(
|
70 |
+
"type" => 'string',
|
71 |
+
"sanitize_callback" => 'sanitize_text_field'
|
72 |
+
),
|
73 |
+
"ractangle_icon" => array(
|
74 |
+
"type" => 'string',
|
75 |
+
"sanitize_callback" => 'sanitize_text_field'
|
76 |
+
),
|
77 |
+
|
78 |
)
|
79 |
));
|
80 |
+
// register_rest_route(SFSI_PLUS_DOMAIN.'/v1','settings',array(
|
81 |
+
// 'methods'=> WP_REST_Server::READABLE,
|
82 |
+
// 'callback' => 'sfsi_plus_fetch_settings',
|
83 |
+
// // 'args'=>array(
|
84 |
+
// // "share_url"=>array(
|
85 |
+
// // "type"=>'string',
|
86 |
+
// // "sanitize_callback" => 'sanitize_text_field'
|
87 |
+
// // )
|
88 |
+
// // )
|
89 |
+
// ));
|
90 |
}
|
91 |
|
92 |
add_action( 'rest_api_init', 'sfsi_plus_register_icon_route');
|
94 |
function sfsi_plus_render_shortcode(){
|
95 |
ob_start();
|
96 |
if(isset($_GET['ractangle_icon']) && 1==$_GET['ractangle_icon']){
|
97 |
+
$returndata=sfsi_plus_render_gutenberg_rectangle(null,null,isset($_GET['share_url'])?$_GET['share_url']:home_url());
|
98 |
}else{
|
99 |
+
$returndata=sfsi_plus_render_gutenberg_round(null,null,isset($_GET['share_url'])?$_GET['share_url']:null,isset($_GET['admin_refereal'])?$_GET['admin_refereal']:null );
|
100 |
}
|
101 |
ob_clean();
|
102 |
return rest_ensure_response($returndata);
|
103 |
}
|
104 |
+
|
105 |
+
|
106 |
+
function sfsi_plus_render_gutenberg_round($args = null, $content = null,$share_url=null, $is_admin){
|
107 |
+
$instance = array("showf" => 1, "title" => '');
|
108 |
+
$sfsi_plus_section8_options = get_option("sfsi_plus_section8_options");
|
109 |
+
$sfsi_plus_section8_options = unserialize($sfsi_plus_section8_options);
|
110 |
+
$sfsi_plus_place_item_gutenberg = isset($sfsi_plus_section8_options['sfsi_plus_place_item_gutenberg'])?$sfsi_plus_section8_options['sfsi_plus_place_item_gutenberg']:'no';
|
111 |
+
if($sfsi_plus_place_item_gutenberg == "yes")
|
112 |
+
{
|
113 |
+
$return = '';
|
114 |
+
if(!isset($before_widget)): $before_widget =''; endif;
|
115 |
+
if(!isset($after_widget)): $after_widget =''; endif;
|
116 |
+
|
117 |
+
/*Our variables from the widget settings. */
|
118 |
+
$title = apply_filters('widget_title', $instance['title'] );
|
119 |
+
$show_info = isset( $instance['show_info'] ) ? $instance['show_info'] : false;
|
120 |
+
global $is_floter;
|
121 |
+
$return.= $before_widget;
|
122 |
+
/* Display the widget title */
|
123 |
+
if ( $title ) $return .= $before_title . $title . $after_title;
|
124 |
+
$return .= '<div class="sfsi_plus_widget">';
|
125 |
+
// $return .= '<div id="sfsi_plus_wDiv"></div>';
|
126 |
+
/* Link the main icons function */
|
127 |
+
$return .= sfsi_plus_check_visiblity(0,$share_url,'static');
|
128 |
+
$return .= '<div style="clear: both;"></div>';
|
129 |
+
$return .= '</div>';
|
130 |
+
$return .= $after_widget;
|
131 |
+
return $return;
|
132 |
+
}else{
|
133 |
+
if($is_admin=='true'){
|
134 |
+
return __('Kindly go to setting page and check the option "Show them in the Gutenberg editor " under section 3', SFSI_PLUS_DOMAIN);
|
135 |
+
}
|
136 |
+
return ;
|
137 |
+
}
|
138 |
+
}
|
139 |
+
|
140 |
+
function sfsi_plus_render_gutenberg_rectangle($args = null, $content = null,$share_url=null){
|
141 |
+
if($share_url===null){
|
142 |
+
$share_url=home_url();
|
143 |
+
}
|
144 |
+
$sfsi_plus_section8_options = get_option("sfsi_plus_section8_options");
|
145 |
+
$sfsi_plus_section8_options = unserialize($sfsi_plus_section8_options);
|
146 |
+
$sfsi_plus_place_item_gutenberg = isset($sfsi_plus_section8_options['sfsi_plus_place_item_gutenberg'])?$sfsi_plus_section8_options['sfsi_plus_place_item_gutenberg']:'no';
|
147 |
+
if($sfsi_plus_place_item_gutenberg == "yes")
|
148 |
+
{
|
149 |
+
$sfsi_section6= unserialize(get_option('sfsi_plus_section6_options',false));
|
150 |
+
|
151 |
+
//new options that are added on the third questions
|
152 |
+
//so in this function we are replacing all the past options
|
153 |
+
//that were saved under option6 by new settings saved under option8
|
154 |
+
$sfsi_section8= unserialize(get_option('sfsi_plus_section8_options',false));
|
155 |
+
// $sfsi_plus_show_item_onposts = $sfsi_section8['sfsi_plus_show_item_onposts'];
|
156 |
+
//new options that are added on the third questions
|
157 |
+
|
158 |
+
//checking for standard icons
|
159 |
+
if(!isset($sfsi_section8['sfsi_plus_rectsub']))
|
160 |
+
{
|
161 |
+
$sfsi_section8['sfsi_plus_rectsub'] = 'no';
|
162 |
+
}
|
163 |
+
if(!isset($sfsi_section8['sfsi_plus_rectfb']))
|
164 |
+
{
|
165 |
+
$sfsi_section8['sfsi_plus_rectfb'] = 'yes';
|
166 |
+
}
|
167 |
+
if(!isset($sfsi_section8['sfsi_plus_rectgp']))
|
168 |
+
{
|
169 |
+
$sfsi_section8['sfsi_plus_rectgp'] = 'yes';
|
170 |
+
}
|
171 |
+
if(!isset($sfsi_section8['sfsi_plus_recttwtr']))
|
172 |
+
{
|
173 |
+
$sfsi_section8['sfsi_plus_recttwtr'] = 'no';
|
174 |
+
}
|
175 |
+
if(!isset($sfsi_section8['sfsi_plus_rectpinit']))
|
176 |
+
{
|
177 |
+
$sfsi_section8['sfsi_plus_rectpinit'] = 'no';
|
178 |
+
}
|
179 |
+
if(!isset($sfsi_section8['sfsi_plus_rectfbshare']))
|
180 |
+
{
|
181 |
+
$sfsi_section8['sfsi_plus_rectfbshare'] = 'no';
|
182 |
+
}
|
183 |
+
//checking for standard icons
|
184 |
+
|
185 |
+
/* check if option activated in admin or not */
|
186 |
+
//if($sfsi_section6['sfsi_plus_show_Onposts']=="yes")
|
187 |
+
//removing following condition for now
|
188 |
+
/*if($sfsi_section8['sfsi_plus_show_Onposts']=="yes")
|
189 |
+
{*/
|
190 |
+
$permalink = $share_url;
|
191 |
+
$title = get_the_title();
|
192 |
+
$sfsiLikeWith="45px;";
|
193 |
+
|
194 |
+
/* check for counter display */
|
195 |
+
//if($sfsi_section6['sfsi_plus_icons_DisplayCounts']=="yes")
|
196 |
+
|
197 |
+
if($sfsi_section8['sfsi_plus_icons_DisplayCounts']=="yes")
|
198 |
+
{
|
199 |
+
$show_count=1;
|
200 |
+
$sfsiLikeWith="75px;";
|
201 |
+
}
|
202 |
+
else
|
203 |
+
{
|
204 |
+
$show_count=0;
|
205 |
+
}
|
206 |
+
|
207 |
+
//$txt=(isset($sfsi_section6['sfsi_plus_textBefor_icons']))? $sfsi_section6['sfsi_plus_textBefor_icons'] : "Share this Post with :" ;
|
208 |
+
// $txt=(isset($sfsi_section8['sfsi_plus_textBefor_icons']))? $sfsi_section8['sfsi_plus_textBefor_icons'] : "Please follow and like us:" ;
|
209 |
+
//$float= $sfsi_section6['sfsi_plus_icons_alignment'];
|
210 |
+
$float= $sfsi_section8['sfsi_plus_icons_alignment'];
|
211 |
+
if($sfsi_section8['sfsi_plus_rectsub'] == 'yes' || $sfsi_section8['sfsi_plus_rectfb'] == 'yes' || $sfsi_section8['sfsi_plus_rectgp'] == 'yes' || $sfsi_section8['sfsi_plus_recttwtr'] == 'yes' || $sfsi_section8['sfsi_plus_rectpinit'] == 'yes' || $sfsi_section8['sfsi_plus_rectfbshare'] == 'yes')
|
212 |
+
{
|
213 |
+
$icons="<div class='sfsi_plus_Sicons ".$float."' style='float:".$float."'><div style='display: inline-block;margin-bottom: 0; margin-left: 0; margin-right: 8px; margin-top: 0; vertical-align: middle;width: auto;'><span>".$txt."</span></div>";
|
214 |
+
}
|
215 |
+
if($sfsi_section8['sfsi_plus_rectsub'] == 'yes')
|
216 |
+
{
|
217 |
+
if($show_count){$sfsiLikeWithsub = "93px";}else{$sfsiLikeWithsub = "64px";}
|
218 |
+
if(!isset($sfsiLikeWithsub)){$sfsiLikeWithsub = $sfsiLikeWith;}
|
219 |
+
$icons.="<div class='sf_subscrbe' style='display: inline-block;vertical-align: top;width: auto;'>".sfsi_plus_Subscribelike($permalink,$show_count)."</div>";
|
220 |
+
}
|
221 |
+
if($sfsi_section8['sfsi_plus_rectfb'] == 'yes' || $sfsi_section8['sfsi_plus_rectfbshare'] == 'yes')
|
222 |
+
{
|
223 |
+
if($show_count){}else{$sfsiLikeWithfb = "48px";}
|
224 |
+
if(!isset($sfsiLikeWithfb)){$sfsiLikeWithfb = $sfsiLikeWith;}
|
225 |
+
$icons.="<div class='sf_fb' style='display: inline-block;vertical-align: top;width: auto;'>".sfsi_plus_FBlike($permalink,$show_count)."</div>";
|
226 |
+
}
|
227 |
+
|
228 |
+
if($sfsi_section8['sfsi_plus_recttwtr'] == 'yes')
|
229 |
+
{
|
230 |
+
if($show_count){$sfsiLikeWithtwtr = "77px";}else{$sfsiLikeWithtwtr = "56px";}
|
231 |
+
if(!isset($sfsiLikeWithtwtr)){$sfsiLikeWithtwtr = $sfsiLikeWith;}
|
232 |
+
$icons.="<div class='sf_twiter' style='display: inline-block;vertical-align: top;width: auto;'>".sfsi_plus_twitterlike($permalink,$show_count)."</div>";
|
233 |
+
}
|
234 |
+
if($sfsi_section8['sfsi_plus_rectpinit'] == 'yes')
|
235 |
+
{
|
236 |
+
if($show_count){$sfsiLikeWithpinit = "100px";}else{$sfsiLikeWithpinit = "auto";}
|
237 |
+
$icons.="<div class='sf_pinit' style='display: inline-block;text-align:left;vertical-align: top;width: ".$sfsiLikeWithpinit.";'>".sfsi_plus_pinitpinterest($permalink,$show_count)."</div>";
|
238 |
+
}
|
239 |
+
if($sfsi_section8['sfsi_plus_rectgp'] == 'yes')
|
240 |
+
{
|
241 |
+
if($show_count){$sfsiLikeWithpingogl = "63px";}else{$sfsiLikeWithpingogl = "auto";}
|
242 |
+
$icons.="<div class='sf_google' style='display: inline-block;vertical-align: top; width:".$sfsiLikeWithpingogl.";'>".sfsi_plus_googlePlus($permalink,$show_count)."</div>";
|
243 |
+
}
|
244 |
+
$icons.="</div>";
|
245 |
+
return $icons;
|
246 |
+
} else{
|
247 |
+
if($is_admin=='true'){
|
248 |
+
return __('Kindly go to setting page and check the option "Show them in the Gutenberg editor " under section 3', SFSI_PLUS_DOMAIN);
|
249 |
+
}
|
250 |
+
return ;
|
251 |
+
}
|
252 |
+
|
253 |
+
}
|
254 |
+
|
255 |
+
// function sfsi_plus_fetch_settings(){
|
256 |
+
// ob_start();
|
257 |
+
// $option8= unserialize(get_option('sfsi_plus_section8_options',false));
|
258 |
+
// // $returndata = $option8;
|
259 |
+
// $returndata=array(
|
260 |
+
// 'textBeforeShare'=>(isset($option8['sfsi_plus_textBefor_icons'])?$option8['sfsi_plus_textBefor_icons']:''),
|
261 |
+
// 'iconType'=>(isset($option8['sfsi_plus_display_button_type'])?($option8['sfsi_plus_display_button_type']):'');
|
262 |
+
// 'iconAlignemt'=>isset()
|
263 |
+
// );
|
264 |
+
// ob_clean();
|
265 |
+
// return rest_ensure_response($returndata);
|
266 |
+
// }
|
267 |
+
|
268 |
+
|
269 |
+
function sfsi_plus_gutenberg_share_block_init(){
|
270 |
+
$post_types = get_post_types(array('public'=>true,'_builtin'=>true));
|
271 |
+
foreach($post_types as $post_type){
|
272 |
+
register_meta($post_type,'sfsi_plus_gutenberg_text_before_share',array(
|
273 |
+
'show_in_rest' => true,
|
274 |
+
'single' => true,
|
275 |
+
// 'type' => 'string'
|
276 |
+
));
|
277 |
+
register_meta($post_type,'sfsi_plus_gutenberg_show_text_before_share',array(
|
278 |
+
'show_in_rest' => true,
|
279 |
+
'single' => true,
|
280 |
+
// 'type' => 'string'
|
281 |
+
));
|
282 |
+
register_meta($post_type,'sfsi_plus_gutenberg_icon_type',array(
|
283 |
+
'show_in_rest' => true,
|
284 |
+
'single' => true,
|
285 |
+
// 'type' => 'string'
|
286 |
+
));
|
287 |
+
register_meta($post_type,'sfsi_plus_gutenberg_icon_alignemt',array(
|
288 |
+
'show_in_rest' => true,
|
289 |
+
'single' => true,
|
290 |
+
// 'type' => 'string'
|
291 |
+
));
|
292 |
+
register_meta($post_type,'sfsi_plus_gutenburg_max_per_row',array(
|
293 |
+
'show_in_rest' => true,
|
294 |
+
'single' => true,
|
295 |
+
// 'type' => 'string'
|
296 |
+
));
|
297 |
+
}
|
298 |
+
}
|
299 |
+
|
300 |
+
add_action( 'init','sfsi_plus_gutenberg_share_block_init' );
|
301 |
+
|
302 |
+
?>
|
libs/sfsi_install_uninstall.php
CHANGED
@@ -12,7 +12,7 @@ function sfsi_plus_update_plugin()
|
|
12 |
}
|
13 |
|
14 |
//Install version
|
15 |
-
update_option("sfsi_plus_pluginVersion", "
|
16 |
|
17 |
if(!get_option('sfsi_plus_serverphpVersionnotification'))
|
18 |
{
|
12 |
}
|
13 |
|
14 |
//Install version
|
15 |
+
update_option("sfsi_plus_pluginVersion", "3.00");
|
16 |
|
17 |
if(!get_option('sfsi_plus_serverphpVersionnotification'))
|
18 |
{
|
libs/sfsi_widget.php
CHANGED
@@ -118,7 +118,7 @@ function register_sfsi_plus_widgets()
|
|
118 |
add_action( 'widgets_init', 'register_sfsi_plus_widgets' );
|
119 |
|
120 |
/* check the icons visiblity */
|
121 |
-
function sfsi_plus_check_visiblity($isFloter=0,$share_url=null)
|
122 |
{
|
123 |
global $wpdb;
|
124 |
/* Access the saved settings in database */
|
@@ -136,7 +136,7 @@ function sfsi_plus_check_visiblity($isFloter=0,$share_url=null)
|
|
136 |
|
137 |
$icons_alignment = $sfsi_section5['sfsi_plus_icons_Alignment'];
|
138 |
$position = 'position:absolute;';
|
139 |
-
$position1 = 'position:
|
140 |
$jquery='<script>';
|
141 |
|
142 |
$jquery .= 'jQuery(".sfsi_plus_widget").each(function( index ) {
|
@@ -245,7 +245,8 @@ function sfsi_plus_check_visiblity($isFloter=0,$share_url=null)
|
|
245 |
|
246 |
/* magnage the icons in saved order in admin */
|
247 |
$custom_icons_order = unserialize($sfsi_section5['sfsi_plus_CustomIcons_order']);
|
248 |
-
|
|
|
249 |
$icons_order = array(
|
250 |
'0' => '',
|
251 |
$sfsi_section5['sfsi_plus_rssIcon_order']=>'rss',
|
118 |
add_action( 'widgets_init', 'register_sfsi_plus_widgets' );
|
119 |
|
120 |
/* check the icons visiblity */
|
121 |
+
function sfsi_plus_check_visiblity($isFloter=0,$share_url=null,$container_position='absolute')
|
122 |
{
|
123 |
global $wpdb;
|
124 |
/* Access the saved settings in database */
|
136 |
|
137 |
$icons_alignment = $sfsi_section5['sfsi_plus_icons_Alignment'];
|
138 |
$position = 'position:absolute;';
|
139 |
+
$position1 = 'position:'.$container_position.';';
|
140 |
$jquery='<script>';
|
141 |
|
142 |
$jquery .= 'jQuery(".sfsi_plus_widget").each(function( index ) {
|
245 |
|
246 |
/* magnage the icons in saved order in admin */
|
247 |
$custom_icons_order = unserialize($sfsi_section5['sfsi_plus_CustomIcons_order']);
|
248 |
+
// var_dump($sfsi_plus_section1_options['sfsi_custom_files']); die();
|
249 |
+
$icons = (isset($sfsi_plus_section1_options['sfsi_custom_files']))?(!is_string($sfsi_plus_section1_options['sfsi_custom_files'])?unserialize($sfsi_plus_section1_options['sfsi_custom_files'],false):$sfsi_plus_section1_options['sfsi_custom_files']):(array());
|
250 |
$icons_order = array(
|
251 |
'0' => '',
|
252 |
$sfsi_section5['sfsi_plus_rssIcon_order']=>'rss',
|
readme.txt
CHANGED
@@ -2,8 +2,8 @@
|
|
2 |
Contributors: socialsharepro
|
3 |
Tags: Share, sharing, share buttons, share button, share social media, share icons, social buttons, sharing buttons, sharing icons, social media icons, social share, social sharing
|
4 |
Requires at least: 3.0
|
5 |
-
Tested up to: 5.0
|
6 |
-
Stable tag:
|
7 |
License: GPLv2
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
@@ -445,11 +445,15 @@ The premium plugin offrs many more social buttons from other social media platfo
|
|
445 |
|
446 |
== Changelog ==
|
447 |
|
|
|
|
|
|
|
448 |
= 2.9.9 =
|
449 |
* Duplicate IDs removed from icon's link
|
450 |
-
* Facebook share counts (rectangle icons) do not show
|
451 |
-
*
|
452 |
-
*
|
|
|
453 |
|
454 |
= 2.9.8 =
|
455 |
* Update: Display counts can’t be manually updated
|
@@ -796,5 +800,5 @@ The premium plugin offrs many more social buttons from other social media platfo
|
|
796 |
|
797 |
== Upgrade Notice ==
|
798 |
|
799 |
-
=
|
800 |
* Please update
|
2 |
Contributors: socialsharepro
|
3 |
Tags: Share, sharing, share buttons, share button, share social media, share icons, social buttons, sharing buttons, sharing icons, social media icons, social share, social sharing
|
4 |
Requires at least: 3.0
|
5 |
+
Tested up to: 5.0.2
|
6 |
+
Stable tag: 3.0.0
|
7 |
License: GPLv2
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
445 |
|
446 |
== Changelog ==
|
447 |
|
448 |
+
= 3.0.0 =
|
449 |
+
* Updated gutenberg block to incorporate current changes. Added support for multiple controls on block inspector controls.
|
450 |
+
|
451 |
= 2.9.9 =
|
452 |
* Duplicate IDs removed from icon's link
|
453 |
+
* Facebook share counts (rectangle icons) do not show
|
454 |
+
* specificfeeds.com links changed to https
|
455 |
+
* Remove google like
|
456 |
+
* Click on G+ in firefox opens a new window
|
457 |
|
458 |
= 2.9.8 =
|
459 |
* Update: Display counts can’t be manually updated
|
800 |
|
801 |
== Upgrade Notice ==
|
802 |
|
803 |
+
= 3.0.0 =
|
804 |
* Please update
|
ultimate_social_media_icons.php
CHANGED
@@ -7,7 +7,7 @@ Author: social share pro
|
|
7 |
Text Domain: ultimate-social-media-plus
|
8 |
Domain Path: /languages
|
9 |
Author URI: http://socialshare.pro/
|
10 |
-
Version:
|
11 |
License: GPLv2
|
12 |
*/
|
13 |
|
@@ -103,7 +103,7 @@ register_deactivation_hook(__FILE__, 'sfsi_plus_deactivate_plugin');
|
|
103 |
//register_uninstall_hook(__FILE__, 'sfsi_plus_Unistall_plugin');
|
104 |
|
105 |
/*Plugin version setup*/
|
106 |
-
if(!get_option('sfsi_plus_pluginVersion') || get_option('sfsi_plus_pluginVersion') <
|
107 |
{
|
108 |
add_action("init", "sfsi_plus_update_plugin");
|
109 |
}
|
@@ -1205,7 +1205,7 @@ function sfsi_plus_ask_for_help($viewNumber){ ?>
|
|
1205 |
|
1206 |
<img src="<?php echo SFSI_PLUS_PLUGURL."images/questionmark.png"?>"/>
|
1207 |
|
1208 |
-
<span>Questions? <a target="_blank" href="#" onclick="event.preventDefault();
|
1209 |
|
1210 |
</div>
|
1211 |
|
7 |
Text Domain: ultimate-social-media-plus
|
8 |
Domain Path: /languages
|
9 |
Author URI: http://socialshare.pro/
|
10 |
+
Version: 3.0.0
|
11 |
License: GPLv2
|
12 |
*/
|
13 |
|
103 |
//register_uninstall_hook(__FILE__, 'sfsi_plus_Unistall_plugin');
|
104 |
|
105 |
/*Plugin version setup*/
|
106 |
+
if(!get_option('sfsi_plus_pluginVersion') || get_option('sfsi_plus_pluginVersion') < 3.00)
|
107 |
{
|
108 |
add_action("init", "sfsi_plus_update_plugin");
|
109 |
}
|
1205 |
|
1206 |
<img src="<?php echo SFSI_PLUS_PLUGURL."images/questionmark.png"?>"/>
|
1207 |
|
1208 |
+
<span>Questions? <a target="_blank" href="#" onclick="event.preventDefault();sfsi_plus_open_chat(event)"><b>Ask us</b></a></span>
|
1209 |
|
1210 |
</div>
|
1211 |
|
views/sfsi_chat_on_admin_pannel.php
ADDED
@@ -0,0 +1,112 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
global $current_user;
|
3 |
+
$current_user=wp_get_current_user();
|
4 |
+
|
5 |
+
$email = $current_user->user_email;
|
6 |
+
?>
|
7 |
+
<div id="sfsi_plus_jivo_offline_chat" style="display:none">
|
8 |
+
<a href="" style="float:right;font-size:20px;margin-right:5px;color:#888;text-decoration: none;" onclick="sfsi_close_offline_chat(event)">X</a>
|
9 |
+
<p style="text-align:center" class="heading-text">No chat agent are available, However we'll still respond quickly.
|
10 |
+
<!-- <a target="_blank" href="https://goo.gl/MU6pTN#no-topic-0" >we'll still respond quickly</a> -->
|
11 |
+
</p>
|
12 |
+
<ul class="tab-changer">
|
13 |
+
<li class="tab-link active"><p style="text-align:center"><a href="#sfsi_technical"></a>Technical question<br><span>(for the free plugin)</span></span></p></li>
|
14 |
+
<li class="tab-link"><p style="text-align:center"><a href="#sfsi_sales"></a>Pre-sales question<br><span>(for the Premium plugin)</span></p></li>
|
15 |
+
</ul>
|
16 |
+
<div class="clear"></div>
|
17 |
+
<div class="tabs">
|
18 |
+
<div id="sfsi_technical" class="tab-content" style="text-align:center;display:block">
|
19 |
+
<p>Please ask your question in the...</p>
|
20 |
+
<div class="support-forum-green-div">
|
21 |
+
<a target="_blank" href="https://goo.gl/MU6pTN#no-topic-0" class="support-forum-green-bg">
|
22 |
+
<img src="<?php echo SFSI_PLUS_PLUGURL ?>images/support.png">
|
23 |
+
<p class="support-forum">Support Forum</p>
|
24 |
+
</a>
|
25 |
+
</div>
|
26 |
+
<p class="sfsi-button-right-side" ><span class="sfsi-button-right-side-icon"></span>Click here</p>
|
27 |
+
<p>We‘ll respond <span style="text-decoration: underline;font-weight:500">quickly!</span></p>
|
28 |
+
</div>
|
29 |
+
<div id="sfsi_sales" class="tab-content" style="display:none">
|
30 |
+
|
31 |
+
<div style="display:block" class="before_message_sent">
|
32 |
+
<p class="right-message" style="display:none">Please also check the <a href="">FAQ</a></p>
|
33 |
+
<form action="#" method="POST" >
|
34 |
+
<div>
|
35 |
+
<label for="question">Your question: </label>
|
36 |
+
<textarea id="question" name="question"></textarea>
|
37 |
+
</div>
|
38 |
+
<div>
|
39 |
+
<div style="width:60%;float:left">
|
40 |
+
<label for="email">Your email:</label>
|
41 |
+
<input type="email" name="email" value="<?php echo $email; ?>">
|
42 |
+
</div>
|
43 |
+
<div style="width:35%;float:right">
|
44 |
+
<input type="submit" value="Send message">
|
45 |
+
</div>
|
46 |
+
<div class="clear"></div>
|
47 |
+
</div>
|
48 |
+
</form>
|
49 |
+
</div>
|
50 |
+
<div style="display:none" class="after_message_sent">
|
51 |
+
<h2>Thank you!</h2>
|
52 |
+
<h3>We‘ll get back to you ASAP.</h3>
|
53 |
+
<button class="chat_btn" onclick="sfsi_close_offline_chat(event)">Close window</button>
|
54 |
+
</div>
|
55 |
+
</div>
|
56 |
+
</div>
|
57 |
+
|
58 |
+
</div>
|
59 |
+
<!-- Start jivo chat code -->
|
60 |
+
|
61 |
+
<script type='text/javascript'>
|
62 |
+
var sfsi_plus_jivo_init=function(){ var widget_id =window.sfsi_plus_jivo_widget_id= 'heGfAHWfsn';var d=document;var w=window;function l(){var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true;s.src = '//code.jivosite.com/script/widget/'+widget_id; var ss = document.getElementsByTagName('script')[0]; ss.parentNode.insertBefore(s, ss);}if(d.readyState=='complete'){l();}else{if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}};
|
63 |
+
var sfsi_dummy_chat_icon={};
|
64 |
+
sfsi_dummy_chat_icon.element=document.createElement('div');
|
65 |
+
sfsi_dummy_chat_icon.element.id="sfsi_dummy_chat_icon";
|
66 |
+
sfsi_dummy_chat_icon.element.style="position:fixed; bottom:0;right:10px;width:350px;height:74px;cursor:pointer;background-image:url('<?php echo SFSI_PLUS_PLUGURL.'images/Chat_with_us_bar_light_green.png' ?>');background-position: -12.5px -11.5px;background-size: 374px 101px;border-top-left-radius: 8px;border-top-right-radius: 8px;";
|
67 |
+
function sfsi_plus_open_chat(){
|
68 |
+
// console.log('window.jivo_api',window.jivo_api);
|
69 |
+
if(window.jivo_api){
|
70 |
+
// console.log('window.jivo_api.chatMode',window.jivo_api.chatMode());
|
71 |
+
if( window.jivo_api.chatMode()==='online'){
|
72 |
+
// console.log('window.jivo_api.showProactiveInvitation',window.jivo_api.showProactiveInvitation('How can I help you?'));
|
73 |
+
window.jivo_api.open();
|
74 |
+
}else{
|
75 |
+
jQuery('#jivo-iframe-container').remove();
|
76 |
+
jQuery('script[src="//code.jivosite.com/script/widget/'+sfsi_plus_jivo_widget_id+'"]').remove();
|
77 |
+
jQuery('#sfsi_plus_jivo_offline_chat').show();
|
78 |
+
}
|
79 |
+
}else{
|
80 |
+
sfsi_plus_jivo_init();
|
81 |
+
}
|
82 |
+
// jQuery(sfsi_dummy_chat_icon.element).html("<p style='text-align: center;font-size: 18px;'>Loading...</p>");
|
83 |
+
jQuery(sfsi_dummy_chat_icon.element).hide();
|
84 |
+
}
|
85 |
+
sfsi_dummy_chat_icon.element.onclick=sfsi_plus_open_chat;
|
86 |
+
var jivo_onLoadCallback = function(){
|
87 |
+
if(jivo_api.chatMode()==='online'){
|
88 |
+
jivo_api.showProactiveInvitation('How can I help you?');
|
89 |
+
}else{
|
90 |
+
jQuery('#jivo-iframe-container').remove();
|
91 |
+
jQuery('script[src="//code.jivosite.com/script/widget/'+sfsi_plus_jivo_widget_id+'"]').remove();
|
92 |
+
jQuery('#sfsi_plus_jivo_offline_chat').show();
|
93 |
+
}
|
94 |
+
// jQuery(sfsi_dummy_chat_icon.element).hide();
|
95 |
+
};
|
96 |
+
// sfsi_dummy_chat_icon.heading= document.createElement('p');
|
97 |
+
// sfsi_dummy_chat_icon.warning= document.createElement('p');
|
98 |
+
// sfsi_dummy_chat_icon.heading.style="margin: 0;text-align: center;font-size: 18px;margin-top: 5px;"
|
99 |
+
// sfsi_dummy_chat_icon.warning.style="font-size:11px;text-align: center;margin-bottom: 0;margin-top: 4px;"
|
100 |
+
// sfsi_dummy_chat_icon.heading.appendChild(document.createTextNode("Questions? Chat with us!"));
|
101 |
+
// sfsi_dummy_chat_icon.warning.appendChild(document.createTextNode("This will establish connection to the chat servers."));
|
102 |
+
// sfsi_dummy_chat_icon.element.appendChild(sfsi_dummy_chat_icon.heading);
|
103 |
+
// sfsi_dummy_chat_icon.element.appendChild(sfsi_dummy_chat_icon.warning);
|
104 |
+
sfsi_dummy_chat_icon.body=document.getElementsByTagName('body');
|
105 |
+
if(sfsi_dummy_chat_icon.body.length>0){
|
106 |
+
sfsi_dummy_chat_icon.body[0].appendChild(sfsi_dummy_chat_icon.element);
|
107 |
+
}else{
|
108 |
+
document.appendChild(sfsi_dummy_chat_icon.element);
|
109 |
+
}
|
110 |
+
</script>
|
111 |
+
|
112 |
+
<!-- End jivo chat code -->
|
views/sfsi_option_view8.php
CHANGED
@@ -53,6 +53,9 @@
|
|
53 |
$option8['sfsi_plus_place_item_manually'] = (isset($option8['sfsi_plus_place_item_manually']))
|
54 |
? sanitize_text_field($option8['sfsi_plus_place_item_manually'])
|
55 |
: '';
|
|
|
|
|
|
|
56 |
$option8['sfsi_plus_display_button_type'] = (isset($option8['sfsi_plus_display_button_type']))
|
57 |
? sanitize_text_field($option8['sfsi_plus_display_button_type'])
|
58 |
: '';
|
@@ -273,7 +276,7 @@
|
|
273 |
</li>
|
274 |
|
275 |
<!--Fourth Section-->
|
276 |
-
<li class="">
|
277 |
<div class="radio_section tb_4_ck" onclick="sfsiplus_toggleflotpage(this);"><input name="sfsi_plus_show_item_onposts" <?php echo ($option8['sfsi_plus_show_item_onposts']=='yes') ? 'checked="true"' : '' ;?> id="sfsi_plus_show_item_onposts" type="checkbox" value="yes" class="styled" /></div>
|
278 |
<div class="sfsiplus_right_info">
|
279 |
<p>
|
@@ -506,6 +509,32 @@
|
|
506 |
</ul>
|
507 |
</div>
|
508 |
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
509 |
<!-- pinterest on image over icon -->
|
510 |
<li class="row sfsiplus_show_via_onhover disabled_checkbox">
|
511 |
|
53 |
$option8['sfsi_plus_place_item_manually'] = (isset($option8['sfsi_plus_place_item_manually']))
|
54 |
? sanitize_text_field($option8['sfsi_plus_place_item_manually'])
|
55 |
: '';
|
56 |
+
$option8['sfsi_plus_place_item_gutenberg'] = (isset($option8['sfsi_plus_place_item_gutenberg']))
|
57 |
+
? sanitize_text_field($option8['sfsi_plus_place_item_gutenberg'])
|
58 |
+
: 'no';
|
59 |
$option8['sfsi_plus_display_button_type'] = (isset($option8['sfsi_plus_display_button_type']))
|
60 |
? sanitize_text_field($option8['sfsi_plus_display_button_type'])
|
61 |
: '';
|
276 |
</li>
|
277 |
|
278 |
<!--Fourth Section-->
|
279 |
+
<li class="sfsiplusbeforeafterpostselector">
|
280 |
<div class="radio_section tb_4_ck" onclick="sfsiplus_toggleflotpage(this);"><input name="sfsi_plus_show_item_onposts" <?php echo ($option8['sfsi_plus_show_item_onposts']=='yes') ? 'checked="true"' : '' ;?> id="sfsi_plus_show_item_onposts" type="checkbox" value="yes" class="styled" /></div>
|
281 |
<div class="sfsiplus_right_info">
|
282 |
<p>
|
509 |
</ul>
|
510 |
</div>
|
511 |
</li>
|
512 |
+
|
513 |
+
<!--Fifth Section-->
|
514 |
+
<li class="sfsiplusplaceusinggutenberg">
|
515 |
+
<div class="radio_section tb_4_ck" onclick="checkforinfoslction(this);"><input name="sfsi_plus_place_item_gutenberg" <?php echo ($option8['sfsi_plus_place_item_gutenberg']=='yes') ? 'checked="true"' : '' ;?> id="sfsi_plus_place_item_gutenberg" type="checkbox" value="yes" class="styled" /></div>
|
516 |
+
<div class="sfsiplus_right_info">
|
517 |
+
<p>
|
518 |
+
<span class="sfsiplus_toglepstpgspn">
|
519 |
+
<?php _e( 'Show them in the Gutenberg editor', SFSI_PLUS_DOMAIN ); ?>
|
520 |
+
</span><br>
|
521 |
+
<?php
|
522 |
+
if($option8['sfsi_plus_place_item_gutenberg']=='yes')
|
523 |
+
{
|
524 |
+
$label_style = 'style="display:block; font-size: 15px;"';
|
525 |
+
}
|
526 |
+
else
|
527 |
+
{
|
528 |
+
$label_style = 'style="font-size: 15px;"';
|
529 |
+
}
|
530 |
+
?>
|
531 |
+
<label class="sfsiplus_sub-subtitle ckckslctn" <?php echo $label_style;?>>
|
532 |
+
<?php _e('Look for this sign',SFSI_PLUS_DOMAIN); ?> <img style="margin-bottom:-4px" width="20" src="<?php echo SFSI_PLUS_PLUGURL ?>images/sfsi_block_icon.jpg"> <?php _e(' in your Gutenberg editor and click on it. Then a new block with the icons will be added.',SFSI_PLUS_DOMAIN);?>
|
533 |
+
|
534 |
+
</label>
|
535 |
+
</p>
|
536 |
+
</div>
|
537 |
+
</li>
|
538 |
<!-- pinterest on image over icon -->
|
539 |
<li class="row sfsiplus_show_via_onhover disabled_checkbox">
|
540 |
|
views/sfsi_options_view.php
CHANGED
@@ -83,17 +83,17 @@
|
|
83 |
<div class="have-questions">
|
84 |
<img src="<?php echo SFSI_PLUS_PLUGURL ?>images/question.png">
|
85 |
<p class="have-quest">Have questions?</p>
|
86 |
-
<p class="ask-question">Ask them in the...</p>
|
87 |
</div>
|
88 |
<div class="support-forum-green-div">
|
89 |
-
<a target="_blank" href="
|
90 |
<img src="<?php echo SFSI_PLUS_PLUGURL ?>images/support.png">
|
91 |
-
<p class="support-forum">
|
92 |
</a>
|
93 |
</div>
|
94 |
-
<div class="respond-text">
|
95 |
<p>We'll try to respond ASAP!</p>
|
96 |
-
</div>
|
97 |
</div>
|
98 |
</div>
|
99 |
|
@@ -235,8 +235,4 @@
|
|
235 |
}
|
236 |
});
|
237 |
</script>
|
238 |
-
|
239 |
-
<script type='text/javascript'>
|
240 |
-
(function(){ var widget_id = 'g9lexlJ3Wa';var d=document;var w=window;function l(){var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true;s.src = '//code.jivosite.com/script/widget/'+widget_id; var ss = document.getElementsByTagName('script')[0]; ss.parentNode.insertBefore(s, ss);}if(d.readyState=='complete'){l();}else{if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}})();
|
241 |
-
</script>
|
242 |
-
<!-- {/literal} END JIVOSITE CODE -->
|
83 |
<div class="have-questions">
|
84 |
<img src="<?php echo SFSI_PLUS_PLUGURL ?>images/question.png">
|
85 |
<p class="have-quest">Have questions?</p>
|
86 |
+
<!-- <p class="ask-question">Ask them in the...</p> -->
|
87 |
</div>
|
88 |
<div class="support-forum-green-div">
|
89 |
+
<a target="_blank" href="#" onclick="event.preventDefault();sfsi_plus_open_chat(event)" class="support-forum-green-bg">
|
90 |
<img src="<?php echo SFSI_PLUS_PLUGURL ?>images/support.png">
|
91 |
+
<p class="support-forum">Chat with us!</p>
|
92 |
</a>
|
93 |
</div>
|
94 |
+
<!-- <div class="respond-text">
|
95 |
<p>We'll try to respond ASAP!</p>
|
96 |
+
</div> -->
|
97 |
</div>
|
98 |
</div>
|
99 |
|
235 |
}
|
236 |
});
|
237 |
</script>
|
238 |
+
<?php include(SFSI_PLUS_DOCROOT.'/views/sfsi_chat_on_admin_pannel.php'); ?>
|
|
|
|
|
|
|
|