MediaWiki:Common.js: различия между версиями
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) Нет описания правки Метка: ручная отмена |
||
| (не показано 200 промежуточных версий 3 участников) | |||
| Строка 12: | Строка 12: | ||
}, | }, | ||
iframeMapRender: { | iframeMapRender: { | ||
srcdoc: '<! | srcdoc: '<!doctype html><html data-bs-theme="dark" lang="ru"><head><meta charset="UTF-8"><meta content="width=device-width,initial-scale=1" name="viewport"><meta content="Просмотр карт SS14 Kerisar" name="description"><title>🗺 Просмотр карт SS14 Kerisar 🦎</title><link crossorigin="anonymous" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" rel="stylesheet"><style>img{image-rendering:pixelated}body{background-color:#2c2c2c;height:100%;overflow:auto}.image-container{cursor:move;width:100%;height:70vh;border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden;margin-top:20px;margin-left:auto;margin-right:auto}.fullscreen--image-container{background:#212529}.image-container img{cursor:move;max-width:none;height:auto;position:absolute;top:0;left:0;transform-origin:center;z-index:100}:fullscreen .image-container{border:none}#buttonsGroupPlus{display:flex;justify-content:space-between;flex-direction:row}</style><style>html{height:100%;background:radial-gradient(ellipse at bottom,#1b2735 0,#090a0f 100%);overflow:hidden}#stars{width:1px;height:1px;background:0 0;box-shadow:1087px 810px #fff,1020px 1604px #fff,762px 1888px #fff,690px 1374px #fff,988px 1584px #fff,1637px 583px #fff,256px 1972px #fff,657px 1637px #fff,1754px 1121px #fff,1317px 799px #fff,1175px 1699px #fff,1419px 1205px #fff,1304px 767px #fff,290px 449px #fff,902px 978px #fff,1315px 1377px #fff,244px 324px #fff,255px 1777px #fff,316px 213px #fff,1652px 105px #fff,762px 1048px #fff,1329px 1534px #fff,1050px 31px #fff,216px 1069px #fff,867px 1066px #fff,5px 621px #fff,1094px 1225px #fff,419px 237px #fff,1876px 240px #fff,1422px 868px #fff,1889px 978px #fff,892px 718px #fff,141px 1377px #fff,1236px 1224px #fff,1393px 1010px #fff,1505px 1190px #fff,618px 982px #fff,688px 319px #fff,1113px 1855px #fff,102px 1965px #fff,847px 47px #fff,1146px 1330px #fff,95px 347px #fff,1227px 712px #fff,1018px 1562px #fff,1437px 468px #fff,1129px 737px #fff,835px 1792px #fff,1157px 1551px #fff,72px 17px #fff,1522px 87px #fff,1990px 303px #fff,1147px 1132px #fff,631px 1449px #fff,515px 1306px #fff,540px 472px #fff,1868px 1534px #fff,910px 1868px #fff,717px 539px #fff,922px 1962px #fff,1150px 138px #fff,78px 163px #fff,697px 276px #fff,1787px 1827px #fff,1587px 1399px #fff,1681px 1347px #fff,161px 1435px #fff,928px 1175px #fff,1388px 1398px #fff,1415px 1775px #fff,1121px 1321px #fff,1385px 154px #fff,1321px 352px #fff,1285px 429px #fff,256px 1386px #fff,1218px 903px #fff,648px 724px #fff,1793px 891px #fff,1150px 382px #fff,687px 31px #fff,78px 1610px #fff,1019px 1565px #fff,152px 676px #fff,1429px 743px #fff,1577px 1488px #fff,1386px 1719px #fff,1471px 275px #fff,1459px 337px #fff,1513px 159px #fff,1387px 1281px #fff,57px 982px #fff,439px 997px #fff,846px 469px #fff,395px 907px #fff,206px 143px #fff,161px 517px #fff,1488px 1996px #fff,1149px 14px #fff,431px 1956px #fff,469px 1859px #fff,577px 479px #fff,1811px 1092px #fff,294px 1231px #fff,1076px 914px #fff,1324px 426px #fff,553px 1532px #fff,1121px 1188px #fff,148px 1130px #fff,803px 1961px #fff,1653px 1568px #fff,1291px 1732px #fff,382px 878px #fff,299px 1294px #fff,1049px 9px #fff,1697px 1530px #fff,257px 1774px #fff,512px 512px #fff,1305px 575px #fff,808px 1257px #fff,779px 655px #fff,1776px 779px #fff,1750px 1487px #fff,782px 524px #fff,1723px 242px #fff,339px 1487px #fff,1422px 1937px #fff,571px 101px #fff,330px 1814px #fff,874px 994px #fff,1029px 1632px #fff,393px 1168px #fff,398px 617px #fff,678px 746px #fff,1637px 1205px #fff,1076px 1463px #fff,1247px 1858px #fff,1750px 505px #fff,803px 857px #fff,1489px 1702px #fff,1669px 812px #fff,86px 1644px #fff,1625px 1352px #fff,717px 902px #fff,167px 1609px #fff,1883px 711px #fff,1954px 772px #fff,616px 1273px #fff,777px 608px #fff,1262px 1716px #fff,1835px 375px #fff,481px 1484px #fff,1653px 834px #fff,533px 201px #fff,1771px 1636px #fff,1178px 896px #fff,411px 1324px #fff,1886px 710px #fff,368px 1048px #fff,74px 1729px #fff,1567px 1521px #fff,1520px 1264px #fff,1999px 134px #fff,1569px 557px #fff,571px 1786px #fff,1854px 1702px #fff,134px 392px #fff,1475px 827px #fff,1101px 533px #fff,1753px 1548px #fff,629px 1763px #fff,271px 703px #fff,1373px 1564px #fff,68px 668px #fff,930px 1037px #fff,1693px 1762px #fff,1718px 1648px #fff,1585px 25px #fff,1422px 1009px #fff,1405px 188px #fff,140px 894px #fff,560px 1483px #fff,133px 33px #fff,41px 1593px #fff,496px 1534px #fff,582px 693px #fff,178px 1793px #fff,1763px 1410px #fff,1575px 885px #fff,38px 346px #fff,1439px 393px #fff,1700px 380px #fff,1161px 1887px #fff,1315px 1727px #fff,1413px 1971px #fff,129px 1432px #fff,1252px 204px #fff,945px 169px #fff,1530px 1167px #fff,1172px 707px #fff,30px 385px #fff,1005px 1144px #fff,1167px 1477px #fff,217px 1298px #fff,1764px 1164px #fff,1962px 483px #fff,438px 662px #fff,189px 1102px #fff,976px 615px #fff,1633px 740px #fff,169px 1627px #fff,112px 323px #fff,98px 1865px #fff,875px 1918px #fff,67px 1px #fff,1127px 1326px #fff,1296px 929px #fff,1643px 193px #fff,1259px 219px #fff,139px 509px #fff,1903px 1788px #fff,1301px 312px #fff,230px 1960px #fff,1717px 992px #fff,1945px 1338px #fff,216px 642px #fff,903px 733px #fff,1433px 1910px #fff,1366px 198px #fff,244px 1894px #fff,137px 961px #fff,1075px 1459px #fff,143px 1676px #fff,199px 1636px #fff,193px 1415px #fff,757px 665px #fff,158px 201px #fff,168px 3px #fff,225px 1937px #fff,1088px 222px #fff,1793px 1182px #fff,998px 407px #fff,1300px 904px #fff,652px 800px #fff,811px 53px #fff,1062px 1717px #fff,65px 1176px #fff,1524px 1941px #fff,201px 655px #fff,626px 1896px #fff,775px 1462px #fff,342px 1639px #fff,991px 149px #fff,162px 325px #fff,1941px 1009px #fff,1042px 1507px #fff,1736px 181px #fff,1960px 1649px #fff,1858px 1244px #fff,896px 1407px #fff,1986px 11px #fff,902px 979px #fff,818px 272px #fff,1455px 1832px #fff,794px 701px #fff,1567px 36px #fff,781px 176px #fff,1256px 772px #fff,1763px 1439px #fff,439px 491px #fff,9px 148px #fff,809px 1203px #fff,698px 907px #fff,90px 842px #fff,294px 1810px #fff,1146px 116px #fff,69px 550px #fff,516px 1160px #fff,1931px 486px #fff,1428px 1717px #fff,455px 1574px #fff,667px 1338px #fff,264px 13px #fff,300px 1935px #fff,1572px 1723px #fff,870px 69px #fff,199px 1268px #fff,1411px 1414px #fff,1955px 716px #fff,1005px 1873px #fff,1723px 797px #fff,574px 1472px #fff,129px 1289px #fff,190px 815px #fff,1680px 1863px #fff,24px 97px #fff,1378px 831px #fff,435px 233px #fff,1197px 1793px #fff,341px 1735px #fff,1058px 305px #fff,442px 1760px #fff,876px 1367px #fff,1455px 708px #fff,1222px 1682px #fff,83px 325px #fff,243px 694px #fff,1183px 390px #fff,922px 1353px #fff,1937px 85px #fff,1816px 304px #fff,166px 1024px #fff,1297px 462px #fff,427px 1722px #fff,1662px 598px #fff,1267px 1645px #fff,1614px 1111px #fff,990px 205px #fff,1455px 736px #fff,1300px 1737px #fff,155px 801px #fff,1918px 319px #fff,1763px 97px #fff,436px 643px #fff,1877px 259px #fff,213px 1148px #fff,1083px 1508px #fff,1330px 1265px #fff,144px 1523px #fff,326px 160px #fff,678px 359px #fff,270px 112px #fff,1257px 1969px #fff,1838px 279px #fff,1853px 670px #fff,534px 1907px #fff,1596px 150px #fff,1458px 1222px #fff,618px 480px #fff,1550px 989px #fff,1420px 289px #fff,431px 1738px #fff,1913px 944px #fff,330px 1712px #fff,1364px 704px #fff,29px 1778px #fff,762px 1445px #fff,974px 899px #fff,1006px 1953px #fff,1373px 464px #fff,1355px 110px #fff,79px 310px #fff,818px 1998px #fff,1036px 1290px #fff,631px 1724px #fff,1762px 1077px #fff,782px 757px #fff,36px 125px #fff,1860px 1466px #fff,1217px 1795px #fff,304px 457px #fff,476px 363px #fff,1285px 700px #fff,609px 1910px #fff,1829px 439px #fff,1242px 1988px #fff,1228px 1500px #fff,1538px 832px #fff,1227px 1977px #fff,718px 763px #fff,876px 1297px #fff,742px 1965px #fff,1068px 1837px #fff,998px 1521px #fff,1485px 603px #fff,1991px 1046px #fff,361px 112px #fff,976px 271px #fff,1099px 1419px #fff,601px 1959px #fff,283px 1228px #fff,1879px 1473px #fff,99px 303px #fff,1741px 146px #fff,1889px 1169px #fff,1571px 1993px #fff,91px 1602px #fff,735px 1950px #fff,1291px 1281px #fff,243px 1716px #fff,1125px 963px #fff,1074px 826px #fff,1388px 1595px #fff,20px 1517px #fff,230px 1461px #fff,1177px 1429px #fff,1661px 1091px #fff,905px 1908px #fff,733px 515px #fff,25px 1948px #fff,611px 54px #fff,1962px 1710px #fff,1736px 1201px #fff,890px 1026px #fff,392px 1125px #fff,1768px 1260px #fff,560px 1278px #fff,1501px 741px #fff,1343px 750px #fff,853px 432px #fff,1056px 724px #fff,1767px 1014px #fff,1148px 1467px #fff,1655px 1677px #fff,1929px 1719px #fff,854px 866px #fff,187px 79px #fff,1789px 345px #fff,1797px 51px #fff,958px 1562px #fff,3px 1753px #fff,1707px 1916px #fff,1786px 1197px #fff,343px 1527px #fff,1687px 957px #fff,949px 893px #fff,1718px 705px #fff,1603px 1386px #fff,1514px 557px #fff,1179px 1336px #fff,444px 471px #fff,1967px 1397px #fff,298px 511px #fff,1952px 1950px #fff,479px 1526px #fff,156px 381px #fff,617px 1348px #fff,87px 1842px #fff,1416px 1174px #fff,473px 682px #fff,1948px 1066px #fff,382px 958px #fff,979px 1266px #fff,132px 887px #fff,1149px 465px #fff,486px 1067px #fff,245px 839px #fff,843px 604px #fff,1216px 1885px #fff,1369px 298px #fff,1775px 1023px #fff,519px 365px #fff,1254px 1945px #fff,1577px 969px #fff,1307px 581px #fff,1958px 492px #fff,1559px 27px #fff,1004px 1011px #fff,99px 695px #fff,1130px 37px #fff,1053px 881px #fff,1470px 1074px #fff,1701px 1422px #fff,822px 8px #fff,1175px 841px #fff,494px 136px #fff,1544px 65px #fff,1516px 355px #fff,1403px 121px #fff,1241px 163px #fff,341px 379px #fff,580px 1043px #fff,1026px 766px #fff,141px 987px #fff,1591px 1773px #fff,1915px 1032px #fff,428px 107px #fff,949px 574px #fff,144px 592px #fff,1429px 569px #fff,1605px 1488px #fff,1420px 1360px #fff,235px 360px #fff,1091px 546px #fff,588px 1719px #fff,476px 960px #fff,336px 310px #fff,253px 1120px #fff,456px 917px #fff,1774px 742px #fff,1809px 1315px #fff,959px 136px #fff,919px 790px #fff,494px 1449px #fff,5px 342px #fff,349px 1350px #fff,98px 524px #fff,1644px 1275px #fff,955px 1075px #fff,1519px 1777px #fff,446px 1389px #fff,1835px 607px #fff,1052px 54px #fff,600px 1678px #fff,1424px 1936px #fff,1204px 684px #fff,708px 1760px #fff,1265px 1851px #fff,421px 848px #fff,362px 163px #fff,589px 101px #fff,98px 1907px #fff,1619px 1537px #fff,1023px 997px #fff,1035px 605px #fff,879px 1631px #fff,514px 731px #fff,1098px 16px #fff,1265px 1636px #fff,1025px 707px #fff,1982px 1975px #fff,1016px 1285px #fff,117px 713px #fff,1160px 1567px #fff,916px 575px #fff,1155px 1807px #fff,1897px 744px #fff,769px 856px #fff,540px 307px #fff,13px 686px #fff,1138px 51px #fff,1516px 1719px #fff,78px 518px #fff,80px 1800px #fff,234px 1160px #fff,1607px 1688px #fff,1535px 1448px #fff,1584px 1641px #fff,824px 1464px #fff,1243px 882px #fff,48px 1280px #fff,416px 505px #fff,1164px 1576px #fff,579px 135px #fff,1871px 1674px #fff,1278px 926px #fff,496px 1457px #fff,965px 724px #fff,719px 787px #fff,250px 874px #fff,1641px 1483px #fff,1107px 697px #fff,184px 1473px #fff,419px 1337px #fff,1346px 953px #fff,1615px 1484px #fff,1256px 1932px #fff,352px 1564px #fff,1640px 900px #fff,1802px 850px #fff,39px 145px #fff,1761px 1082px #fff,1338px 1727px #fff,552px 419px #fff,1346px 83px #fff,1747px 817px #fff,1407px 500px #fff,1784px 357px #fff,1310px 1032px #fff,1156px 606px #fff,1437px 281px #fff,1635px 1358px #fff,1210px 500px #fff,574px 412px #fff,230px 836px #fff,1596px 1491px #fff,1323px 462px #fff,243px 1989px #fff,125px 1058px #fff,1932px 727px #fff,1652px 907px #fff,1625px 249px #fff,1063px 884px #fff,1945px 1338px #fff,51px 1387px #fff,1119px 711px #fff,814px 317px #fff,250px 1038px #fff,714px 1624px #fff,917px 1351px #fff,670px 275px #fff,986px 943px #fff,206px 362px #fff,1110px 448px #fff,57px 1872px #fff,1388px 1899px #fff,342px 370px #fff,67px 74px #fff,1123px 336px #fff,1936px 1082px #fff,366px 1370px #fff,1683px 1866px #fff,407px 806px #fff,261px 1013px #fff,1505px 647px #fff,85px 169px #fff,635px 1873px #fff,1370px 901px #fff,448px 225px #fff,348px 1838px #fff,745px 710px #fff,1329px 306px #fff,247px 154px #fff,1467px 768px #fff,141px 1946px #fff,1282px 1338px #fff,803px 1296px #fff,1229px 156px #fff,1257px 788px #fff,1247px 739px #fff,1954px 1827px #fff,1623px 224px #fff,120px 473px #fff,509px 1541px #fff,221px 537px #fff,1196px 845px #fff,1982px 1382px #fff,1164px 1570px #fff,436px 1201px #fff,912px 506px #fff,1232px 1901px #fff,1721px 935px #fff,1116px 532px #fff,1514px 1144px #fff,1303px 1778px #fff,1326px 1175px #fff,345px 1048px #fff,818px 1751px #fff,1360px 951px #fff,991px 1030px #fff,1997px 408px #fff,1165px 540px #fff,755px 1278px #fff,1532px 1131px #fff,1347px 191px #fff,1485px 310px #fff,1941px 930px #fff,357px 691px #fff,1275px 1924px #fff,1234px 1472px #fff,936px 1367px #fff,1516px 221px #fff,1746px 1491px #fff,412px 877px #fff,663px 963px #fff,1935px 1408px #fff,1688px 1259px #fff,1307px 1432px #fff,522px 204px #fff,1096px 1878px #fff,826px 1442px #fff,458px 341px #fff,902px 487px #fff,1113px 854px #fff,1783px 809px #fff,34px 883px #fff,631px 1454px #fff,1514px 1566px #fff,428px 1406px #fff,1583px 1590px #fff,1617px 571px #fff,354px 1099px #fff,1458px 1142px #fff,19px 1710px #fff,589px 11px #fff,1300px 1424px #fff,1354px 270px #fff,1867px 1202px #fff,1158px 1079px #fff,828px 1848px #fff,300px 420px #fff,1442px 741px #fff,1249px 6px #fff,1577px 1802px #fff,1826px 1068px #fff,438px 825px #fff,759px 1478px #fff,78px 1920px #fff,284px 1825px #fff,1903px 963px #fff,1188px 1633px #fff,534px 1009px #fff,536px 124px #fff,521px 1521px #fff,1669px 313px #fff,1509px 529px #fff,1718px 394px #fff,1443px 668px #fff,433px 831px #fff,1773px 130px #fff,723px 429px #fff;animation:animStar 500s linear infinite}#stars:after{content:" ";position:absolute;top:2000px;width:1px;height:1px;background:0 0;box-shadow:1087px 810px #fff,1020px 1604px #fff,762px 1888px #fff,690px 1374px #fff,988px 1584px #fff,1637px 583px #fff,256px 1972px #fff,657px 1637px #fff,1754px 1121px #fff,1317px 799px #fff,1175px 1699px #fff,1419px 1205px #fff,1304px 767px #fff,290px 449px #fff,902px 978px #fff,1315px 1377px #fff,244px 324px #fff,255px 1777px #fff,316px 213px #fff,1652px 105px #fff,762px 1048px #fff,1329px 1534px #fff,1050px 31px #fff,216px 1069px #fff,867px 1066px #fff,5px 621px #fff,1094px 1225px #fff,419px 237px #fff,1876px 240px #fff,1422px 868px #fff,1889px 978px #fff,892px 718px #fff,141px 1377px #fff,1236px 1224px #fff,1393px 1010px #fff,1505px 1190px #fff,618px 982px #fff,688px 319px #fff,1113px 1855px #fff,102px 1965px #fff,847px 47px #fff,1146px 1330px #fff,95px 347px #fff,1227px 712px #fff,1018px 1562px #fff,1437px 468px #fff,1129px 737px #fff,835px 1792px #fff,1157px 1551px #fff,72px 17px #fff,1522px 87px #fff,1990px 303px #fff,1147px 1132px #fff,631px 1449px #fff,515px 1306px #fff,540px 472px #fff,1868px 1534px #fff,910px 1868px #fff,717px 539px #fff,922px 1962px #fff,1150px 138px #fff,78px 163px #fff,697px 276px #fff,1787px 1827px #fff,1587px 1399px #fff,1681px 1347px #fff,161px 1435px #fff,928px 1175px #fff,1388px 1398px #fff,1415px 1775px #fff,1121px 1321px #fff,1385px 154px #fff,1321px 352px #fff,1285px 429px #fff,256px 1386px #fff,1218px 903px #fff,648px 724px #fff,1793px 891px #fff,1150px 382px #fff,687px 31px #fff,78px 1610px #fff,1019px 1565px #fff,152px 676px #fff,1429px 743px #fff,1577px 1488px #fff,1386px 1719px #fff,1471px 275px #fff,1459px 337px #fff,1513px 159px #fff,1387px 1281px #fff,57px 982px #fff,439px 997px #fff,846px 469px #fff,395px 907px #fff,206px 143px #fff,161px 517px #fff,1488px 1996px #fff,1149px 14px #fff,431px 1956px #fff,469px 1859px #fff,577px 479px #fff,1811px 1092px #fff,294px 1231px #fff,1076px 914px #fff,1324px 426px #fff,553px 1532px #fff,1121px 1188px #fff,148px 1130px #fff,803px 1961px #fff,1653px 1568px #fff,1291px 1732px #fff,382px 878px #fff,299px 1294px #fff,1049px 9px #fff,1697px 1530px #fff,257px 1774px #fff,512px 512px #fff,1305px 575px #fff,808px 1257px #fff,779px 655px #fff,1776px 779px #fff,1750px 1487px #fff,782px 524px #fff,1723px 242px #fff,339px 1487px #fff,1422px 1937px #fff,571px 101px #fff,330px 1814px #fff,874px 994px #fff,1029px 1632px #fff,393px 1168px #fff,398px 617px #fff,678px 746px #fff,1637px 1205px #fff,1076px 1463px #fff,1247px 1858px #fff,1750px 505px #fff,803px 857px #fff,1489px 1702px #fff,1669px 812px #fff,86px 1644px #fff,1625px 1352px #fff,717px 902px #fff,167px 1609px #fff,1883px 711px #fff,1954px 772px #fff,616px 1273px #fff,777px 608px #fff,1262px 1716px #fff,1835px 375px #fff,481px 1484px #fff,1653px 834px #fff,533px 201px #fff,1771px 1636px #fff,1178px 896px #fff,411px 1324px #fff,1886px 710px #fff,368px 1048px #fff,74px 1729px #fff,1567px 1521px #fff,1520px 1264px #fff,1999px 134px #fff,1569px 557px #fff,571px 1786px #fff,1854px 1702px #fff,134px 392px #fff,1475px 827px #fff,1101px 533px #fff,1753px 1548px #fff,629px 1763px #fff,271px 703px #fff,1373px 1564px #fff,68px 668px #fff,930px 1037px #fff,1693px 1762px #fff,1718px 1648px #fff,1585px 25px #fff,1422px 1009px #fff,1405px 188px #fff,140px 894px #fff,560px 1483px #fff,133px 33px #fff,41px 1593px #fff,496px 1534px #fff,582px 693px #fff,178px 1793px #fff,1763px 1410px #fff,1575px 885px #fff,38px 346px #fff,1439px 393px #fff,1700px 380px #fff,1161px 1887px #fff,1315px 1727px #fff,1413px 1971px #fff,129px 1432px #fff,1252px 204px #fff,945px 169px #fff,1530px 1167px #fff,1172px 707px #fff,30px 385px #fff,1005px 1144px #fff,1167px 1477px #fff,217px 1298px #fff,1764px 1164px #fff,1962px 483px #fff,438px 662px #fff,189px 1102px #fff,976px 615px #fff,1633px 740px #fff,169px 1627px #fff,112px 323px #fff,98px 1865px #fff,875px 1918px #fff,67px 1px #fff,1127px 1326px #fff,1296px 929px #fff,1643px 193px #fff,1259px 219px #fff,139px 509px #fff,1903px 1788px #fff,1301px 312px #fff,230px 1960px #fff,1717px 992px #fff,1945px 1338px #fff,216px 642px #fff,903px 733px #fff,1433px 1910px #fff,1366px 198px #fff,244px 1894px #fff,137px 961px #fff,1075px 1459px #fff,143px 1676px #fff,199px 1636px #fff,193px 1415px #fff,757px 665px #fff,158px 201px #fff,168px 3px #fff,225px 1937px #fff,1088px 222px #fff,1793px 1182px #fff,998px 407px #fff,1300px 904px #fff,652px 800px #fff,811px 53px #fff,1062px 1717px #fff,65px 1176px #fff,1524px 1941px #fff,201px 655px #fff,626px 1896px #fff,775px 1462px #fff,342px 1639px #fff,991px 149px #fff,162px 325px #fff,1941px 1009px #fff,1042px 1507px #fff,1736px 181px #fff,1960px 1649px #fff,1858px 1244px #fff,896px 1407px #fff,1986px 11px #fff,902px 979px #fff,818px 272px #fff,1455px 1832px #fff,794px 701px #fff,1567px 36px #fff,781px 176px #fff,1256px 772px #fff,1763px 1439px #fff,439px 491px #fff,9px 148px #fff,809px 1203px #fff,698px 907px #fff,90px 842px #fff,294px 1810px #fff,1146px 116px #fff,69px 550px #fff,516px 1160px #fff,1931px 486px #fff,1428px 1717px #fff,455px 1574px #fff,667px 1338px #fff,264px 13px #fff,300px 1935px #fff,1572px 1723px #fff,870px 69px #fff,199px 1268px #fff,1411px 1414px #fff,1955px 716px #fff,1005px 1873px #fff,1723px 797px #fff,574px 1472px #fff,129px 1289px #fff,190px 815px #fff,1680px 1863px #fff,24px 97px #fff,1378px 831px #fff,435px 233px #fff,1197px 1793px #fff,341px 1735px #fff,1058px 305px #fff,442px 1760px #fff,876px 1367px #fff,1455px 708px #fff,1222px 1682px #fff,83px 325px #fff,243px 694px #fff,1183px 390px #fff,922px 1353px #fff,1937px 85px #fff,1816px 304px #fff,166px 1024px #fff,1297px 462px #fff,427px 1722px #fff,1662px 598px #fff,1267px 1645px #fff,1614px 1111px #fff,990px 205px #fff,1455px 736px #fff,1300px 1737px #fff,155px 801px #fff,1918px 319px #fff,1763px 97px #fff,436px 643px #fff,1877px 259px #fff,213px 1148px #fff,1083px 1508px #fff,1330px 1265px #fff,144px 1523px #fff,326px 160px #fff,678px 359px #fff,270px 112px #fff,1257px 1969px #fff,1838px 279px #fff,1853px 670px #fff,534px 1907px #fff,1596px 150px #fff,1458px 1222px #fff,618px 480px #fff,1550px 989px #fff,1420px 289px #fff,431px 1738px #fff,1913px 944px #fff,330px 1712px #fff,1364px 704px #fff,29px 1778px #fff,762px 1445px #fff,974px 899px #fff,1006px 1953px #fff,1373px 464px #fff,1355px 110px #fff,79px 310px #fff,818px 1998px #fff,1036px 1290px #fff,631px 1724px #fff,1762px 1077px #fff,782px 757px #fff,36px 125px #fff,1860px 1466px #fff,1217px 1795px #fff,304px 457px #fff,476px 363px #fff,1285px 700px #fff,609px 1910px #fff,1829px 439px #fff,1242px 1988px #fff,1228px 1500px #fff,1538px 832px #fff,1227px 1977px #fff,718px 763px #fff,876px 1297px #fff,742px 1965px #fff,1068px 1837px #fff,998px 1521px #fff,1485px 603px #fff,1991px 1046px #fff,361px 112px #fff,976px 271px #fff,1099px 1419px #fff,601px 1959px #fff,283px 1228px #fff,1879px 1473px #fff,99px 303px #fff,1741px 146px #fff,1889px 1169px #fff,1571px 1993px #fff,91px 1602px #fff,735px 1950px #fff,1291px 1281px #fff,243px 1716px #fff,1125px 963px #fff,1074px 826px #fff,1388px 1595px #fff,20px 1517px #fff,230px 1461px #fff,1177px 1429px #fff,1661px 1091px #fff,905px 1908px #fff,733px 515px #fff,25px 1948px #fff,611px 54px #fff,1962px 1710px #fff,1736px 1201px #fff,890px 1026px #fff,392px 1125px #fff,1768px 1260px #fff,560px 1278px #fff,1501px 741px #fff,1343px 750px #fff,853px 432px #fff,1056px 724px #fff,1767px 1014px #fff,1148px 1467px #fff,1655px 1677px #fff,1929px 1719px #fff,854px 866px #fff,187px 79px #fff,1789px 345px #fff,1797px 51px #fff,958px 1562px #fff,3px 1753px #fff,1707px 1916px #fff,1786px 1197px #fff,343px 1527px #fff,1687px 957px #fff,949px 893px #fff,1718px 705px #fff,1603px 1386px #fff,1514px 557px #fff,1179px 1336px #fff,444px 471px #fff,1967px 1397px #fff,298px 511px #fff,1952px 1950px #fff,479px 1526px #fff,156px 381px #fff,617px 1348px #fff,87px 1842px #fff,1416px 1174px #fff,473px 682px #fff,1948px 1066px #fff,382px 958px #fff,979px 1266px #fff,132px 887px #fff,1149px 465px #fff,486px 1067px #fff,245px 839px #fff,843px 604px #fff,1216px 1885px #fff,1369px 298px #fff,1775px 1023px #fff,519px 365px #fff,1254px 1945px #fff,1577px 969px #fff,1307px 581px #fff,1958px 492px #fff,1559px 27px #fff,1004px 1011px #fff,99px 695px #fff,1130px 37px #fff,1053px 881px #fff,1470px 1074px #fff,1701px 1422px #fff,822px 8px #fff,1175px 841px #fff,494px 136px #fff,1544px 65px #fff,1516px 355px #fff,1403px 121px #fff,1241px 163px #fff,341px 379px #fff,580px 1043px #fff,1026px 766px #fff,141px 987px #fff,1591px 1773px #fff,1915px 1032px #fff,428px 107px #fff,949px 574px #fff,144px 592px #fff,1429px 569px #fff,1605px 1488px #fff,1420px 1360px #fff,235px 360px #fff,1091px 546px #fff,588px 1719px #fff,476px 960px #fff,336px 310px #fff,253px 1120px #fff,456px 917px #fff,1774px 742px #fff,1809px 1315px #fff,959px 136px #fff,919px 790px #fff,494px 1449px #fff,5px 342px #fff,349px 1350px #fff,98px 524px #fff,1644px 1275px #fff,955px 1075px #fff,1519px 1777px #fff,446px 1389px #fff,1835px 607px #fff,1052px 54px #fff,600px 1678px #fff,1424px 1936px #fff,1204px 684px #fff,708px 1760px #fff,1265px 1851px #fff,421px 848px #fff,362px 163px #fff,589px 101px #fff,98px 1907px #fff,1619px 1537px #fff,1023px 997px #fff,1035px 605px #fff,879px 1631px #fff,514px 731px #fff,1098px 16px #fff,1265px 1636px #fff,1025px 707px #fff,1982px 1975px #fff,1016px 1285px #fff,117px 713px #fff,1160px 1567px #fff,916px 575px #fff,1155px 1807px #fff,1897px 744px #fff,769px 856px #fff,540px 307px #fff,13px 686px #fff,1138px 51px #fff,1516px 1719px #fff,78px 518px #fff,80px 1800px #fff,234px 1160px #fff,1607px 1688px #fff,1535px 1448px #fff,1584px 1641px #fff,824px 1464px #fff,1243px 882px #fff,48px 1280px #fff,416px 505px #fff,1164px 1576px #fff,579px 135px #fff,1871px 1674px #fff,1278px 926px #fff,496px 1457px #fff,965px 724px #fff,719px 787px #fff,250px 874px #fff,1641px 1483px #fff,1107px 697px #fff,184px 1473px #fff,419px 1337px #fff,1346px 953px #fff,1615px 1484px #fff,1256px 1932px #fff,352px 1564px #fff,1640px 900px #fff,1802px 850px #fff,39px 145px #fff,1761px 1082px #fff,1338px 1727px #fff,552px 419px #fff,1346px 83px #fff,1747px 817px #fff,1407px 500px #fff,1784px 357px #fff,1310px 1032px #fff,1156px 606px #fff,1437px 281px #fff,1635px 1358px #fff,1210px 500px #fff,574px 412px #fff,230px 836px #fff,1596px 1491px #fff,1323px 462px #fff,243px 1989px #fff,125px 1058px #fff,1932px 727px #fff,1652px 907px #fff,1625px 249px #fff,1063px 884px #fff,1945px 1338px #fff,51px 1387px #fff,1119px 711px #fff,814px 317px #fff,250px 1038px #fff,714px 1624px #fff,917px 1351px #fff,670px 275px #fff,986px 943px #fff,206px 362px #fff,1110px 448px #fff,57px 1872px #fff,1388px 1899px #fff,342px 370px #fff,67px 74px #fff,1123px 336px #fff,1936px 1082px #fff,366px 1370px #fff,1683px 1866px #fff,407px 806px #fff,261px 1013px #fff,1505px 647px #fff,85px 169px #fff,635px 1873px #fff,1370px 901px #fff,448px 225px #fff,348px 1838px #fff,745px 710px #fff,1329px 306px #fff,247px 154px #fff,1467px 768px #fff,141px 1946px #fff,1282px 1338px #fff,803px 1296px #fff,1229px 156px #fff,1257px 788px #fff,1247px 739px #fff,1954px 1827px #fff,1623px 224px #fff,120px 473px #fff,509px 1541px #fff,221px 537px #fff,1196px 845px #fff,1982px 1382px #fff,1164px 1570px #fff,436px 1201px #fff,912px 506px #fff,1232px 1901px #fff,1721px 935px #fff,1116px 532px #fff,1514px 1144px #fff,1303px 1778px #fff,1326px 1175px #fff,345px 1048px #fff,818px 1751px #fff,1360px 951px #fff,991px 1030px #fff,1997px 408px #fff,1165px 540px #fff,755px 1278px #fff,1532px 1131px #fff,1347px 191px #fff,1485px 310px #fff,1941px 930px #fff,357px 691px #fff,1275px 1924px #fff,1234px 1472px #fff,936px 1367px #fff,1516px 221px #fff,1746px 1491px #fff,412px 877px #fff,663px 963px #fff,1935px 1408px #fff,1688px 1259px #fff,1307px 1432px #fff,522px 204px #fff,1096px 1878px #fff,826px 1442px #fff,458px 341px #fff,902px 487px #fff,1113px 854px #fff,1783px 809px #fff,34px 883px #fff,631px 1454px #fff,1514px 1566px #fff,428px 1406px #fff,1583px 1590px #fff,1617px 571px #fff,354px 1099px #fff,1458px 1142px #fff,19px 1710px #fff,589px 11px #fff,1300px 1424px #fff,1354px 270px #fff,1867px 1202px #fff,1158px 1079px #fff,828px 1848px #fff,300px 420px #fff,1442px 741px #fff,1249px 6px #fff,1577px 1802px #fff,1826px 1068px #fff,438px 825px #fff,759px 1478px #fff,78px 1920px #fff,284px 1825px #fff,1903px 963px #fff,1188px 1633px #fff,534px 1009px #fff,536px 124px #fff,521px 1521px #fff,1669px 313px #fff,1509px 529px #fff,1718px 394px #fff,1443px 668px #fff,433px 831px #fff,1773px 130px #fff,723px 429px #fff}#stars2{width:2px;height:2px;background:0 0;box-shadow:1313px 90px #fff,1439px 1727px #fff,1075px 1590px #fff,1289px 1501px #fff,397px 1439px #fff,46px 808px #fff,1892px 131px #fff,1887px 596px #fff,1854px 632px #fff,247px 619px #fff,321px 374px #fff,497px 1295px #fff,801px 1153px #fff,762px 1222px #fff,480px 1847px #fff,1862px 1611px #fff,991px 486px #fff,313px 1181px #fff,499px 507px #fff,1091px 270px #fff,1290px 350px #fff,1244px 220px #fff,1776px 1772px #fff,1259px 555px #fff,572px 1963px #fff,1920px 1534px #fff,669px 802px #fff,631px 1599px #fff,1916px 77px #fff,132px 411px #fff,982px 1481px #fff,1534px 102px #fff,1234px 1960px #fff,633px 1103px #fff,136px 1501px #fff,1413px 352px #fff,265px 1844px #fff,717px 1470px #fff,947px 1666px #fff,1909px 889px #fff,1713px 1544px #fff,442px 1692px #fff,1175px 1550px #fff,138px 908px #fff,218px 1444px #fff,1135px 466px #fff,1541px 1894px #fff,1613px 4px #fff,68px 779px #fff,1225px 1735px #fff,799px 1101px #fff,1331px 176px #fff,353px 1131px #fff,930px 972px #fff,175px 1216px #fff,481px 476px #fff,1268px 64px #fff,1330px 1809px #fff,1429px 290px #fff,455px 1347px #fff,709px 1196px #fff,1349px 618px #fff,1441px 1849px #fff,1724px 804px #fff,718px 1042px #fff,1612px 190px #fff,1683px 116px #fff,527px 265px #fff,35px 1804px #fff,1457px 142px #fff,24px 358px #fff,587px 113px #fff,1238px 713px #fff,40px 193px #fff,694px 330px #fff,1664px 353px #fff,1232px 1585px #fff,608px 155px #fff,849px 329px #fff,1160px 1158px #fff,1451px 479px #fff,214px 1521px #fff,317px 286px #fff,343px 1154px #fff,1890px 520px #fff,1586px 1182px #fff,1628px 993px #fff,1039px 1332px #fff,297px 997px #fff,336px 799px #fff,496px 1903px #fff,847px 1589px #fff,1027px 1171px #fff,378px 57px #fff,1645px 979px #fff,223px 732px #fff,1000px 409px #fff,478px 365px #fff,1866px 468px #fff,962px 1003px #fff,1591px 866px #fff,1561px 1947px #fff,1992px 1920px #fff,1705px 1694px #fff,732px 1376px #fff,1320px 666px #fff,922px 1569px #fff,1750px 580px #fff,1692px 652px #fff,1040px 135px #fff,1646px 718px #fff,1899px 1427px #fff,134px 1933px #fff,1517px 1213px #fff,1593px 1190px #fff,844px 185px #fff,61px 1476px #fff,1728px 1242px #fff,1409px 495px #fff,1720px 361px #fff,619px 1683px #fff,1627px 466px #fff,1856px 970px #fff,902px 1382px #fff,1560px 749px #fff,1044px 466px #fff,184px 949px #fff,263px 443px #fff,1583px 968px #fff,1442px 450px #fff,692px 1306px #fff,118px 1166px #fff,1975px 1143px #fff,1598px 613px #fff,1953px 4px #fff,147px 13px #fff,1588px 1197px #fff,813px 1293px #fff,1093px 1045px #fff,284px 1452px #fff,785px 1446px #fff,408px 512px #fff,694px 1677px #fff,1404px 1447px #fff,637px 1911px #fff,1408px 1931px #fff,384px 239px #fff,193px 1591px #fff,944px 1683px #fff,1236px 1940px #fff,1772px 1082px #fff,497px 1167px #fff,1289px 1292px #fff,1409px 1863px #fff,551px 515px #fff,857px 1376px #fff,1392px 73px #fff,1645px 79px #fff,958px 1817px #fff,1270px 1011px #fff,1450px 1882px #fff,1251px 1601px #fff,308px 545px #fff,748px 135px #fff,1508px 509px #fff,614px 1694px #fff,1581px 1528px #fff,324px 1586px #fff,20px 1447px #fff,349px 1399px #fff,1988px 450px #fff,1257px 543px #fff,783px 293px #fff,1828px 180px #fff,1082px 1609px #fff,1554px 432px #fff,1182px 1829px #fff,949px 1595px #fff,1158px 1083px #fff,432px 1029px #fff,335px 877px #fff,135px 1793px #fff,1148px 1988px #fff,1480px 1936px #fff,1785px 1406px #fff,2px 1855px #fff,200px 1136px #fff,1770px 210px #fff,1366px 1406px #fff,1912px 302px #fff,1041px 1406px #fff,1899px 1159px #fff,1763px 445px #fff,282px 1197px #fff,666px 1888px #fff,1649px 239px #fff,1741px 1084px #fff,476px 1415px #fff,785px 895px #fff,1218px 180px #fff;animation:animStar 1000s linear infinite}#stars2:after{content:" ";position:absolute;top:2000px;width:2px;height:2px;background:0 0;box-shadow:1313px 90px #fff,1439px 1727px #fff,1075px 1590px #fff,1289px 1501px #fff,397px 1439px #fff,46px 808px #fff,1892px 131px #fff,1887px 596px #fff,1854px 632px #fff,247px 619px #fff,321px 374px #fff,497px 1295px #fff,801px 1153px #fff,762px 1222px #fff,480px 1847px #fff,1862px 1611px #fff,991px 486px #fff,313px 1181px #fff,499px 507px #fff,1091px 270px #fff,1290px 350px #fff,1244px 220px #fff,1776px 1772px #fff,1259px 555px #fff,572px 1963px #fff,1920px 1534px #fff,669px 802px #fff,631px 1599px #fff,1916px 77px #fff,132px 411px #fff,982px 1481px #fff,1534px 102px #fff,1234px 1960px #fff,633px 1103px #fff,136px 1501px #fff,1413px 352px #fff,265px 1844px #fff,717px 1470px #fff,947px 1666px #fff,1909px 889px #fff,1713px 1544px #fff,442px 1692px #fff,1175px 1550px #fff,138px 908px #fff,218px 1444px #fff,1135px 466px #fff,1541px 1894px #fff,1613px 4px #fff,68px 779px #fff,1225px 1735px #fff,799px 1101px #fff,1331px 176px #fff,353px 1131px #fff,930px 972px #fff,175px 1216px #fff,481px 476px #fff,1268px 64px #fff,1330px 1809px #fff,1429px 290px #fff,455px 1347px #fff,709px 1196px #fff,1349px 618px #fff,1441px 1849px #fff,1724px 804px #fff,718px 1042px #fff,1612px 190px #fff,1683px 116px #fff,527px 265px #fff,35px 1804px #fff,1457px 142px #fff,24px 358px #fff,587px 113px #fff,1238px 713px #fff,40px 193px #fff,694px 330px #fff,1664px 353px #fff,1232px 1585px #fff,608px 155px #fff,849px 329px #fff,1160px 1158px #fff,1451px 479px #fff,214px 1521px #fff,317px 286px #fff,343px 1154px #fff,1890px 520px #fff,1586px 1182px #fff,1628px 993px #fff,1039px 1332px #fff,297px 997px #fff,336px 799px #fff,496px 1903px #fff,847px 1589px #fff,1027px 1171px #fff,378px 57px #fff,1645px 979px #fff,223px 732px #fff,1000px 409px #fff,478px 365px #fff,1866px 468px #fff,962px 1003px #fff,1591px 866px #fff,1561px 1947px #fff,1992px 1920px #fff,1705px 1694px #fff,732px 1376px #fff,1320px 666px #fff,922px 1569px #fff,1750px 580px #fff,1692px 652px #fff,1040px 135px #fff,1646px 718px #fff,1899px 1427px #fff,134px 1933px #fff,1517px 1213px #fff,1593px 1190px #fff,844px 185px #fff,61px 1476px #fff,1728px 1242px #fff,1409px 495px #fff,1720px 361px #fff,619px 1683px #fff,1627px 466px #fff,1856px 970px #fff,902px 1382px #fff,1560px 749px #fff,1044px 466px #fff,184px 949px #fff,263px 443px #fff,1583px 968px #fff,1442px 450px #fff,692px 1306px #fff,118px 1166px #fff,1975px 1143px #fff,1598px 613px #fff,1953px 4px #fff,147px 13px #fff,1588px 1197px #fff,813px 1293px #fff,1093px 1045px #fff,284px 1452px #fff,785px 1446px #fff,408px 512px #fff,694px 1677px #fff,1404px 1447px #fff,637px 1911px #fff,1408px 1931px #fff,384px 239px #fff,193px 1591px #fff,944px 1683px #fff,1236px 1940px #fff,1772px 1082px #fff,497px 1167px #fff,1289px 1292px #fff,1409px 1863px #fff,551px 515px #fff,857px 1376px #fff,1392px 73px #fff,1645px 79px #fff,958px 1817px #fff,1270px 1011px #fff,1450px 1882px #fff,1251px 1601px #fff,308px 545px #fff,748px 135px #fff,1508px 509px #fff,614px 1694px #fff,1581px 1528px #fff,324px 1586px #fff,20px 1447px #fff,349px 1399px #fff,1988px 450px #fff,1257px 543px #fff,783px 293px #fff,1828px 180px #fff,1082px 1609px #fff,1554px 432px #fff,1182px 1829px #fff,949px 1595px #fff,1158px 1083px #fff,432px 1029px #fff,335px 877px #fff,135px 1793px #fff,1148px 1988px #fff,1480px 1936px #fff,1785px 1406px #fff,2px 1855px #fff,200px 1136px #fff,1770px 210px #fff,1366px 1406px #fff,1912px 302px #fff,1041px 1406px #fff,1899px 1159px #fff,1763px 445px #fff,282px 1197px #fff,666px 1888px #fff,1649px 239px #fff,1741px 1084px #fff,476px 1415px #fff,785px 895px #fff,1218px 180px #fff}#stars3{width:3px;height:3px;background:0 0;box-shadow:1478px 1894px #fff,806px 226px #fff,367px 1724px #fff,259px 1519px #fff,386px 116px #fff,1661px 1592px #fff,1451px 505px #fff,822px 875px #fff,434px 1291px #fff,361px 31px #fff,614px 1484px #fff,1158px 481px #fff,8px 1871px #fff,1250px 545px #fff,408px 1211px #fff,1885px 1418px #fff,113px 1827px #fff,967px 1135px #fff,1222px 1677px #fff,1817px 1489px #fff,145px 1578px #fff,226px 767px #fff,1596px 1598px #fff,986px 1593px #fff,1967px 1521px #fff,1306px 1301px #fff,59px 475px #fff,46px 542px #fff,1677px 251px #fff,92px 147px #fff,1854px 1676px #fff,404px 1806px #fff,1420px 404px #fff,524px 270px #fff,1929px 1990px #fff,1440px 1674px #fff,923px 1547px #fff,874px 1082px #fff,1417px 683px #fff,1819px 1657px #fff,409px 1695px #fff,370px 1601px #fff,313px 1546px #fff,287px 1829px #fff,1048px 443px #fff,133px 168px #fff,572px 1560px #fff,450px 1012px #fff,1065px 202px #fff,1055px 655px #fff,1066px 298px #fff,94px 1803px #fff,1959px 576px #fff,1404px 136px #fff,815px 475px #fff,1940px 348px #fff,68px 911px #fff,476px 213px #fff,1456px 215px #fff,331px 1648px #fff,101px 1262px #fff,796px 1421px #fff,1175px 1356px #fff,1136px 122px #fff,327px 933px #fff,206px 91px #fff,759px 1362px #fff,188px 375px #fff,424px 576px #fff,1769px 701px #fff,1413px 39px #fff,1957px 961px #fff,772px 866px #fff,1595px 1037px #fff,1536px 419px #fff,163px 1858px #fff,1952px 620px #fff,412px 1436px #fff,10px 1875px #fff,1618px 1696px #fff,1018px 1756px #fff,337px 1571px #fff,1615px 1286px #fff,1016px 890px #fff,1168px 1926px #fff,1427px 1215px #fff,306px 959px #fff,116px 1677px #fff,1595px 1499px #fff,897px 1071px #fff,732px 1232px #fff,922px 1322px #fff,1785px 1248px #fff,1890px 1180px #fff,711px 1840px #fff,156px 967px #fff,1244px 244px #fff,1471px 69px #fff,418px 1058px #fff,159px 1620px #fff;animation:animStar 1500s linear infinite}#stars3:after{content:" ";position:absolute;top:2000px;width:3px;height:3px;background:0 0;box-shadow:1478px 1894px #fff,806px 226px #fff,367px 1724px #fff,259px 1519px #fff,386px 116px #fff,1661px 1592px #fff,1451px 505px #fff,822px 875px #fff,434px 1291px #fff,361px 31px #fff,614px 1484px #fff,1158px 481px #fff,8px 1871px #fff,1250px 545px #fff,408px 1211px #fff,1885px 1418px #fff,113px 1827px #fff,967px 1135px #fff,1222px 1677px #fff,1817px 1489px #fff,145px 1578px #fff,226px 767px #fff,1596px 1598px #fff,986px 1593px #fff,1967px 1521px #fff,1306px 1301px #fff,59px 475px #fff,46px 542px #fff,1677px 251px #fff,92px 147px #fff,1854px 1676px #fff,404px 1806px #fff,1420px 404px #fff,524px 270px #fff,1929px 1990px #fff,1440px 1674px #fff,923px 1547px #fff,874px 1082px #fff,1417px 683px #fff,1819px 1657px #fff,409px 1695px #fff,370px 1601px #fff,313px 1546px #fff,287px 1829px #fff,1048px 443px #fff,133px 168px #fff,572px 1560px #fff,450px 1012px #fff,1065px 202px #fff,1055px 655px #fff,1066px 298px #fff,94px 1803px #fff,1959px 576px #fff,1404px 136px #fff,815px 475px #fff,1940px 348px #fff,68px 911px #fff,476px 213px #fff,1456px 215px #fff,331px 1648px #fff,101px 1262px #fff,796px 1421px #fff,1175px 1356px #fff,1136px 122px #fff,327px 933px #fff,206px 91px #fff,759px 1362px #fff,188px 375px #fff,424px 576px #fff,1769px 701px #fff,1413px 39px #fff,1957px 961px #fff,772px 866px #fff,1595px 1037px #fff,1536px 419px #fff,163px 1858px #fff,1952px 620px #fff,412px 1436px #fff,10px 1875px #fff,1618px 1696px #fff,1018px 1756px #fff,337px 1571px #fff,1615px 1286px #fff,1016px 890px #fff,1168px 1926px #fff,1427px 1215px #fff,306px 959px #fff,116px 1677px #fff,1595px 1499px #fff,897px 1071px #fff,732px 1232px #fff,922px 1322px #fff,1785px 1248px #fff,1890px 1180px #fff,711px 1840px #fff,156px 967px #fff,1244px 244px #fff,1471px 69px #fff,418px 1058px #fff,159px 1620px #fff}@keyframes animStar{from{transform:translateY(0)}to{transform:translateY(-2000px)}}</style></head><body><div class="container"><div class="mb-3 d-flex flex-wrap" id="folder-list"></div><div class="mb-3" id="file-list"></div><div class="image-container" id="image-container"><img alt="Изображение" id="panzoom-image" src="https://station14.ru/images/logo.svg"><div id="stars"></div><div id="stars2"></div><div id="stars3"></div></div><div class="m-1" id="buttonsGroupPlus"><button class="btn btn-outline-light btn-sm" id="fullscreen-toggle">Полный экран</button><button class="btn btn-outline-light btn-sm" id="open-in-new-window">Открыть в отдельном окне</button><a class="btn btn-outline-light btn-sm" href="https://station14.ru" target="_top">Вернуться на главную страницу вики</a></div></div><script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz"></script><script src="https://unpkg.com/panzoom@9.4.0/dist/panzoom.min.js"></script><script>async function fetchFilesFromFolder(e){const t=await fetch(e);return[...(await t.text()).matchAll(/{"name":"(.*?)",.*?"type":"file"}/g)].map(e=>e[1])}async function displayFiles(e){const t=await fetchFilesFromFolder(e),n={};for(const e of t){const[l,o]=e.split("-"),c=l+"_pool.txt";if(t.includes(c)){const t="⭐️ "+l;n[t]||(n[t]=[]),n[t].push(e)}else{if(e.endsWith("_pool.txt"))continue;n[l]||(n[l]=[]),n[l].push(e)}}document.getElementById("folder-list").innerHTML="";for(const e in n)displayFolderData(e,n[e])}function displayFolderData(e,t){const n=document.createElement("div");n.classList.add("folder");const l=document.createElement("button");l.classList.add("btn","btn-outline-light","m-1","btn-sm"),l.textContent=e,l.onclick=(()=>loadFilesForMap(e,t)),n.appendChild(l),document.getElementById("folder-list").appendChild(n)}function loadFilesForMap(e,t){const n=document.getElementById("file-list");n.innerHTML="";for(const e of t)if(e.endsWith("_maxsize.txt")){const n=e.split("_")[0],l=t.findIndex(e=>e.includes(n));t[l].includes("📌 ")||(t[l]="📌 "+t[l])}for(const l of t){if(l.endsWith("_pool.txt")||l.endsWith("_maxsize.txt"))continue;const t=document.createElement("button");t.textContent=l.split(".")[0],t.classList.add("btn","btn-outline-light","m-1","btn-sm"),t.onclick=(()=>showMap(e.replace("⭐️ ",""),l,t)),n.appendChild(t)}}async function showMap(e,t,n){const l="https://thumb.cloud.mail.ru/weblink/thumb/xw1/cxkL/ePLV5CycA/"+t.replace("📌 ",""),o=document.getElementById("panzoom-image");o.src=l;panzoom(o,{canvas:!0,initialZoom:.3,smoothScroll:!1});const c=o.parentElement;c.addEventListener("wheel",panzoom.zoomWithWheel),c.addEventListener("wheel",function(e){e.shiftKey&&panzoom.zoomWithWheel(e)});const s=document.getElementById("open-in-new-window");s.style.display="block",s.onclick=(()=>window.open(l,"_blank")),document.querySelectorAll("#file-list button").forEach(e=>e.classList.remove("active")),n.classList.add("active")}function toggleFullscreen(){const e=document.getElementById("image-container");document.fullscreenElement?document.exitFullscreen():e.requestFullscreen().catch(e=>{console.log("Ошибка при попытке открыть в полноэкранном режиме:",e)})}document.getElementById("fullscreen-toggle").addEventListener("click",toggleFullscreen),document.addEventListener("fullscreenchange",()=>{const e=document.getElementById("image-container");document.fullscreenElement?e.classList.add("fullscreen--image-container"):e.classList.remove("fullscreen--image-container")}),document.getElementById("fullscreen-toggle").addEventListener("click",toggleFullscreen);const folderUrl="https://api.codetabs.com/v1/proxy/?quest=https://cloud.mail.ru/public/cxkL/ePLV5CycA";displayFiles(folderUrl);</script></body></html>', | ||
width: '100%', | width: '100%', | ||
height: '100%', | height: '100%', | ||
| Строка 23: | Строка 23: | ||
height: '1900px', | height: '1900px', | ||
id: "iframeSkillsTableRed" | id: "iframeSkillsTableRed" | ||
}, | |||
iframeMiroTable: { | |||
src: 'https://time.graphics/ru/embed?v=1&id=136', | |||
width: '100%', | |||
height: '900px', | |||
id: "iframeMiroTable" | |||
}, | }, | ||
}; | }; | ||
| Строка 28: | Строка 34: | ||
const serversStatus = [{ | const serversStatus = [{ | ||
name: "server-main", | name: "server-main", | ||
connect: "https:// | connect: "https://game1.station14.ru/main/server/status", | ||
serverconnect: " | serverconnect: "ss14s://game1.station14.ru/main/server" | ||
}, { | }, { | ||
name: "server- | name: "server-void", | ||
connect: "https:// | connect: "https://game1.station14.ru/void/server/status", | ||
serverconnect: " | serverconnect: "ss14s://game1.station14.ru/void/server" | ||
}, { | }, { | ||
name: "server- | name: "server-lumen", | ||
connect: "https:// | connect: "https://game1.station14.ru/lumen/server/status", | ||
serverconnect: " | serverconnect: "ss14s://game1.station14.ru/lumen/server" | ||
}, { | }, { | ||
name: "server-elysium", | name: "server-elysium", | ||
connect: "https:// | connect: "https://game1.station14.ru/elysium/server/status", | ||
serverconnect: " | serverconnect: "ss14s://game1.station14.ru/elysium/server" | ||
}, { | }, { | ||
name: "server-wl", | name: "server-wl", | ||
connect: "https:// | connect: "https://game1.station14.ru/wl/server/status", | ||
serverconnect: " | serverconnect: "ss14s://game1.station14.ru/wl/server" | ||
}, { | }, { | ||
name: "server-frontier", | name: "server-frontier", | ||
connect: "https://api.codetabs.com/v1/proxy/?quest= | connect: "https://api.codetabs.com/v1/proxy/?quest=corvaxforge.ru/server/frontier/status", | ||
serverconnect: " | serverconnect: "ss14s://corvaxforge.ru/server/frontier" | ||
}, { | }, { | ||
name: "server-fallout", | name: "server-fallout", | ||
connect: "https://api.codetabs.com/v1/proxy/?quest= | connect: "https://api.codetabs.com/v1/proxy/?quest=corvaxforge.ru/server/fallout/status", | ||
serverconnect: " | serverconnect: "ss14s://corvaxforge.ru/server/fallout" | ||
}, { | }, { | ||
name: "server-marines", | name: "server-marines", | ||
connect: " | connect: "https://game1.station14.ru/marines-main/server/status", | ||
serverconnect: " | serverconnect: "ss14s://corvaxcm.space/marines" | ||
}, { | }, { | ||
name: "server- | name: "server-wega", | ||
connect: "https:// | connect: "https://game1.station14.ru/wega-main/server/status", | ||
serverconnect: " | serverconnect: "ss14s://game1.station14.ru/wega-main/server" | ||
}]; | } | ||
]; | |||
function getXHRInfo(url) { | function getXHRInfo(url) { | ||
| Строка 283: | Строка 278: | ||
function isGray(r, g, b) { | function isGray(r, g, b) { | ||
const maxDiff = 20; | |||
return Math.abs(r - g) < maxDiff && Math.abs(g - b) < maxDiff && Math.abs(r - b) < maxDiff; | return Math.abs(r - g) < maxDiff | ||
&& Math.abs(g - b) < maxDiff | |||
&& Math.abs(r - b) < maxDiff; | |||
} | } | ||
const vals = color.match(/-?\d+(\.\d+)?/g).map(parseFloat); | |||
let [r, g, b, a = 1] = vals; | |||
if (r <= 1 && g <= 1 && b <= 1) { | |||
r *= 255; | |||
g *= 255; | |||
b *= 255; | |||
} | |||
r = Math.round(r); | |||
g = Math.round(g); | |||
b = Math.round(b); | |||
const brightness = getBrightness(r, g, b); | |||
if (factor === undefined) { | if (factor === undefined) { | ||
| Строка 305: | Строка 309: | ||
} | } | ||
if (isGray(r, g, b)) { | if (isGray(r, g, b)) { | ||
factor = Math.max(1, factor * 0. | factor = Math.max(1, factor * 0.5); | ||
} | } | ||
r = Math.min(255, r + factor); | r = Math.min(255, r + factor); | ||
g = Math.min(255, g + factor); | g = Math.min(255, g + factor); | ||
b = Math.min(255, b + factor); | b = Math.min(255, b + factor); | ||
if (a < 1) { | |||
return `rgba(${r}, ${g}, ${b}, ${a})`; | |||
} else { | |||
return `rgb(${r}, ${g}, ${b})`; | |||
} | |||
} | } | ||
// Функция для подсветки ячеек в таблице при наведении | // Функция для подсветки ячеек в таблице при наведении | ||
function applyHighlighting() { | function applyHighlighting() { | ||
if (/Mobi|Android/i.test(navigator.userAgent)) | if ( document.cookie.includes('ss14_wikiTheme=light') || /Mobi|Android/i.test(navigator.userAgent) ) return; | ||
var tables = document.querySelectorAll('.wikitable:not(.no-highlight-table)'); | var tables = document.querySelectorAll('.wikitable:not(.no-highlight-table)'); | ||
Array.prototype.forEach.call(tables, function(table) { | Array.prototype.forEach.call(tables, function(table) { | ||
| Строка 471: | Строка 476: | ||
for (var i = 0; i < categories.length; i++) { | for (var i = 0; i < categories.length; i++) { | ||
var category = categories[i]; | var category = categories[i]; | ||
category.setAttribute('id', generateIdFromText(category.textContent || category.innerText)); | |||
var menu = menus[i]; | var menu = menus[i]; | ||
var menuItems = menu.querySelectorAll('div'); | var menuItems = menu.querySelectorAll('div'); | ||
for (var j = 0; j < menuItems.length; j++) { | for (var j = 0; j < menuItems.length; j++) { | ||
menuItems[j].setAttribute('id', generateIdFromText(menuItems[j].textContent || menuItems[j].innerText)); | |||
} | } | ||
} | } | ||
| Строка 504: | Строка 504: | ||
if (selectedCategory) { | if (selectedCategory) { | ||
selectedCategory.classList.add('active'); | selectedCategory.classList.add('active'); | ||
var selectedMenu = document.querySelector('.' + selectedCategory.classList[0] + '-menu'); | |||
var selectedMenu = document.querySelector('.' + | |||
if (selectedMenu) { | if (selectedMenu) { | ||
selectedMenu.classList.add('active'); | selectedMenu.classList.add('active'); | ||
| Строка 536: | Строка 535: | ||
var nextArrow = document.getElementById('next-category'); | var nextArrow = document.getElementById('next-category'); | ||
prevArrow.classList.toggle('disabled', currentCategoryIndex === 0); | |||
prevArrow.style.pointerEvents = currentCategoryIndex === 0 ? 'none' : 'auto'; | |||
nextArrow.classList.toggle('disabled', currentCategoryIndex === categories.length - 1); | |||
nextArrow.style.pointerEvents = currentCategoryIndex === categories.length - 1 ? 'none' : 'auto'; | |||
} | } | ||
| Строка 556: | Строка 545: | ||
document.getElementById('prev-category').addEventListener('click', function() { | document.getElementById('prev-category').addEventListener('click', function() { | ||
if (currentCategoryIndex > 0) { | if (currentCategoryIndex > 0) { | ||
switchCategory(--currentCategoryIndex); // Переключение на новую категорию | |||
switchCategory(currentCategoryIndex); // Переключение на новую категорию | |||
} | } | ||
}); | }); | ||
| Строка 563: | Строка 551: | ||
document.getElementById('next-category').addEventListener('click', function() { | document.getElementById('next-category').addEventListener('click', function() { | ||
if (currentCategoryIndex < categories.length - 1) { | if (currentCategoryIndex < categories.length - 1) { | ||
switchCategory(++currentCategoryIndex); // Переключение на новую категорию | |||
switchCategory(currentCategoryIndex); // Переключение на новую категорию | |||
} | } | ||
}); | }); | ||
| Строка 577: | Строка 564: | ||
for (var i = 0; i < menuItems.length; i++) { | for (var i = 0; i < menuItems.length; i++) { | ||
if (menuItems[i].id === decodedAnchor) { // Сравниваем с декодированным значением | if (menuItems[i].id === decodedAnchor) { // Сравниваем с декодированным значением | ||
var categoryIndex = Array.prototype.indexOf.call(categories, menuItems[i].closest('.navigation__menu-item').previousElementSibling); | var categoryIndex = Array.prototype.indexOf.call(categories, menuItems[i].closest('.navigation__menu-item').previousElementSibling); | ||
if (categoryIndex !== -1) { | if (categoryIndex !== -1) { | ||
| Строка 588: | Строка 574: | ||
} | } | ||
// | // Проверка категорий, если якорь не найден в пунктах меню | ||
if (!found) { | if (!found) { | ||
switchCategory( | for (var i = 0; i < categories.length; i++) { | ||
if (categories[i].id === decodedAnchor) { // Сравниваем с декодированным значением | |||
switchCategory(i); // Открываем категорию | |||
found = true; // Якорь найден | |||
break; | |||
} | |||
} | |||
} | } | ||
} | } | ||
| Строка 601: | Строка 593: | ||
assignIds(); // Присвоить ID в начале | assignIds(); // Присвоить ID в начале | ||
handleAnchorChange(); // Обработка начального якоря | handleAnchorChange(); // Обработка начального якоря | ||
switchCategory(currentCategoryIndex); | |||
// Проверка наличия якоря и открытие первой категории только если ID не найден | |||
if (!window.location.hash) { | |||
switchCategory(0); | |||
} else { | |||
switchCategory(currentCategoryIndex); | |||
} | |||
updateArrowStates(); | updateArrowStates(); | ||
} | } | ||
| Строка 607: | Строка 606: | ||
// Клик по элементам меню | // Клик по элементам меню | ||
for (var i = 0; i < menuItems.length; i++) { | for (var i = 0; i < menuItems.length; i++) { | ||
(function(menuItem) { | |||
menuItem.addEventListener('click', function() { | |||
switchContent(menuItem); // Переключение контента при клике на пункт меню | |||
}); | // Убрали изменение хеша при клике | ||
}); | |||
})(menuItems[i]); | |||
} | } | ||
| Строка 618: | Строка 619: | ||
this.classList.toggle('active'); // Переключение для перемещения кнопки | this.classList.toggle('active'); // Переключение для перемещения кнопки | ||
}); | }); | ||
} | |||
function layerIndex() { | |||
var z_index = 1000; | |||
document.querySelectorAll('.z-index-position').forEach(function(domEl) { | |||
domEl.style.zIndex = z_index--; | |||
}); | |||
} | |||
var ProjectSelectionState = { | |||
jsonPath: '' | |||
}; | |||
function trimText(value) { | |||
return String(value === undefined || value === null ? '' : value).trim(); | |||
} | |||
function normalizeJsonPath(value) { | |||
return trimText(value); | |||
} | |||
function getFirstProjectFromPage() { | |||
var generator = document.querySelector('.js-project-selection-generator'); | |||
if (!generator) return ''; | |||
var rawText = generator.textContent || ''; | |||
var items = rawText.split(','); | |||
for (var i = 0; i < items.length; i++) { | |||
var item = trimText(items[i]); | |||
if (item) return item; | |||
} | |||
return ''; | |||
} | |||
function setCurrentJsonPath(value) { | |||
ProjectSelectionState.jsonPath = normalizeJsonPath(value); | |||
} | |||
function getCurrentJsonPath() { | |||
if (ProjectSelectionState.jsonPath) { | |||
return ProjectSelectionState.jsonPath; | |||
} | |||
var fromPage = getFirstProjectFromPage(); | |||
if (fromPage) { | |||
ProjectSelectionState.jsonPath = fromPage; | |||
return fromPage; | |||
} | |||
return ''; | |||
} | |||
function wrapWikiTextWithJsonPath(wikiText) { | |||
var jsonPath = getCurrentJsonPath(); | |||
if (!jsonPath) return String(wikiText || ''); | |||
return '{{#vardefine:JsonPath|' + jsonPath + '}}\n' + String(wikiText || ''); | |||
} | |||
function fetchParsedData(wikiText) { | |||
return $.ajax({ | |||
url: mw.util.wikiScript('api'), | |||
method: 'POST', | |||
dataType: 'json', | |||
data: { | |||
action: 'parse', | |||
format: 'json', | |||
prop: 'text', | |||
text: wikiText, | |||
origin: '*' | |||
} | |||
}); | |||
} | |||
function enhanceParsedContent(root) { | |||
if (!root) return; | |||
var scripts = Array.prototype.slice.call(root.querySelectorAll("script")); | |||
scripts.forEach(function (scr) { | |||
var parent = scr.parentNode; | |||
var scriptNode = document.createElement("script"); | |||
if (scr.src) { | |||
scriptNode.src = scr.src; | |||
if (scr.defer) scriptNode.defer = true; | |||
if (scr.async) scriptNode.async = true; | |||
parent.replaceChild(scriptNode, scr); | |||
} else { | |||
try { | |||
$.globalEval(scr.textContent || scr.innerText || ""); | |||
} catch (e) {} | |||
parent.removeChild(scr); | |||
} | |||
}); | |||
mw.loader.using(['jquery.tablesorter', 'jquery.makeCollapsible'], function () { | |||
$(root).find('table.sortable').tablesorter(); | |||
$(root).find('.mw-collapsible').makeCollapsible(); | |||
}); | |||
mw.hook('wikipage.content').fire(root); | |||
initAjaxLoader(root); | |||
initPage(); | |||
} | |||
function injectParsedHTML(parsedHTML, options) { | |||
options = options || {}; | |||
var container = document.createElement("span"); | |||
container.innerHTML = parsedHTML; | |||
if (options.keepNode) { | |||
container.insertBefore(options.keepNode, container.firstChild); | |||
} | |||
if (options.placeholder && options.placeholder.parentNode) { | |||
options.placeholder.replaceWith(container); | |||
} else if (options.targetRoot) { | |||
options.targetRoot.innerHTML = ""; | |||
while (container.firstChild) { | |||
options.targetRoot.appendChild(container.firstChild); | |||
} | |||
container = options.targetRoot; | |||
} | |||
enhanceParsedContent(container); | |||
return container; | |||
} | |||
function parseAndInjectWikiText(wikiText, options) { | |||
wikiText = wrapWikiTextWithJsonPath(wikiText); | |||
return fetchParsedData(wikiText) | |||
.done(function (data) { | |||
if (data && data.parse && data.parse.text) { | |||
var parsedHTML = data.parse.text["*"] || ""; | |||
injectParsedHTML(parsedHTML, options); | |||
} else if (options && options.placeholder) { | |||
options.placeholder.textContent = "API не вернул ожидаемых данных."; | |||
} | |||
}) | |||
.fail(function () { | |||
if (options && options.placeholder) { | |||
options.placeholder.textContent = "Ошибка при выполнении запроса к API."; | |||
} | |||
}); | |||
} | |||
function createPlaceholderWithSpinner(text) { | |||
if (!text) { | |||
loadingImgHTML = '<img alt="Файл:Silva-loading.gif" src="/images/4/45/Silva-loading.gif" decoding="async" width="16" height="16" style="vertical-align:middle;margin-right:6px">'; | |||
text = loadingImgHTML + '<span class="ajax-load-text">Пожалуйста, подождите, содержимое загружается...</span>'; | |||
} | |||
var placeholder = document.createElement("span"); | |||
placeholder.className = "ajax-load-placeholder"; | |||
placeholder.innerHTML = text; | |||
return placeholder; | |||
} | |||
// Для "Шаблон:Ajax" | |||
function initAjaxLoader(root) { | |||
root = root || document; | |||
var ajaxContainers = root.querySelectorAll('.ajax-load, .ajax-load-link'); | |||
var BATCH_SIZE = 1000; | |||
var queue = []; | |||
var processing = false; | |||
function processQueue() { | |||
if (processing) return; | |||
processing = true; | |||
function nextBatch() { | |||
if (queue.length === 0) { | |||
processing = false; | |||
return; | |||
} | |||
var batch = queue.splice(0, BATCH_SIZE); | |||
var remaining = batch.length; | |||
batch.forEach(function (job) { | |||
parseAndInjectWikiText(job.wikiText, { placeholder: job.placeholder }) | |||
.always(function () { | |||
remaining--; | |||
if (remaining === 0) nextBatch(); | |||
}); | |||
}); | |||
} | |||
nextBatch(); | |||
} | |||
ajaxContainers.forEach(function (container) { | |||
var contentEl = container.querySelector('.ajax-load-content'); | |||
var loadingEl = container.querySelector('.ajax-load-loading'); | |||
if (!contentEl) return; | |||
var wikiText = (contentEl.textContent || contentEl.innerText || "").trim(); | |||
if (!wikiText) return; | |||
var loadingHTML = loadingEl ? (loadingEl.innerHTML || "").trim() : ""; | |||
if (loadingEl && loadingEl.parentNode) { | |||
loadingEl.parentNode.removeChild(loadingEl); | |||
} | |||
if (container.classList.contains('ajax-load-link')) { | |||
container.addEventListener('click', function (ev) { | |||
ev.preventDefault && ev.preventDefault(); | |||
if (container.dataset.ajaxLoaded === "1") return; | |||
container.dataset.ajaxLoaded = "1"; | |||
var placeholder = createPlaceholderWithSpinner(loadingHTML); | |||
if (container && container.parentNode) { | |||
container.parentNode.replaceChild(placeholder, container); | |||
} else if (contentEl && contentEl.parentNode) { | |||
contentEl.parentNode.replaceChild(placeholder, contentEl); | |||
} | |||
queue.push({ wikiText: wikiText, placeholder: placeholder }); | |||
processQueue(); | |||
}, { once: true }); | |||
} else { | |||
var placeholder = createPlaceholderWithSpinner(loadingHTML); | |||
if (contentEl && contentEl.parentNode) { | |||
contentEl.parentNode.replaceChild(placeholder, contentEl); | |||
} | |||
queue.push({ wikiText: wikiText, placeholder: placeholder }); | |||
} | |||
}); | |||
if (queue.length > 0) processQueue(); | |||
} | |||
// Для "Шаблон:CheckboxCreator" | |||
function initCheckboxCreator() { | |||
var containers = document.getElementsByClassName('js-checkbox-generator'); | |||
function parseBool(v) { | |||
if (v === true) return true; | |||
if (v === false || v === undefined || v === null) return false; | |||
var s = String(v).trim().toLowerCase(); | |||
return s === '1' || s === 'true' || s === 'yes' || s === 'checked'; | |||
} | |||
function escHtml(s) { | |||
return String(s === undefined || s === null ? '' : s) | |||
.replace(/&/g, '&') | |||
.replace(/</g, '<') | |||
.replace(/>/g, '>') | |||
.replace(/"/g, '"') | |||
.replace(/'/g, '''); | |||
} | |||
var HTML_BATCH_THRESHOLD = 200; | |||
for (var ci = 0; ci < containers.length; ci++) { | |||
var container = containers[ci]; | |||
if (container.getAttribute('data-checkbox-initialized') === '1') { | |||
continue; | |||
} | |||
var defaultCls = container.getAttribute('data-cbox-class') || ''; | |||
var itemsRaw = container.getAttribute('data-cbox-items'); | |||
if (itemsRaw) { | |||
var arr = null; | |||
try { | |||
arr = JSON.parse(itemsRaw); | |||
} catch (e) { | |||
container.setAttribute('data-checkbox-initialized', '1'); | |||
continue; | |||
} | |||
if (!Array.isArray(arr) || arr.length === 0) { | |||
container.setAttribute('data-checkbox-initialized', '1'); | |||
continue; | |||
} | |||
if (arr.length >= HTML_BATCH_THRESHOLD) { | |||
var html = ''; | |||
for (var i = 0; i < arr.length; i++) { | |||
var it = arr[i]; | |||
var label = ''; | |||
var cls = defaultCls; | |||
var checked = false; | |||
var name = ''; | |||
var id = ''; | |||
var disabled = false; | |||
if (typeof it === 'string' || typeof it === 'number') { | |||
label = it; | |||
} else if (typeof it === 'object' && it !== null) { | |||
label = it.label || ''; | |||
cls = (it["class"] || it.cls || defaultCls); | |||
checked = parseBool(it.checked); | |||
name = it.name || ''; | |||
id = it.id || ''; | |||
disabled = parseBool(it.disabled); | |||
} | |||
html += '<span class="js-checkbox-gen-item">'; | |||
html += '<input type="checkbox"'; | |||
if (cls) html += ' class="' + escHtml(cls) + '"'; | |||
if (name) html += ' name="' + escHtml(name) + '"'; | |||
if (id) html += ' id="' + escHtml(id) + '"'; | |||
if (checked) html += ' checked'; | |||
if (disabled) html += ' disabled'; | |||
html += '>'; | |||
html += '<label'; | |||
if (id) html += ' for="' + escHtml(id) + '"'; | |||
html += '>' + escHtml(label) + '</label>'; | |||
html += '</span>'; | |||
} | |||
container.insertAdjacentHTML('beforeend', html); | |||
} else { | |||
var frag = document.createDocumentFragment(); | |||
for (var j = 0; j < arr.length; j++) { | |||
var item = arr[j]; | |||
var labelText = ''; | |||
var itemCls = defaultCls; | |||
var itemChecked = false; | |||
var itemName = ''; | |||
var itemId = ''; | |||
var itemDisabled = false; | |||
if (typeof item === 'string' || typeof item === 'number') { | |||
labelText = item; | |||
} else if (typeof item === 'object' && item !== null) { | |||
labelText = item.label || ''; | |||
itemCls = (item["class"] || item.cls || defaultCls); | |||
itemChecked = parseBool(item.checked); | |||
itemName = item.name || ''; | |||
itemId = item.id || ''; | |||
itemDisabled = parseBool(item.disabled); | |||
} | |||
var wrapper = document.createElement('span'); | |||
wrapper.className = 'js-checkbox-gen-item'; | |||
var input = document.createElement('input'); | |||
input.type = 'checkbox'; | |||
if (itemCls) input.className = itemCls; | |||
if (itemName) input.name = itemName; | |||
if (itemId) input.id = itemId; | |||
if (itemChecked) input.checked = true; | |||
if (itemDisabled) input.disabled = true; | |||
var labelEl = document.createElement('label'); | |||
if (itemId) labelEl.htmlFor = itemId; | |||
labelEl.textContent = labelText; | |||
wrapper.appendChild(input); | |||
wrapper.appendChild(labelEl); | |||
frag.appendChild(wrapper); | |||
} | |||
container.appendChild(frag); | |||
} | |||
} else { | |||
var singleLabel = container.getAttribute('data-cbox-label') || ''; | |||
var singleCls = container.getAttribute('data-cbox-class') || ''; | |||
var singleChecked = parseBool(container.getAttribute('data-cbox-checked')); | |||
var singleName = container.getAttribute('data-cbox-name') || ''; | |||
var singleId = container.getAttribute('data-cbox-id') || ''; | |||
var singleDisabled = parseBool(container.getAttribute('data-cbox-disabled')); | |||
var w = document.createElement('span'); | |||
w.className = 'js-checkbox-gen-item'; | |||
var inp = document.createElement('input'); | |||
inp.type = 'checkbox'; | |||
if (singleCls) inp.className = singleCls; | |||
if (singleName) inp.name = singleName; | |||
if (singleId) inp.id = singleId; | |||
if (singleChecked) inp.checked = true; | |||
if (singleDisabled) inp.disabled = true; | |||
var lab = document.createElement('label'); | |||
if (singleId) lab.htmlFor = singleId; | |||
lab.textContent = singleLabel; | |||
w.appendChild(inp); | |||
w.appendChild(lab); | |||
container.appendChild(w); | |||
} | |||
container.setAttribute('data-checkbox-initialized', '1'); | |||
} | |||
} | |||
// Привязка expand/collapse к чекбоксу по id | |||
function registerCheckboxExpander(checkboxId, options) { | |||
options = options || {}; | |||
var onlyExpand = !!options.onlyExpand; | |||
var checkbox = document.getElementById(checkboxId); | |||
if (!checkbox) { | |||
console.warn('registerCheckboxExpander: checkbox not found by id:', checkboxId); | |||
return; | |||
} | |||
function expandAll() { | |||
var collapsed = document.querySelectorAll('.mw-collapsed'); | |||
for (var i = 0; i < collapsed.length; i++) { | |||
collapsed[i].classList.remove('mw-collapsed'); | |||
} | |||
var togglesCollapsed = document.querySelectorAll('.mw-collapsible-toggle-collapsed'); | |||
for (var j = 0; j < togglesCollapsed.length; j++) { | |||
togglesCollapsed[j].classList.remove('mw-collapsible-toggle-collapsed'); | |||
togglesCollapsed[j].classList.add('mw-collapsible-toggle-expanded'); | |||
} | |||
var contents = document.querySelectorAll('.mw-collapsible-content'); | |||
for (var k = 0; k < contents.length; k++) { | |||
if (contents[k].style && contents[k].style.display) { | |||
contents[k].style.removeProperty('display'); | |||
} | |||
} | |||
} | |||
function collapseAll() { | |||
var collapsibleContainers = document.querySelectorAll('.mw-collapsible'); | |||
for (var i = 0; i < collapsibleContainers.length; i++) { | |||
var el = collapsibleContainers[i]; | |||
if (!el.classList.contains('mw-collapsed')) el.classList.add('mw-collapsed'); | |||
} | |||
var togglesExpanded = document.querySelectorAll('.mw-collapsible-toggle-expanded'); | |||
for (var j = 0; j < togglesExpanded.length; j++) { | |||
togglesExpanded[j].classList.remove('mw-collapsible-toggle-expanded'); | |||
togglesExpanded[j].classList.add('mw-collapsible-toggle-collapsed'); | |||
} | |||
var contents = document.querySelectorAll('.mw-collapsible-content'); | |||
for (var k = 0; k < contents.length; k++) { | |||
contents[k].style.setProperty('display', 'none', 'important'); | |||
} | |||
} | |||
checkbox.addEventListener('change', function (e) { | |||
if (checkbox.checked) { | |||
try { expandAll(); } catch (err) { console.error(err); } | |||
} else { | |||
if (!onlyExpand) { | |||
try { collapseAll(); } catch (err) { console.error(err); } | |||
} | |||
} | |||
}); | |||
if (checkbox.checked) { | |||
try { expandAll(); } catch (err) { console.error(err); } | |||
} | |||
} | |||
// Для "Шаблон:Переключатель_проекта" | |||
function initProjectSelectionGenerator() { | |||
var COOKIE_PROJECT = 'ss14_preferredProject'; | |||
var containers = document.getElementsByClassName('js-project-selection-generator'); | |||
function normalizeIdPart(s) { | |||
return String(s === undefined || s === null ? '' : s) | |||
.trim() | |||
.replace(/\s+/g, '-') | |||
.replace(/[^A-Za-z0-9_\-\u0400-\u04FF]/g, ''); | |||
} | |||
function normalizeProjectName(s) { | |||
return String(s === undefined || s === null ? '' : s) | |||
.trim() | |||
.toLowerCase(); | |||
} | |||
function getContentRoot() { | |||
return document.querySelector('#mw-content-text .mw-parser-output') || document.querySelector('#mw-content-text'); | |||
} | |||
function getPageWikitext() { | |||
var title = mw.config.get('wgPageName'); | |||
var apiUrl = mw.util.wikiScript('api') + '?action=query&prop=revisions&rvslots=main&rvprop=content&titles=' + encodeURIComponent(title) + '&format=json&formatversion=2&origin=*'; | |||
return $.ajax({ | |||
url: apiUrl, | |||
method: 'GET', | |||
dataType: 'json' | |||
}).then(function (data) { | |||
if (!data || !data.query || !data.query.pages || !data.query.pages.length) { | |||
return ''; | |||
} | |||
var page = data.query.pages[0]; | |||
if (!page.revisions || !page.revisions.length) { | |||
return ''; | |||
} | |||
var rev = page.revisions[0]; | |||
if (rev.slots && rev.slots.main && typeof rev.slots.main.content === 'string') { | |||
return rev.slots.main.content; | |||
} | |||
if (typeof rev.content === 'string') { | |||
return rev.content; | |||
} | |||
return ''; | |||
}); | |||
} | |||
function buildWikitext(text, projectName) { | |||
return '{{#vardefine:JsonPath|' + projectName + '}}' + text; | |||
} | |||
function refreshForProject(projectName) { | |||
setCurrentJsonPath(projectName); | |||
var root = getContentRoot(); | |||
if (!root) return; | |||
var placeholder = createPlaceholderWithSpinner(); | |||
root.innerHTML = ''; | |||
root.appendChild(placeholder); | |||
getPageWikitext() | |||
.then(function (sourceText) { | |||
var wikitext = buildWikitext(sourceText, projectName); | |||
return parseAndInjectWikiText(wikitext, { | |||
placeholder: placeholder, | |||
targetRoot: root | |||
}); | |||
}) | |||
.fail(function () { | |||
placeholder.textContent = 'Ошибка загрузки страницы.'; | |||
}); | |||
} | |||
for (var ci = 0; ci < containers.length; ci++) { | |||
var container = containers[ci]; | |||
var rawText = container.textContent || ''; | |||
var items = rawText.split(','); | |||
var projects = []; | |||
for (var i = 0; i < items.length; i++) { | |||
var item = items[i].trim(); | |||
if (item) { | |||
projects.push(item); | |||
} | |||
} | |||
if (projects.length <= 1) { | |||
continue; | |||
} | |||
var preferredProject = $.cookie(COOKIE_PROJECT) || ''; | |||
var preferredNorm = normalizeProjectName(preferredProject); | |||
var activeProject = projects[0]; | |||
if (preferredProject && preferredNorm !== 'corvax') { | |||
for (var p = 0; p < projects.length; p++) { | |||
if (normalizeProjectName(projects[p]) === preferredNorm) { | |||
activeProject = projects[p]; | |||
break; | |||
} | |||
} | |||
} | |||
if (!getCurrentJsonPath()) { | |||
setCurrentJsonPath(activeProject); | |||
} | |||
var form = document.createElement('form'); | |||
form.className = 'js-project-menu'; | |||
for (var j = 0; j < projects.length; j++) { | |||
var projectName = projects[j]; | |||
var projectId = 'project-' + normalizeIdPart(projectName); | |||
var div = document.createElement('div'); | |||
var input = document.createElement('input'); | |||
input.type = 'radio'; | |||
input.name = 'js-project-selection'; | |||
input.value = projectName; | |||
input.id = projectId; | |||
if (projectName === activeProject) { | |||
input.checked = true; | |||
} | |||
var label = document.createElement('label'); | |||
label.htmlFor = projectId; | |||
label.textContent = projectName; | |||
div.appendChild(input); | |||
div.appendChild(label); | |||
form.appendChild(div); | |||
} | |||
var portletList = document.querySelector('#mw-content .mw-portlet-body ul'); | |||
if (portletList) { | |||
portletList.appendChild(form); | |||
} | |||
(function (menuNode) { | |||
menuNode.addEventListener('change', function (event) { | |||
var target = event.target; | |||
if (!target || target.tagName !== 'INPUT') return; | |||
if (target.type !== 'radio') return; | |||
if (target.name !== 'js-project-selection') return; | |||
if (!target.checked) return; | |||
refreshForProject(target.value); | |||
}); | |||
})(form); | |||
if (preferredProject && preferredNorm !== 'corvax') { | |||
for (var k = 0; k < projects.length; k++) { | |||
if (normalizeProjectName(projects[k]) === preferredNorm) { | |||
refreshForProject(projects[k]); | |||
break; | |||
} | |||
} | |||
} | |||
} | |||
} | |||
function initPage() { | |||
var checkboxExist = document.querySelectorAll('.js-checkbox-generator'); | |||
if (checkboxExist.length > 0) { | |||
initCheckboxCreator(); | |||
} | |||
registerCheckboxExpander('js-checkbox-mw-collapsible'); | |||
} | } | ||
const currentPageTitle = document.title; | const currentPageTitle = document.title; | ||
| Строка 657: | Строка 1300: | ||
setTimeout(function() { | setTimeout(function() { | ||
applyHighlighting(); | applyHighlighting(); | ||
}, | }, 1000); | ||
} | } | ||
if (currentPageTitle.includes("Kerisar")) { | if (currentPageTitle.includes("Kerisar")) { | ||
| Строка 708: | Строка 1351: | ||
initCategorySwitcher(); | initCategorySwitcher(); | ||
} | } | ||
var layerIndexLoad = document.querySelectorAll('.z-index-position'); | |||
if (layerIndexLoad.length > 0) { | |||
layerIndex(); | |||
} | |||
if (document.querySelectorAll('.ajax-load-content').length > 0) { | |||
initAjaxLoader(); | |||
} | |||
var projectSelectionExist = document.querySelectorAll('.js-project-selection-generator'); | |||
if (projectSelectionExist.length > 0) { | |||
initProjectSelectionGenerator(); | |||
} | |||
initPage(); | |||
}); | }); | ||
/*WikiEditor/Викификатор*/ | /*WikiEditor/Викификатор*/ | ||
| Строка 756: | Строка 1412: | ||
/* Keep track of delegated events on dynamic content */ | /* Keep track of delegated events on dynamic content */ | ||
mcw.events = {}; | mcw.events = {}; | ||
// from Minecraft Wiki | |||
/* Добавляет кнопку «Вверх» слева */ | |||
function scrollTop(){ | |||
$(window).scroll(function(e) { | |||
if($(window).scrollTop()>0) { | |||
$("#scroll-top").fadeIn(300); | |||
} else{ | |||
$("#scroll-top").fadeOut(300); | |||
} | |||
}); | |||
} | |||
/* Fired whenever wiki content is added. (#mw-content-text, live preview, load page, etc.) */ | /* Fired whenever wiki content is added. (#mw-content-text, live preview, load page, etc.) */ | ||
mw.hook('wikipage.content').add(function($wikipageContent) { | mw.hook('wikipage.content').add(function($wikipageContent) { | ||
$(function(){ | |||
$("#mw-wrapper").append($("<span></span>") | |||
.attr({ | |||
"id": "scroll-top", | |||
"title": "Наверх" | |||
}) | |||
); | |||
$("#scroll-top").click(function(e) { | |||
$('body,html').animate({scrollTop:0},300); | |||
}); | |||
scrollTop(); | |||
}); | |||
/** | /** | ||
* Page loader | * Page loader | ||
| Строка 947: | Строка 1628: | ||
}); | }); | ||
// SS220 import end | // SS220 import end | ||
/** | |||
* Taken from https://ru.wikipedia.org/wiki/MediaWiki:Common.js | |||
*/ | |||
/** | |||
* Часто те или иные манипуляции со страницей нужно выполнить как можно раньше, но нет гарантии, что | |||
* к моменту выполнения кода нужный участок DOM готов, а событие полной загрузки страницы происходит | |||
* слишком поздно. В этой функции проверяется наличие элемента $testElement и в случае успеха | |||
* функция-колбэк выполняется, иначе же её выполнение поручается другой функции. Если элемент | |||
* в $testElement имеет содержимое, правильнее указать следующий за ним элемент, чтобы быть | |||
* уверенным, что он загрузился до конца. Имейте в виду, что разные скины часто используют разные | |||
* названия классов и идентификаторов. | |||
*/ | |||
function runAsEarlyAsPossible( callback, $testElement, func ) { | |||
func = func || $; | |||
$testElement = $testElement || $( '#footer' ); | |||
if ( $testElement.length ) { | |||
callback(); | |||
} else { | |||
func( callback ); | |||
} | |||
} | |||
/** | |||
* Настройка обработки «е» и «ё» при сортировке в таблицах | |||
*/ | |||
mw.config.set( 'tableSorterCollation', { 'Ё': 'Е', 'ё': 'е' } ); | |||
/** | |||
* [https://w.wiki/DnhB Сворачиваемые блоки] | |||
*/ | |||
// Число раскрытых по умолчанию навигационных (и не только) шаблонов, если им задан параметр | |||
// autocollapse. Участники могут переопределять это значение в личных JS. | |||
var NavigationBarShowDefault; | |||
if ( typeof NavigationBarShowDefault === 'undefined' ) { | |||
NavigationBarShowDefault = 1; | |||
} | |||
// Изолируем код из глобальной области видимости | |||
( function () { | |||
// table.collapsible | |||
/** | |||
* Collapsible tables; reimplemented with mw-collapsible | |||
* Styling is also in place to avoid FOUC | |||
* | |||
* Allows tables to be collapsed, showing only the header. See [[Help:Collapsing]]. | |||
* @version 3.0.0 (2018-05-20) | |||
* @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-collapsibleTables.js | |||
* @author [[User:R. Koot]] | |||
* @author [[User:Krinkle]] | |||
* @author [[User:TheDJ]] | |||
* @deprecated Since MediaWiki 1.20: Use class="mw-collapsible" instead which | |||
* is supported in MediaWiki core. Shimmable since MediaWiki 1.32 | |||
* | |||
* @param {jQuery} $content | |||
*/ | |||
function makeCollapsibleMwCollapsible( $content ) { | |||
var $tables = $content | |||
.find( 'table.collapsible:not(.mw-collapsible)' ) | |||
.addClass( 'mw-collapsible' ); | |||
$.each( $tables, function ( index, table ) { | |||
if ( $( table ).hasClass( 'collapsed' ) ) { | |||
$( table ).addClass( 'mw-collapsed' ); | |||
} | |||
} ); | |||
if ( $tables.length > 0 ) { | |||
mw.loader.using( 'jquery.makeCollapsible' ).then( function () { | |||
$tables.makeCollapsible(); | |||
} ); | |||
} | |||
} | |||
mw.hook( 'wikipage.content' ).add( makeCollapsibleMwCollapsible ); | |||
/** | |||
* Add support to mw-collapsible for autocollapse, innercollapse and outercollapse | |||
* | |||
* Maintainers: TheDJ | |||
*/ | |||
function mwCollapsibleSetup( $collapsibleContent ) { | |||
var $element; | |||
var $toggle; | |||
var autoCollapseThreshold = NavigationBarShowDefault + 1; | |||
// Changed for ruwiki: Autocollapse according to the number of navbox elements | |||
var $navboxEls = $collapsibleContent.filter( '.navbox-inner' ); | |||
$.each( $collapsibleContent, function ( index, element ) { | |||
$element = $( element ); | |||
if ( $element.hasClass( 'collapsible' ) ) { | |||
$element.find( 'tr:first > th:first' ).prepend( $element.find( 'tr:first > * > .mw-collapsible-toggle' ) ); | |||
} | |||
if ( $navboxEls.length >= autoCollapseThreshold && $element.hasClass( 'autocollapse' ) ) { | |||
$element.data( 'mw-collapsible' ).collapse(); | |||
} else if ( $element.hasClass( 'innercollapse' ) ) { | |||
if ( $element.parents( '.outercollapse' ).length > 0 ) { | |||
$element.data( 'mw-collapsible' ).collapse(); | |||
} | |||
} | |||
// because of colored backgrounds, style the link in the text color | |||
// to ensure accessible contrast | |||
$toggle = $element.find( '.mw-collapsible-toggle' ); | |||
if ( $toggle.length ) { | |||
// Make the toggle inherit text color (Updated for T333357 2023-04-29) | |||
if ( $toggle.parent()[ 0 ].style.color ) { | |||
$toggle.css( 'color', 'inherit' ); | |||
$toggle.find( '.mw-collapsible-text' ).css( 'color', 'inherit' ); | |||
} | |||
} | |||
} ); | |||
} | |||
mw.hook( 'wikipage.collapsibleContent' ).add( mwCollapsibleSetup ); | |||
}() ); | |||
/** | |||
* Исправление поведения FlaggedRevs в сочетании с визуальным редактором, чтобы | |||
* в стабилизированных статьях на правку в визреде открывалась последняя версия, что | |||
* соответствует поведению обычного редактора. См. [[phab:T165283]], | |||
* [[Википедия:Форум/Архив/Общий/2017/12#Серьёзная проблема с анонимными правками в стабилизированных статьях]]. | |||
*/ | |||
mw.loader.using( 'ext.visualEditor.desktopArticleTarget.init' ).then( function () { | |||
// По какой-то причине фикс для FlaggedRevs работает только при использовании then(), но не done(). | |||
runAsEarlyAsPossible( function () { | |||
function fixEditLinksForStableRevs( removeClickHandlers ) { | |||
if ( $( '#ca-view.selected' ).length ) { | |||
// При выходе из визреда (сохранении или переключении) ссылки работают правильно | |||
// и убирать обработчики событий нет нужды — только исправить URL’ы на случай | |||
// открытия правки в новой вкладке. | |||
if ( removeClickHandlers ) { | |||
$( '#ca-ve-edit, .mw-editsection-visualeditor' ).off( 'click' ); | |||
} | |||
$( '#ca-ve-edit a, .mw-editsection-visualeditor' ).each( function () { | |||
var href = $( this ).attr( 'href' ); | |||
if ( !/[?&]stable=0/.test( href ) ) { | |||
$( this ).attr( 'href', | |||
href | |||
.replace( /&veaction=edit/, '&stable=0&veaction=edit' ) | |||
.replace( /&oldid=\d+/, '' ) | |||
); | |||
} | |||
} ); | |||
} | |||
} | |||
// Не включаем сюда проверку на наличие #ca-view.selected, чтобы не вычёркивать случай, | |||
// когда визред открыт без Ajax и по выходу из него нужно заменить URL’ы в ссылках. | |||
if ( $( '#ca-current' ).length && !/[?&](oldid|diff)=\d+/.test( location.search ) ) { | |||
fixEditLinksForStableRevs( true ); | |||
mw.hook( 've.deactivationComplete' ).add( function () { | |||
fixEditLinksForStableRevs( false ); | |||
} ); | |||
} | |||
} ); | |||
} ); | |||
/** | |||
* [[Шаблон:TOC hidden]] | |||
*/ | |||
function TOChidden() { | |||
var wrapper = document.querySelector( '.tochidden-wrapper' ); | |||
if ( wrapper === null ) { | |||
return; | |||
} | |||
mw.loader.using( 'mediawiki.toc', () => { | |||
var checkbox = wrapper.querySelector( '#toctogglecheckbox' ); | |||
// Убирает все ивенты с чекбокса, чтобы от раскрытия/скрытия не менялась куки | |||
checkbox.outerHTML = checkbox.outerHTML; | |||
checkbox = wrapper.querySelector( '#toctogglecheckbox' ); | |||
checkbox.checked = true; | |||
wrapper.classList.add( 'tochidden-done' ); | |||
} ); | |||
} | |||
runAsEarlyAsPossible( TOChidden, $( '#toc' ), mw.hook( 'wikipage.content' ).add ); | |||
/** | |||
* Код, выполняемый по событию wikipage.content (его обработчики выполняются раньше колбэков для $, | |||
* хотя в глубине это одно и то же событие, просто колбэк, инициирующий wikipage.content, становится | |||
* в очередь раньше). Так как wikipage.content инициируется после обновления страницы в результате | |||
* Ajax-запросов (например, гаджетом быстрого предпросмотра), не добавляйте сюда коды, которые | |||
* должны гарантированно выполниться не более одного раза на странице. | |||
*/ | |||
mw.hook( 'wikipage.content' ).add( function () { | |||
/** | |||
* Отключение обтекания раздела примечаний, если в нём есть колонки. | |||
* Короткие (до 15 ссылок, если общее число символов не менее 3000) списки примечаний обтекаются | |||
* только справа. | |||
*/ | |||
$( '.reflist.columns' ).each( function () { | |||
var clear = 'both', | |||
$refs = $( this ).find( 'ol.references > li' ); | |||
if ( $refs.length <= 10 ) return; | |||
if ( $refs.length <= 15 && $refs.text().length < 3000 ) { | |||
clear = 'left'; | |||
} | |||
$( this ) | |||
.prevUntil( '.mw-heading, h1, h2, h3, h4, h5, h6' ) | |||
.addBack() | |||
.first() | |||
.prev() | |||
.css( 'clear', clear ); | |||
} ); | |||
}); | |||
/** | |||
* Кнопки описания правок для визуального редактора | |||
*/ | |||
mw.hook( 've.activationComplete' ).add( function () { | |||
mw.loader.load( 'ext.gadget.summaryButtons' ); | |||
} ); | |||
// wiki import end | |||
(function($, mw) { | |||
mw.loader.using('ext.gadget.theme').then(function() { | |||
const { loadTheme, initThemeMenu } = mw.themeUtils; | |||
function createSettingsDropdown(currentTheme) { | |||
const $dropdown = $('<div>', { class: 'theme-dropdown' }); | |||
const $details = $('<details>', { id: 'theme-preferences-details', class: 'theme-dropdown-details' }); | |||
const $summary = $('<summary>', { class: 'theme-dropdown-summary', 'data-tooltip-initialized': 'true' }) | |||
.append($('<span>', { class: 'theme-icon theme-icon-settings' })); | |||
$details.append($summary); | |||
const $window = $('<div>', { id: 'theme-preferences', class: 'theme-window' }).hide(); | |||
const $header = $('<div>', { | |||
id: 'theme-preferences__header', | |||
class: 'theme-window__header', | |||
text: 'Параметры' | |||
}); | |||
$window.append($header); | |||
const $content = $('<div>', { | |||
id: 'theme-preferences__content', | |||
class: 'theme-window__content' | |||
}); | |||
$window.append($content); | |||
initThemeMenu($content, currentTheme); | |||
$dropdown.append($details, $window); | |||
const $container = $('#user-tools').length ? $('#user-tools') : $('.minerva-search-form'); | |||
$container.append($dropdown); | |||
const $cover = $('#menus-cover'); | |||
$details.on('toggle', function() { | |||
const isOpen = $(this).prop('open'); | |||
$window.toggle(isOpen); | |||
if ($cover.length) { | |||
$cover.css('display', isOpen ? 'block' : 'none'); | |||
} | |||
}); | |||
$(document).on('click', function(e) { | |||
const isClickInside = $(e.target).closest('.theme-window, .theme-dropdown-summary').length > 0; | |||
if (!isClickInside && $details.prop('open')) { | |||
$details.removeAttr('open'); | |||
if ($cover.length) { | |||
$cover.css('display', 'none'); | |||
} | |||
} | |||
}); | |||
} | |||
function init() { | |||
const theme = loadTheme(); | |||
createSettingsDropdown(theme); | |||
} | |||
$(function() { | |||
setTimeout(init, 100); | |||
}); | |||
}); | |||
}(jQuery, mediaWiki)); | |||