Changeset 356251
- Timestamp:
- 10/30/2026 06:32:53 AM (12 hours ago)
- Location:
- style-accessories/1.2.9
- Files:
-
- 4 added
- 4 deleted
- 9 edited
- 1 copied
-
. (copied) (copied from style-accessories/1.2.8 )
-
font-awesome/css/all.css (modified) (1 diff)
-
font-awesome/css/all.min.css (modified) (1 diff)
-
functions.php (modified) (2 diffs)
-
inc/get-started/assets/css/demo-import-style.css (deleted)
-
inc/get-started/assets/css/expert-admin.css (added)
-
inc/get-started/assets/css/expert-getting-started.css (added)
-
inc/get-started/assets/js/demo-import-script.js (deleted)
-
inc/get-started/assets/js/expert-admin.js (added)
-
inc/get-started/assets/js/expert-getting-started.js (added)
-
inc/get-started/assets/js/notice-dismiss.js (deleted)
-
inc/get-started/assets/js/plugin-update-notice.js (deleted)
-
inc/get-started/demo-import-contents.php (modified) (15 diffs)
-
inc/get-started/demo-import-settings.php (modified) (4 diffs)
-
inc/get-started/tgm/tgm.php (modified) (2 diffs)
-
languages/style-accessories.pot (modified) (1 diff)
-
readme.txt (modified) (2 diffs)
-
style.css (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
style-accessories/1.2.9/font-awesome/css/all.css
r353396 r356251 10023 10023 } 10024 10024 10025 .fa- wordpress-simple {10025 .fa-WordPress-simple { 10026 10026 --fa: "\f411"; 10027 10027 } -
style-accessories/1.2.9/font-awesome/css/all.min.css
r353396 r356251 7 7 8 8 .fa-0{--fa:"\30 "}.fa-1{--fa:"\31 "}.fa-2{--fa:"\32 "}.fa-3{--fa:"\33 "}.fa-4{--fa:"\34 "}.fa-5{--fa:"\35 "}.fa-6{--fa:"\36 "}.fa-7{--fa:"\37 "}.fa-8{--fa:"\38 "}.fa-9{--fa:"\39 "}.fa-exclamation{--fa:"\!"}.fa-hashtag{--fa:"\#"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"\$"}.fa-percent,.fa-percentage{--fa:"\%"}.fa-asterisk{--fa:"\*"}.fa-add,.fa-plus{--fa:"\+"}.fa-less-than{--fa:"\<"}.fa-equals{--fa:"\="}.fa-greater-than{--fa:"\>"}.fa-question{--fa:"\?"}.fa-at{--fa:"\@"}.fa-a{--fa:"A"}.fa-b{--fa:"B"}.fa-c{--fa:"C"}.fa-d{--fa:"D"}.fa-e{--fa:"E"}.fa-f{--fa:"F"}.fa-g{--fa:"G"}.fa-h{--fa:"H"}.fa-i{--fa:"I"}.fa-j{--fa:"J"}.fa-k{--fa:"K"}.fa-l{--fa:"L"}.fa-m{--fa:"M"}.fa-n{--fa:"N"}.fa-o{--fa:"O"}.fa-p{--fa:"P"}.fa-q{--fa:"Q"}.fa-r{--fa:"R"}.fa-s{--fa:"S"}.fa-t{--fa:"T"}.fa-u{--fa:"U"}.fa-v{--fa:"V"}.fa-w{--fa:"W"}.fa-x{--fa:"X"}.fa-y{--fa:"Y"}.fa-z{--fa:"Z"}.fa-faucet{--fa:"\e005"}.fa-faucet-drip{--fa:"\e006"}.fa-house-chimney-window{--fa:"\e00d"}.fa-house-signal{--fa:"\e012"}.fa-temperature-arrow-down,.fa-temperature-down{--fa:"\e03f"}.fa-temperature-arrow-up,.fa-temperature-up{--fa:"\e040"}.fa-trailer{--fa:"\e041"}.fa-bacteria{--fa:"\e059"}.fa-bacterium{--fa:"\e05a"}.fa-box-tissue{--fa:"\e05b"}.fa-hand-holding-medical{--fa:"\e05c"}.fa-hand-sparkles{--fa:"\e05d"}.fa-hands-bubbles,.fa-hands-wash{--fa:"\e05e"}.fa-handshake-alt-slash,.fa-handshake-simple-slash,.fa-handshake-slash{--fa:"\e060"}.fa-head-side-cough{--fa:"\e061"}.fa-head-side-cough-slash{--fa:"\e062"}.fa-head-side-mask{--fa:"\e063"}.fa-head-side-virus{--fa:"\e064"}.fa-house-chimney-user{--fa:"\e065"}.fa-house-laptop,.fa-laptop-house{--fa:"\e066"}.fa-lungs-virus{--fa:"\e067"}.fa-people-arrows,.fa-people-arrows-left-right{--fa:"\e068"}.fa-plane-slash{--fa:"\e069"}.fa-pump-medical{--fa:"\e06a"}.fa-pump-soap{--fa:"\e06b"}.fa-shield-virus{--fa:"\e06c"}.fa-sink{--fa:"\e06d"}.fa-soap{--fa:"\e06e"}.fa-stopwatch-20{--fa:"\e06f"}.fa-shop-slash,.fa-store-alt-slash{--fa:"\e070"}.fa-store-slash{--fa:"\e071"}.fa-toilet-paper-slash{--fa:"\e072"}.fa-users-slash{--fa:"\e073"}.fa-virus{--fa:"\e074"}.fa-virus-slash{--fa:"\e075"}.fa-viruses{--fa:"\e076"}.fa-vest{--fa:"\e085"}.fa-vest-patches{--fa:"\e086"}.fa-arrow-trend-down{--fa:"\e097"}.fa-arrow-trend-up{--fa:"\e098"}.fa-arrow-up-from-bracket{--fa:"\e09a"}.fa-austral-sign{--fa:"\e0a9"}.fa-baht-sign{--fa:"\e0ac"}.fa-bitcoin-sign{--fa:"\e0b4"}.fa-bolt-lightning{--fa:"\e0b7"}.fa-book-bookmark{--fa:"\e0bb"}.fa-camera-rotate{--fa:"\e0d8"}.fa-cedi-sign{--fa:"\e0df"}.fa-chart-column{--fa:"\e0e3"}.fa-chart-gantt{--fa:"\e0e4"}.fa-clapperboard{--fa:"\e131"}.fa-clover{--fa:"\e139"}.fa-code-compare{--fa:"\e13a"}.fa-code-fork{--fa:"\e13b"}.fa-code-pull-request{--fa:"\e13c"}.fa-colon-sign{--fa:"\e140"}.fa-cruzeiro-sign{--fa:"\e152"}.fa-display{--fa:"\e163"}.fa-dong-sign{--fa:"\e169"}.fa-elevator{--fa:"\e16d"}.fa-filter-circle-xmark{--fa:"\e17b"}.fa-florin-sign{--fa:"\e184"}.fa-folder-closed{--fa:"\e185"}.fa-franc-sign{--fa:"\e18f"}.fa-guarani-sign{--fa:"\e19a"}.fa-gun{--fa:"\e19b"}.fa-hands-clapping{--fa:"\e1a8"}.fa-home-user,.fa-house-user{--fa:"\e1b0"}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:"\e1bc"}.fa-kip-sign{--fa:"\e1c4"}.fa-lari-sign{--fa:"\e1c8"}.fa-litecoin-sign{--fa:"\e1d3"}.fa-manat-sign{--fa:"\e1d5"}.fa-mask-face{--fa:"\e1d7"}.fa-mill-sign{--fa:"\e1ed"}.fa-money-bills{--fa:"\e1f3"}.fa-naira-sign{--fa:"\e1f6"}.fa-notdef{--fa:"\e1fe"}.fa-panorama{--fa:"\e209"}.fa-peseta-sign{--fa:"\e221"}.fa-peso-sign{--fa:"\e222"}.fa-plane-up{--fa:"\e22d"}.fa-rupiah-sign{--fa:"\e23d"}.fa-stairs{--fa:"\e289"}.fa-timeline{--fa:"\e29c"}.fa-truck-front{--fa:"\e2b7"}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:"\e2bb"}.fa-vault{--fa:"\e2c5"}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:"\e2ca"}.fa-wheat-alt,.fa-wheat-awn{--fa:"\e2cd"}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:"\e2ce"}.fa-bangladeshi-taka-sign{--fa:"\e2e6"}.fa-bowl-rice{--fa:"\e2eb"}.fa-person-pregnant{--fa:"\e31e"}.fa-home-lg,.fa-house-chimney{--fa:"\e3af"}.fa-house-crack{--fa:"\e3b1"}.fa-house-medical{--fa:"\e3b2"}.fa-cent-sign{--fa:"\e3f5"}.fa-plus-minus{--fa:"\e43c"}.fa-sailboat{--fa:"\e445"}.fa-section{--fa:"\e447"}.fa-shrimp{--fa:"\e448"}.fa-brazilian-real-sign{--fa:"\e46c"}.fa-chart-simple{--fa:"\e473"}.fa-diagram-next{--fa:"\e476"}.fa-diagram-predecessor{--fa:"\e477"}.fa-diagram-successor{--fa:"\e47a"}.fa-earth-oceania,.fa-globe-oceania{--fa:"\e47b"}.fa-bug-slash{--fa:"\e490"}.fa-file-circle-plus{--fa:"\e494"}.fa-shop-lock{--fa:"\e4a5"}.fa-virus-covid{--fa:"\e4a8"}.fa-virus-covid-slash{--fa:"\e4a9"}.fa-anchor-circle-check{--fa:"\e4aa"}.fa-anchor-circle-exclamation{--fa:"\e4ab"}.fa-anchor-circle-xmark{--fa:"\e4ac"}.fa-anchor-lock{--fa:"\e4ad"}.fa-arrow-down-up-across-line{--fa:"\e4af"}.fa-arrow-down-up-lock{--fa:"\e4b0"}.fa-arrow-right-to-city{--fa:"\e4b3"}.fa-arrow-up-from-ground-water{--fa:"\e4b5"}.fa-arrow-up-from-water-pump{--fa:"\e4b6"}.fa-arrow-up-right-dots{--fa:"\e4b7"}.fa-arrows-down-to-line{--fa:"\e4b8"}.fa-arrows-down-to-people{--fa:"\e4b9"}.fa-arrows-left-right-to-line{--fa:"\e4ba"}.fa-arrows-spin{--fa:"\e4bb"}.fa-arrows-split-up-and-left{--fa:"\e4bc"}.fa-arrows-to-circle{--fa:"\e4bd"}.fa-arrows-to-dot{--fa:"\e4be"}.fa-arrows-to-eye{--fa:"\e4bf"}.fa-arrows-turn-right{--fa:"\e4c0"}.fa-arrows-turn-to-dots{--fa:"\e4c1"}.fa-arrows-up-to-line{--fa:"\e4c2"}.fa-bore-hole{--fa:"\e4c3"}.fa-bottle-droplet{--fa:"\e4c4"}.fa-bottle-water{--fa:"\e4c5"}.fa-bowl-food{--fa:"\e4c6"}.fa-boxes-packing{--fa:"\e4c7"}.fa-bridge{--fa:"\e4c8"}.fa-bridge-circle-check{--fa:"\e4c9"}.fa-bridge-circle-exclamation{--fa:"\e4ca"}.fa-bridge-circle-xmark{--fa:"\e4cb"}.fa-bridge-lock{--fa:"\e4cc"}.fa-bridge-water{--fa:"\e4ce"}.fa-bucket{--fa:"\e4cf"}.fa-bugs{--fa:"\e4d0"}.fa-building-circle-arrow-right{--fa:"\e4d1"}.fa-building-circle-check{--fa:"\e4d2"}.fa-building-circle-exclamation{--fa:"\e4d3"}.fa-building-circle-xmark{--fa:"\e4d4"}.fa-building-flag{--fa:"\e4d5"}.fa-building-lock{--fa:"\e4d6"}.fa-building-ngo{--fa:"\e4d7"}.fa-building-shield{--fa:"\e4d8"}.fa-building-un{--fa:"\e4d9"}.fa-building-user{--fa:"\e4da"}.fa-building-wheat{--fa:"\e4db"}.fa-burst{--fa:"\e4dc"}.fa-car-on{--fa:"\e4dd"}.fa-car-tunnel{--fa:"\e4de"}.fa-child-combatant,.fa-child-rifle{--fa:"\e4e0"}.fa-children{--fa:"\e4e1"}.fa-circle-nodes{--fa:"\e4e2"}.fa-clipboard-question{--fa:"\e4e3"}.fa-cloud-showers-water{--fa:"\e4e4"}.fa-computer{--fa:"\e4e5"}.fa-cubes-stacked{--fa:"\e4e6"}.fa-envelope-circle-check{--fa:"\e4e8"}.fa-explosion{--fa:"\e4e9"}.fa-ferry{--fa:"\e4ea"}.fa-file-circle-exclamation{--fa:"\e4eb"}.fa-file-circle-minus{--fa:"\e4ed"}.fa-file-circle-question{--fa:"\e4ef"}.fa-file-shield{--fa:"\e4f0"}.fa-fire-burner{--fa:"\e4f1"}.fa-fish-fins{--fa:"\e4f2"}.fa-flask-vial{--fa:"\e4f3"}.fa-glass-water{--fa:"\e4f4"}.fa-glass-water-droplet{--fa:"\e4f5"}.fa-group-arrows-rotate{--fa:"\e4f6"}.fa-hand-holding-hand{--fa:"\e4f7"}.fa-handcuffs{--fa:"\e4f8"}.fa-hands-bound{--fa:"\e4f9"}.fa-hands-holding-child{--fa:"\e4fa"}.fa-hands-holding-circle{--fa:"\e4fb"}.fa-heart-circle-bolt{--fa:"\e4fc"}.fa-heart-circle-check{--fa:"\e4fd"}.fa-heart-circle-exclamation{--fa:"\e4fe"}.fa-heart-circle-minus{--fa:"\e4ff"}.fa-heart-circle-plus{--fa:"\e500"}.fa-heart-circle-xmark{--fa:"\e501"}.fa-helicopter-symbol{--fa:"\e502"}.fa-helmet-un{--fa:"\e503"}.fa-hill-avalanche{--fa:"\e507"}.fa-hill-rockslide{--fa:"\e508"}.fa-house-circle-check{--fa:"\e509"}.fa-house-circle-exclamation{--fa:"\e50a"}.fa-house-circle-xmark{--fa:"\e50b"}.fa-house-fire{--fa:"\e50c"}.fa-house-flag{--fa:"\e50d"}.fa-house-flood-water{--fa:"\e50e"}.fa-house-flood-water-circle-arrow-right{--fa:"\e50f"}.fa-house-lock{--fa:"\e510"}.fa-house-medical-circle-check{--fa:"\e511"}.fa-house-medical-circle-exclamation{--fa:"\e512"}.fa-house-medical-circle-xmark{--fa:"\e513"}.fa-house-medical-flag{--fa:"\e514"}.fa-house-tsunami{--fa:"\e515"}.fa-jar{--fa:"\e516"}.fa-jar-wheat{--fa:"\e517"}.fa-jet-fighter-up{--fa:"\e518"}.fa-jug-detergent{--fa:"\e519"}.fa-kitchen-set{--fa:"\e51a"}.fa-land-mine-on{--fa:"\e51b"}.fa-landmark-flag{--fa:"\e51c"}.fa-laptop-file{--fa:"\e51d"}.fa-lines-leaning{--fa:"\e51e"}.fa-location-pin-lock{--fa:"\e51f"}.fa-locust{--fa:"\e520"}.fa-magnifying-glass-arrow-right{--fa:"\e521"}.fa-magnifying-glass-chart{--fa:"\e522"}.fa-mars-and-venus-burst{--fa:"\e523"}.fa-mask-ventiOutfitr{--fa:"\e524"}.fa-mattress-pillow{--fa:"\e525"}.fa-mobile-retro{--fa:"\e527"}.fa-money-bill-transfer{--fa:"\e528"}.fa-money-bill-trend-up{--fa:"\e529"}.fa-money-bill-wheat{--fa:"\e52a"}.fa-mosquito{--fa:"\e52b"}.fa-mosquito-net{--fa:"\e52c"}.fa-mound{--fa:"\e52d"}.fa-mountain-city{--fa:"\e52e"}.fa-mountain-sun{--fa:"\e52f"}.fa-oil-well{--fa:"\e532"}.fa-people-group{--fa:"\e533"}.fa-people-line{--fa:"\e534"}.fa-people-pulling{--fa:"\e535"}.fa-people-robbery{--fa:"\e536"}.fa-people-roof{--fa:"\e537"}.fa-person-arrow-down-to-line{--fa:"\e538"}.fa-person-arrow-up-from-line{--fa:"\e539"}.fa-person-breastfeeding{--fa:"\e53a"}.fa-person-burst{--fa:"\e53b"}.fa-person-cane{--fa:"\e53c"}.fa-person-chalkboard{--fa:"\e53d"}.fa-person-circle-check{--fa:"\e53e"}.fa-person-circle-exclamation{--fa:"\e53f"}.fa-person-circle-minus{--fa:"\e540"}.fa-person-circle-plus{--fa:"\e541"}.fa-person-circle-question{--fa:"\e542"}.fa-person-circle-xmark{--fa:"\e543"}.fa-person-dress-burst{--fa:"\e544"}.fa-person-drowning{--fa:"\e545"}.fa-person-falling{--fa:"\e546"}.fa-person-falling-burst{--fa:"\e547"}.fa-person-half-dress{--fa:"\e548"}.fa-person-harassing{--fa:"\e549"}.fa-person-military-pointing{--fa:"\e54a"}.fa-person-military-rifle{--fa:"\e54b"}.fa-person-military-to-person{--fa:"\e54c"}.fa-person-rays{--fa:"\e54d"}.fa-person-rifle{--fa:"\e54e"}.fa-person-shelter{--fa:"\e54f"}.fa-person-walking-arrow-loop-left{--fa:"\e551"}.fa-person-walking-arrow-right{--fa:"\e552"}.fa-person-walking-dashed-line-arrow-right{--fa:"\e553"}.fa-person-walking-luggage{--fa:"\e554"}.fa-plane-circle-check{--fa:"\e555"}.fa-plane-circle-exclamation{--fa:"\e556"}.fa-plane-circle-xmark{--fa:"\e557"}.fa-plane-lock{--fa:"\e558"}.fa-plate-wheat{--fa:"\e55a"}.fa-plug-circle-bolt{--fa:"\e55b"}.fa-plug-circle-check{--fa:"\e55c"}.fa-plug-circle-exclamation{--fa:"\e55d"}.fa-plug-circle-minus{--fa:"\e55e"}.fa-plug-circle-plus{--fa:"\e55f"}.fa-plug-circle-xmark{--fa:"\e560"}.fa-ranking-star{--fa:"\e561"}.fa-road-barrier{--fa:"\e562"}.fa-road-bridge{--fa:"\e563"}.fa-road-circle-check{--fa:"\e564"}.fa-road-circle-exclamation{--fa:"\e565"}.fa-road-circle-xmark{--fa:"\e566"}.fa-road-lock{--fa:"\e567"}.fa-road-spikes{--fa:"\e568"}.fa-rug{--fa:"\e569"}.fa-sack-xmark{--fa:"\e56a"}.fa-school-circle-check{--fa:"\e56b"}.fa-school-circle-exclamation{--fa:"\e56c"}.fa-school-circle-xmark{--fa:"\e56d"}.fa-school-flag{--fa:"\e56e"}.fa-school-lock{--fa:"\e56f"}.fa-sheet-plastic{--fa:"\e571"}.fa-shield-cat{--fa:"\e572"}.fa-shield-dog{--fa:"\e573"}.fa-shield-heart{--fa:"\e574"}.fa-square-nfi{--fa:"\e576"}.fa-square-person-confined{--fa:"\e577"}.fa-square-virus{--fa:"\e578"}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:"\e579"}.fa-sun-plant-wilt{--fa:"\e57a"}.fa-tarp{--fa:"\e57b"}.fa-tarp-droplet{--fa:"\e57c"}.fa-tent{--fa:"\e57d"}.fa-tent-arrow-down-to-line{--fa:"\e57e"}.fa-tent-arrow-left-right{--fa:"\e57f"}.fa-tent-arrow-turn-left{--fa:"\e580"}.fa-tent-arrows-down{--fa:"\e581"}.fa-tents{--fa:"\e582"}.fa-toilet-portable{--fa:"\e583"}.fa-toilets-portable{--fa:"\e584"}.fa-tower-cell{--fa:"\e585"}.fa-tower-observation{--fa:"\e586"}.fa-tree-city{--fa:"\e587"}.fa-trowel{--fa:"\e589"}.fa-trowel-bricks{--fa:"\e58a"}.fa-truck-arrow-right{--fa:"\e58b"}.fa-truck-droplet{--fa:"\e58c"}.fa-truck-field{--fa:"\e58d"}.fa-truck-field-un{--fa:"\e58e"}.fa-truck-plane{--fa:"\e58f"}.fa-users-between-lines{--fa:"\e591"}.fa-users-line{--fa:"\e592"}.fa-users-rays{--fa:"\e593"}.fa-users-rectangle{--fa:"\e594"}.fa-users-viewfinder{--fa:"\e595"}.fa-vial-circle-check{--fa:"\e596"}.fa-vial-virus{--fa:"\e597"}.fa-wheat-awn-circle-exclamation{--fa:"\e598"}.fa-worm{--fa:"\e599"}.fa-xmarks-lines{--fa:"\e59a"}.fa-child-dress{--fa:"\e59c"}.fa-child-reaching{--fa:"\e59d"}.fa-file-circle-check{--fa:"\e5a0"}.fa-file-circle-xmark{--fa:"\e5a1"}.fa-person-through-window{--fa:"\e5a9"}.fa-plant-wilt{--fa:"\e5aa"}.fa-stapler{--fa:"\e5af"}.fa-train-tram{--fa:"\e5b4"}.fa-table-cells-column-lock{--fa:"\e678"}.fa-table-cells-row-lock{--fa:"\e67a"}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:"\e68f"}.fa-table-cells-row-unlock{--fa:"\e691"}.fa-chart-diagram{--fa:"\e695"}.fa-comment-nodes{--fa:"\e696"}.fa-file-fragment{--fa:"\e697"}.fa-file-half-dashed{--fa:"\e698"}.fa-hexagon-nodes{--fa:"\e699"}.fa-hexagon-nodes-bolt{--fa:"\e69a"}.fa-square-binary{--fa:"\e69b"}.fa-pentagon{--fa:"\e790"}.fa-non-binary{--fa:"\e807"}.fa-spiral{--fa:"\e80a"}.fa-mobile-vibrate{--fa:"\e816"}.fa-single-quote-left{--fa:"\e81b"}.fa-single-quote-right{--fa:"\e81c"}.fa-bus-side{--fa:"\e81d"}.fa-heptagon,.fa-septagon{--fa:"\e820"}.fa-glass-martini,.fa-martini-glass-empty{--fa:"\f000"}.fa-music{--fa:"\f001"}.fa-magnifying-glass,.fa-search{--fa:"\f002"}.fa-heart{--fa:"\f004"}.fa-star{--fa:"\f005"}.fa-user,.fa-user-alt,.fa-user-large{--fa:"\f007"}.fa-film,.fa-film-alt,.fa-film-simple{--fa:"\f008"}.fa-table-cells-large,.fa-th-large{--fa:"\f009"}.fa-table-cells,.fa-th{--fa:"\f00a"}.fa-table-list,.fa-th-list{--fa:"\f00b"}.fa-check{--fa:"\f00c"}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:"\f00d"}.fa-magnifying-glass-plus,.fa-search-plus{--fa:"\f00e"}.fa-magnifying-glass-minus,.fa-search-minus{--fa:"\f010"}.fa-power-off{--fa:"\f011"}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:"\f012"}.fa-cog,.fa-gear{--fa:"\f013"}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:"\f015"}.fa-clock,.fa-clock-four{--fa:"\f017"}.fa-road{--fa:"\f018"}.fa-download{--fa:"\f019"}.fa-inbox{--fa:"\f01c"}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:"\f01e"}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:"\f021"}.fa-list-alt,.fa-rectangle-list{--fa:"\f022"}.fa-lock{--fa:"\f023"}.fa-flag{--fa:"\f024"}.fa-headphones,.fa-headphones-alt,.fa-headphones-simple{--fa:"\f025"}.fa-volume-off{--fa:"\f026"}.fa-volume-down,.fa-volume-low{--fa:"\f027"}.fa-volume-high,.fa-volume-up{--fa:"\f028"}.fa-qrcode{--fa:"\f029"}.fa-barcode{--fa:"\f02a"}.fa-tag{--fa:"\f02b"}.fa-tags{--fa:"\f02c"}.fa-book{--fa:"\f02d"}.fa-bookmark{--fa:"\f02e"}.fa-print{--fa:"\f02f"}.fa-camera,.fa-camera-alt{--fa:"\f030"}.fa-font{--fa:"\f031"}.fa-bold{--fa:"\f032"}.fa-italic{--fa:"\f033"}.fa-text-height{--fa:"\f034"}.fa-text-width{--fa:"\f035"}.fa-align-left{--fa:"\f036"}.fa-align-center{--fa:"\f037"}.fa-align-right{--fa:"\f038"}.fa-align-justify{--fa:"\f039"}.fa-list,.fa-list-squares{--fa:"\f03a"}.fa-dedent,.fa-outdent{--fa:"\f03b"}.fa-indent{--fa:"\f03c"}.fa-video,.fa-video-camera{--fa:"\f03d"}.fa-image{--fa:"\f03e"}.fa-location-pin,.fa-map-marker{--fa:"\f041"}.fa-adjust,.fa-circle-half-stroke{--fa:"\f042"}.fa-droplet,.fa-tint{--fa:"\f043"}.fa-edit,.fa-pen-to-square{--fa:"\f044"}.fa-arrows,.fa-arrows-up-down-left-right{--fa:"\f047"}.fa-backward-step,.fa-step-backward{--fa:"\f048"}.fa-backward-fast,.fa-fast-backward{--fa:"\f049"}.fa-backward{--fa:"\f04a"}.fa-play{--fa:"\f04b"}.fa-pause{--fa:"\f04c"}.fa-stop{--fa:"\f04d"}.fa-forward{--fa:"\f04e"}.fa-fast-forward,.fa-forward-fast{--fa:"\f050"}.fa-forward-step,.fa-step-forward{--fa:"\f051"}.fa-eject{--fa:"\f052"}.fa-chevron-left{--fa:"\f053"}.fa-chevron-right{--fa:"\f054"}.fa-circle-plus,.fa-plus-circle{--fa:"\f055"}.fa-circle-minus,.fa-minus-circle{--fa:"\f056"}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:"\f057"}.fa-check-circle,.fa-circle-check{--fa:"\f058"}.fa-circle-question,.fa-question-circle{--fa:"\f059"}.fa-circle-info,.fa-info-circle{--fa:"\f05a"}.fa-crosshairs{--fa:"\f05b"}.fa-ban,.fa-cancel{--fa:"\f05e"}.fa-arrow-left{--fa:"\f060"}.fa-arrow-right{--fa:"\f061"}.fa-arrow-up{--fa:"\f062"}.fa-arrow-down{--fa:"\f063"}.fa-mail-forward,.fa-share{--fa:"\f064"}.fa-expand{--fa:"\f065"}.fa-compress{--fa:"\f066"}.fa-minus,.fa-subtract{--fa:"\f068"}.fa-circle-exclamation,.fa-exclamation-circle{--fa:"\f06a"}.fa-gift{--fa:"\f06b"}.fa-leaf{--fa:"\f06c"}.fa-fire{--fa:"\f06d"}.fa-eye{--fa:"\f06e"}.fa-eye-slash{--fa:"\f070"}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:"\f071"}.fa-plane{--fa:"\f072"}.fa-calendar-alt,.fa-calendar-days{--fa:"\f073"}.fa-random,.fa-shuffle{--fa:"\f074"}.fa-comment{--fa:"\f075"}.fa-magnet{--fa:"\f076"}.fa-chevron-up{--fa:"\f077"}.fa-chevron-down{--fa:"\f078"}.fa-retweet{--fa:"\f079"}.fa-cart-shopping,.fa-shopping-cart{--fa:"\f07a"}.fa-folder,.fa-folder-blank{--fa:"\f07b"}.fa-folder-open{--fa:"\f07c"}.fa-arrows-up-down,.fa-arrows-v{--fa:"\f07d"}.fa-arrows-h,.fa-arrows-left-right{--fa:"\f07e"}.fa-bar-chart,.fa-chart-bar{--fa:"\f080"}.fa-camera-retro{--fa:"\f083"}.fa-key{--fa:"\f084"}.fa-cogs,.fa-gears{--fa:"\f085"}.fa-comments{--fa:"\f086"}.fa-star-half{--fa:"\f089"}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:"\f08b"}.fa-thumb-tack,.fa-thumbtack{--fa:"\f08d"}.fa-arrow-up-right-from-square,.fa-external-link{--fa:"\f08e"}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:"\f090"}.fa-trophy{--fa:"\f091"}.fa-upload{--fa:"\f093"}.fa-lemon{--fa:"\f094"}.fa-phone{--fa:"\f095"}.fa-phone-square,.fa-square-phone{--fa:"\f098"}.fa-unlock{--fa:"\f09c"}.fa-credit-card,.fa-credit-card-alt{--fa:"\f09d"}.fa-feed,.fa-rss{--fa:"\f09e"}.fa-hard-drive,.fa-hdd{--fa:"\f0a0"}.fa-bullhorn{--fa:"\f0a1"}.fa-certificate{--fa:"\f0a3"}.fa-hand-point-right{--fa:"\f0a4"}.fa-hand-point-left{--fa:"\f0a5"}.fa-hand-point-up{--fa:"\f0a6"}.fa-hand-point-down{--fa:"\f0a7"}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:"\f0a8"}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:"\f0a9"}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:"\f0aa"}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:"\f0ab"}.fa-globe{--fa:"\f0ac"}.fa-wrench{--fa:"\f0ad"}.fa-list-check,.fa-tasks{--fa:"\f0ae"}.fa-filter{--fa:"\f0b0"}.fa-briefcase{--fa:"\f0b1"}.fa-arrows-alt,.fa-up-down-left-right{--fa:"\f0b2"}.fa-users{--fa:"\f0c0"}.fa-chain,.fa-link{--fa:"\f0c1"}.fa-cloud{--fa:"\f0c2"}.fa-flask{--fa:"\f0c3"}.fa-cut,.fa-scissors{--fa:"\f0c4"}.fa-copy{--fa:"\f0c5"}.fa-paperclip{--fa:"\f0c6"}.fa-floppy-disk,.fa-save{--fa:"\f0c7"}.fa-square{--fa:"\f0c8"}.fa-bars,.fa-navicon{--fa:"\f0c9"}.fa-list-dots,.fa-list-ul{--fa:"\f0ca"}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:"\f0cb"}.fa-strikethrough{--fa:"\f0cc"}.fa-underline{--fa:"\f0cd"}.fa-table{--fa:"\f0ce"}.fa-magic,.fa-wand-magic{--fa:"\f0d0"}.fa-truck{--fa:"\f0d1"}.fa-money-bill{--fa:"\f0d6"}.fa-caret-down{--fa:"\f0d7"}.fa-caret-up{--fa:"\f0d8"}.fa-caret-left{--fa:"\f0d9"}.fa-caret-right{--fa:"\f0da"}.fa-columns,.fa-table-columns{--fa:"\f0db"}.fa-sort,.fa-unsorted{--fa:"\f0dc"}.fa-sort-desc,.fa-sort-down{--fa:"\f0dd"}.fa-sort-asc,.fa-sort-up{--fa:"\f0de"}.fa-envelope{--fa:"\f0e0"}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:"\f0e2"}.fa-gavel,.fa-legal{--fa:"\f0e3"}.fa-bolt,.fa-zap{--fa:"\f0e7"}.fa-sitemap{--fa:"\f0e8"}.fa-umbrella{--fa:"\f0e9"}.fa-file-clipboard,.fa-paste{--fa:"\f0ea"}.fa-lightbulb{--fa:"\f0eb"}.fa-arrow-right-arrow-left,.fa-exchange{--fa:"\f0ec"}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:"\f0ed"}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:"\f0ee"}.fa-user-doctor,.fa-user-md{--fa:"\f0f0"}.fa-stethoscope{--fa:"\f0f1"}.fa-suitcase{--fa:"\f0f2"}.fa-bell{--fa:"\f0f3"}.fa-coffee,.fa-mug-saucer{--fa:"\f0f4"}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:"\f0f8"}.fa-ambulance,.fa-truck-medical{--fa:"\f0f9"}.fa-medkit,.fa-suitcase-medical{--fa:"\f0fa"}.fa-fighter-jet,.fa-jet-fighter{--fa:"\f0fb"}.fa-beer,.fa-beer-mug-empty{--fa:"\f0fc"}.fa-h-square,.fa-square-h{--fa:"\f0fd"}.fa-plus-square,.fa-square-plus{--fa:"\f0fe"}.fa-angle-double-left,.fa-angles-left{--fa:"\f100"}.fa-angle-double-right,.fa-angles-right{--fa:"\f101"}.fa-angle-double-up,.fa-angles-up{--fa:"\f102"}.fa-angle-double-down,.fa-angles-down{--fa:"\f103"}.fa-angle-left{--fa:"\f104"}.fa-angle-right{--fa:"\f105"}.fa-angle-up{--fa:"\f106"}.fa-angle-down{--fa:"\f107"}.fa-laptop{--fa:"\f109"}.fa-tablet-button{--fa:"\f10a"}.fa-mobile-button{--fa:"\f10b"}.fa-quote-left,.fa-quote-left-alt{--fa:"\f10d"}.fa-quote-right,.fa-quote-right-alt{--fa:"\f10e"}.fa-spinner{--fa:"\f110"}.fa-circle{--fa:"\f111"}.fa-face-smile,.fa-smile{--fa:"\f118"}.fa-face-frown,.fa-frown{--fa:"\f119"}.fa-face-meh,.fa-meh{--fa:"\f11a"}.fa-gamepad{--fa:"\f11b"}.fa-keyboard{--fa:"\f11c"}.fa-flag-checkered{--fa:"\f11e"}.fa-terminal{--fa:"\f120"}.fa-code{--fa:"\f121"}.fa-mail-reply-all,.fa-reply-all{--fa:"\f122"}.fa-location-arrow{--fa:"\f124"}.fa-crop{--fa:"\f125"}.fa-code-branch{--fa:"\f126"}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:"\f127"}.fa-info{--fa:"\f129"}.fa-superscript{--fa:"\f12b"}.fa-subscript{--fa:"\f12c"}.fa-eraser{--fa:"\f12d"}.fa-puzzle-piece{--fa:"\f12e"}.fa-microphone{--fa:"\f130"}.fa-microphone-slash{--fa:"\f131"}.fa-shield,.fa-shield-blank{--fa:"\f132"}.fa-calendar{--fa:"\f133"}.fa-fire-extinguisher{--fa:"\f134"}.fa-rocket{--fa:"\f135"}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:"\f137"}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:"\f138"}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:"\f139"}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:"\f13a"}.fa-anchor{--fa:"\f13d"}.fa-unlock-alt,.fa-unlock-keyhole{--fa:"\f13e"}.fa-bullseye{--fa:"\f140"}.fa-ellipsis,.fa-ellipsis-h{--fa:"\f141"}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:"\f142"}.fa-rss-square,.fa-square-rss{--fa:"\f143"}.fa-circle-play,.fa-play-circle{--fa:"\f144"}.fa-ticket{--fa:"\f145"}.fa-minus-square,.fa-square-minus{--fa:"\f146"}.fa-arrow-turn-up,.fa-level-up{--fa:"\f148"}.fa-arrow-turn-down,.fa-level-down{--fa:"\f149"}.fa-check-square,.fa-square-check{--fa:"\f14a"}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:"\f14b"}.fa-external-link-square,.fa-square-arrow-up-right{--fa:"\f14c"}.fa-share-from-square,.fa-share-square{--fa:"\f14d"}.fa-compass{--fa:"\f14e"}.fa-caret-square-down,.fa-square-caret-down{--fa:"\f150"}.fa-caret-square-up,.fa-square-caret-up{--fa:"\f151"}.fa-caret-square-right,.fa-square-caret-right{--fa:"\f152"}.fa-eur,.fa-euro,.fa-euro-sign{--fa:"\f153"}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:"\f154"}.fa-rupee,.fa-rupee-sign{--fa:"\f156"}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:"\f157"}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:"\f158"}.fa-krw,.fa-won,.fa-won-sign{--fa:"\f159"}.fa-file{--fa:"\f15b"}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:"\f15c"}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:"\f15d"}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:"\f15e"}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:"\f160"}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:"\f161"}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:"\f162"}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:"\f163"}.fa-thumbs-up{--fa:"\f164"}.fa-thumbs-down{--fa:"\f165"}.fa-arrow-down-long,.fa-long-arrow-down{--fa:"\f175"}.fa-arrow-up-long,.fa-long-arrow-up{--fa:"\f176"}.fa-arrow-left-long,.fa-long-arrow-left{--fa:"\f177"}.fa-arrow-right-long,.fa-long-arrow-right{--fa:"\f178"}.fa-female,.fa-person-dress{--fa:"\f182"}.fa-male,.fa-person{--fa:"\f183"}.fa-sun{--fa:"\f185"}.fa-moon{--fa:"\f186"}.fa-archive,.fa-box-archive{--fa:"\f187"}.fa-bug{--fa:"\f188"}.fa-caret-square-left,.fa-square-caret-left{--fa:"\f191"}.fa-circle-dot,.fa-dot-circle{--fa:"\f192"}.fa-wheelchair{--fa:"\f193"}.fa-lira-sign{--fa:"\f195"}.fa-shuttle-space,.fa-space-shuttle{--fa:"\f197"}.fa-envelope-square,.fa-square-envelope{--fa:"\f199"}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:"\f19c"}.fa-graduation-cap,.fa-mortar-board{--fa:"\f19d"}.fa-language{--fa:"\f1ab"}.fa-fax{--fa:"\f1ac"}.fa-building{--fa:"\f1ad"}.fa-child{--fa:"\f1ae"}.fa-paw{--fa:"\f1b0"}.fa-cube{--fa:"\f1b2"}.fa-cubes{--fa:"\f1b3"}.fa-recycle{--fa:"\f1b8"}.fa-automobile,.fa-car{--fa:"\f1b9"}.fa-cab,.fa-taxi{--fa:"\f1ba"}.fa-tree{--fa:"\f1bb"}.fa-database{--fa:"\f1c0"}.fa-file-pdf{--fa:"\f1c1"}.fa-file-word{--fa:"\f1c2"}.fa-file-excel{--fa:"\f1c3"}.fa-file-powerpoint{--fa:"\f1c4"}.fa-file-image{--fa:"\f1c5"}.fa-file-archive,.fa-file-zipper{--fa:"\f1c6"}.fa-file-audio{--fa:"\f1c7"}.fa-file-video{--fa:"\f1c8"}.fa-file-code{--fa:"\f1c9"}.fa-life-ring{--fa:"\f1cd"}.fa-circle-notch{--fa:"\f1ce"}.fa-paper-plane{--fa:"\f1d8"}.fa-clock-rotate-left,.fa-history{--fa:"\f1da"}.fa-header,.fa-heading{--fa:"\f1dc"}.fa-paragraph{--fa:"\f1dd"}.fa-sliders,.fa-sliders-h{--fa:"\f1de"}.fa-share-alt,.fa-share-nodes{--fa:"\f1e0"}.fa-share-alt-square,.fa-square-share-nodes{--fa:"\f1e1"}.fa-bomb{--fa:"\f1e2"}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:"\f1e3"}.fa-teletype,.fa-tty{--fa:"\f1e4"}.fa-binoculars{--fa:"\f1e5"}.fa-plug{--fa:"\f1e6"}.fa-newspaper{--fa:"\f1ea"}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:"\f1eb"}.fa-calcuOutfitr{--fa:"\f1ec"}.fa-bell-slash{--fa:"\f1f6"}.fa-trash{--fa:"\f1f8"}.fa-copyright{--fa:"\f1f9"}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:"\f1fb"}.fa-paint-brush,.fa-paintbrush{--fa:"\f1fc"}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:"\f1fd"}.fa-area-chart,.fa-chart-area{--fa:"\f1fe"}.fa-chart-pie,.fa-pie-chart{--fa:"\f200"}.fa-chart-line,.fa-line-chart{--fa:"\f201"}.fa-toggle-off{--fa:"\f204"}.fa-toggle-on{--fa:"\f205"}.fa-bicycle{--fa:"\f206"}.fa-bus{--fa:"\f207"}.fa-closed-captioning{--fa:"\f20a"}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:"\f20b"}.fa-cart-plus{--fa:"\f217"}.fa-cart-arrow-down{--fa:"\f218"}.fa-diamond{--fa:"\f219"}.fa-ship{--fa:"\f21a"}.fa-user-secret{--fa:"\f21b"}.fa-motorcycle{--fa:"\f21c"}.fa-street-view{--fa:"\f21d"}.fa-heart-pulse,.fa-heartbeat{--fa:"\f21e"}.fa-venus{--fa:"\f221"}.fa-mars{--fa:"\f222"}.fa-mercury{--fa:"\f223"}.fa-mars-and-venus{--fa:"\f224"}.fa-transgender,.fa-transgender-alt{--fa:"\f225"}.fa-venus-double{--fa:"\f226"}.fa-mars-double{--fa:"\f227"}.fa-venus-mars{--fa:"\f228"}.fa-mars-stroke{--fa:"\f229"}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:"\f22a"}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:"\f22b"}.fa-neuter{--fa:"\f22c"}.fa-genderless{--fa:"\f22d"}.fa-server{--fa:"\f233"}.fa-user-plus{--fa:"\f234"}.fa-user-times,.fa-user-xmark{--fa:"\f235"}.fa-bed{--fa:"\f236"}.fa-train{--fa:"\f238"}.fa-subway,.fa-train-subway{--fa:"\f239"}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:"\f240"}.fa-battery-4,.fa-battery-three-quarters{--fa:"\f241"}.fa-battery-3,.fa-battery-half{--fa:"\f242"}.fa-battery-2,.fa-battery-quarter{--fa:"\f243"}.fa-battery-0,.fa-battery-empty{--fa:"\f244"}.fa-arrow-pointer,.fa-mouse-pointer{--fa:"\f245"}.fa-i-cursor{--fa:"\f246"}.fa-object-group{--fa:"\f247"}.fa-object-ungroup{--fa:"\f248"}.fa-note-sticky,.fa-sticky-note{--fa:"\f249"}.fa-clone{--fa:"\f24d"}.fa-balance-scale,.fa-scale-balanced{--fa:"\f24e"}.fa-hourglass-1,.fa-hourglass-start{--fa:"\f251"}.fa-hourglass-2,.fa-hourglass-half{--fa:"\f252"}.fa-hourglass-3,.fa-hourglass-end{--fa:"\f253"}.fa-hourglass,.fa-hourglass-empty{--fa:"\f254"}.fa-hand-back-fist,.fa-hand-rock{--fa:"\f255"}.fa-hand,.fa-hand-paper{--fa:"\f256"}.fa-hand-scissors{--fa:"\f257"}.fa-hand-lizard{--fa:"\f258"}.fa-hand-spock{--fa:"\f259"}.fa-hand-pointer{--fa:"\f25a"}.fa-hand-peace{--fa:"\f25b"}.fa-trademark{--fa:"\f25c"}.fa-registered{--fa:"\f25d"}.fa-television,.fa-tv,.fa-tv-alt{--fa:"\f26c"}.fa-calendar-plus{--fa:"\f271"}.fa-calendar-minus{--fa:"\f272"}.fa-calendar-times,.fa-calendar-xmark{--fa:"\f273"}.fa-calendar-check{--fa:"\f274"}.fa-industry{--fa:"\f275"}.fa-map-pin{--fa:"\f276"}.fa-map-signs,.fa-signs-post{--fa:"\f277"}.fa-map{--fa:"\f279"}.fa-comment-alt,.fa-message{--fa:"\f27a"}.fa-circle-pause,.fa-pause-circle{--fa:"\f28b"}.fa-circle-stop,.fa-stop-circle{--fa:"\f28d"}.fa-bag-shopping,.fa-shopping-bag{--fa:"\f290"}.fa-basket-shopping,.fa-shopping-basket{--fa:"\f291"}.fa-universal-access{--fa:"\f29a"}.fa-blind,.fa-person-walking-with-cane{--fa:"\f29d"}.fa-audio-description{--fa:"\f29e"}.fa-phone-volume,.fa-volume-control-phone{--fa:"\f2a0"}.fa-braille{--fa:"\f2a1"}.fa-assistive-listening-systems,.fa-ear-listen{--fa:"\f2a2"}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:"\f2a3"}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:"\f2a4"}.fa-hands,.fa-sign-language,.fa-signing{--fa:"\f2a7"}.fa-eye-low-vision,.fa-low-vision{--fa:"\f2a8"}.fa-handshake,.fa-handshake-alt,.fa-handshake-simple{--fa:"\f2b5"}.fa-envelope-open{--fa:"\f2b6"}.fa-address-book,.fa-contact-book{--fa:"\f2b9"}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:"\f2bb"}.fa-circle-user,.fa-user-circle{--fa:"\f2bd"}.fa-id-badge{--fa:"\f2c1"}.fa-drivers-license,.fa-id-card{--fa:"\f2c2"}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:"\f2c7"}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:"\f2c8"}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:"\f2c9"}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:"\f2ca"}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:"\f2cb"}.fa-shower{--fa:"\f2cc"}.fa-bath,.fa-bathtub{--fa:"\f2cd"}.fa-podcast{--fa:"\f2ce"}.fa-window-maximize{--fa:"\f2d0"}.fa-window-minimize{--fa:"\f2d1"}.fa-window-restore{--fa:"\f2d2"}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:"\f2d3"}.fa-microchip{--fa:"\f2db"}.fa-snowflake{--fa:"\f2dc"}.fa-spoon,.fa-utensil-spoon{--fa:"\f2e5"}.fa-cutlery,.fa-utensils{--fa:"\f2e7"}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:"\f2ea"}.fa-trash-alt,.fa-trash-can{--fa:"\f2ed"}.fa-rotate,.fa-sync-alt{--fa:"\f2f1"}.fa-stopwatch{--fa:"\f2f2"}.fa-right-from-bracket,.fa-sign-out-alt{--fa:"\f2f5"}.fa-right-to-bracket,.fa-sign-in-alt{--fa:"\f2f6"}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:"\f2f9"}.fa-poo{--fa:"\f2fe"}.fa-images{--fa:"\f302"}.fa-pencil,.fa-pencil-alt{--fa:"\f303"}.fa-pen{--fa:"\f304"}.fa-pen-alt,.fa-pen-clip{--fa:"\f305"}.fa-octagon{--fa:"\f306"}.fa-down-long,.fa-long-arrow-alt-down{--fa:"\f309"}.fa-left-long,.fa-long-arrow-alt-left{--fa:"\f30a"}.fa-long-arrow-alt-right,.fa-right-long{--fa:"\f30b"}.fa-long-arrow-alt-up,.fa-up-long{--fa:"\f30c"}.fa-hexagon{--fa:"\f312"}.fa-file-edit,.fa-file-pen{--fa:"\f31c"}.fa-expand-arrows-alt,.fa-maximize{--fa:"\f31e"}.fa-clipboard{--fa:"\f328"}.fa-arrows-alt-h,.fa-left-right{--fa:"\f337"}.fa-arrows-alt-v,.fa-up-down{--fa:"\f338"}.fa-alarm-clock{--fa:"\f34e"}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:"\f358"}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:"\f359"}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:"\f35a"}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:"\f35b"}.fa-external-link-alt,.fa-up-right-from-square{--fa:"\f35d"}.fa-external-link-square-alt,.fa-square-up-right{--fa:"\f360"}.fa-exchange-alt,.fa-right-left{--fa:"\f362"}.fa-repeat{--fa:"\f363"}.fa-code-commit{--fa:"\f386"}.fa-code-merge{--fa:"\f387"}.fa-desktop,.fa-desktop-alt{--fa:"\f390"}.fa-gem{--fa:"\f3a5"}.fa-level-down-alt,.fa-turn-down{--fa:"\f3be"}.fa-level-up-alt,.fa-turn-up{--fa:"\f3bf"}.fa-lock-open{--fa:"\f3c1"}.fa-location-dot,.fa-map-marker-alt{--fa:"\f3c5"}.fa-microphone-alt,.fa-microphone-lines{--fa:"\f3c9"}.fa-mobile-alt,.fa-mobile-screen-button{--fa:"\f3cd"}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:"\f3ce"}.fa-mobile-android-alt,.fa-mobile-screen{--fa:"\f3cf"}.fa-money-bill-1,.fa-money-bill-alt{--fa:"\f3d1"}.fa-phone-slash{--fa:"\f3dd"}.fa-image-portrait,.fa-portrait{--fa:"\f3e0"}.fa-mail-reply,.fa-reply{--fa:"\f3e5"}.fa-shield-alt,.fa-shield-halved{--fa:"\f3ed"}.fa-tablet-alt,.fa-tablet-screen-button{--fa:"\f3fa"}.fa-tablet,.fa-tablet-android{--fa:"\f3fb"}.fa-ticket-alt,.fa-ticket-simple{--fa:"\f3ff"}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:"\f410"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:"\f422"}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:"\f424"}.fa-baseball-bat-ball{--fa:"\f432"}.fa-baseball,.fa-baseball-ball{--fa:"\f433"}.fa-basketball,.fa-basketball-ball{--fa:"\f434"}.fa-bowling-ball{--fa:"\f436"}.fa-chess{--fa:"\f439"}.fa-chess-bishop{--fa:"\f43a"}.fa-chess-board{--fa:"\f43c"}.fa-chess-king{--fa:"\f43f"}.fa-chess-knight{--fa:"\f441"}.fa-chess-pawn{--fa:"\f443"}.fa-chess-queen{--fa:"\f445"}.fa-chess-rook{--fa:"\f447"}.fa-dumbbell{--fa:"\f44b"}.fa-football,.fa-football-ball{--fa:"\f44e"}.fa-golf-ball,.fa-golf-ball-tee{--fa:"\f450"}.fa-hockey-puck{--fa:"\f453"}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:"\f458"}.fa-square-full{--fa:"\f45c"}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:"\f45d"}.fa-volleyball,.fa-volleyball-ball{--fa:"\f45f"}.fa-allergies,.fa-hand-dots{--fa:"\f461"}.fa-band-aid,.fa-bandage{--fa:"\f462"}.fa-box{--fa:"\f466"}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:"\f468"}.fa-briefcase-medical{--fa:"\f469"}.fa-burn,.fa-fire-flame-simple{--fa:"\f46a"}.fa-capsules{--fa:"\f46b"}.fa-clipboard-check{--fa:"\f46c"}.fa-clipboard-list{--fa:"\f46d"}.fa-diagnoses,.fa-person-dots-from-line{--fa:"\f470"}.fa-dna{--fa:"\f471"}.fa-dolly,.fa-dolly-box{--fa:"\f472"}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:"\f474"}.fa-file-medical{--fa:"\f477"}.fa-file-medical-alt,.fa-file-waveform{--fa:"\f478"}.fa-first-aid,.fa-kit-medical{--fa:"\f479"}.fa-circle-h,.fa-hospital-symbol{--fa:"\f47e"}.fa-id-card-alt,.fa-id-card-clip{--fa:"\f47f"}.fa-notes-medical{--fa:"\f481"}.fa-pallet{--fa:"\f482"}.fa-pills{--fa:"\f484"}.fa-prescription-bottle{--fa:"\f485"}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:"\f486"}.fa-bed-pulse,.fa-procedures{--fa:"\f487"}.fa-shipping-fast,.fa-truck-fast{--fa:"\f48b"}.fa-smoking{--fa:"\f48d"}.fa-syringe{--fa:"\f48e"}.fa-tablets{--fa:"\f490"}.fa-thermometer{--fa:"\f491"}.fa-vial{--fa:"\f492"}.fa-vials{--fa:"\f493"}.fa-warehouse{--fa:"\f494"}.fa-weight,.fa-weight-scale{--fa:"\f496"}.fa-x-ray{--fa:"\f497"}.fa-box-open{--fa:"\f49e"}.fa-comment-dots,.fa-commenting{--fa:"\f4ad"}.fa-comment-slash{--fa:"\f4b3"}.fa-couch{--fa:"\f4b8"}.fa-circle-dollar-to-slot,.fa-donate{--fa:"\f4b9"}.fa-dove{--fa:"\f4ba"}.fa-hand-holding{--fa:"\f4bd"}.fa-hand-holding-heart{--fa:"\f4be"}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:"\f4c0"}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:"\f4c1"}.fa-hands-holding{--fa:"\f4c2"}.fa-hands-helping,.fa-handshake-angle{--fa:"\f4c4"}.fa-parachute-box{--fa:"\f4cd"}.fa-people-carry,.fa-people-carry-box{--fa:"\f4ce"}.fa-piggy-bank{--fa:"\f4d3"}.fa-ribbon{--fa:"\f4d6"}.fa-route{--fa:"\f4d7"}.fa-seedling,.fa-sprout{--fa:"\f4d8"}.fa-sign,.fa-sign-hanging{--fa:"\f4d9"}.fa-face-smile-wink,.fa-smile-wink{--fa:"\f4da"}.fa-tape{--fa:"\f4db"}.fa-truck-loading,.fa-truck-ramp-box{--fa:"\f4de"}.fa-truck-moving{--fa:"\f4df"}.fa-video-slash{--fa:"\f4e2"}.fa-wine-glass{--fa:"\f4e3"}.fa-user-astronaut{--fa:"\f4fb"}.fa-user-check{--fa:"\f4fc"}.fa-user-clock{--fa:"\f4fd"}.fa-user-cog,.fa-user-gear{--fa:"\f4fe"}.fa-user-edit,.fa-user-pen{--fa:"\f4ff"}.fa-user-friends,.fa-user-group{--fa:"\f500"}.fa-user-graduate{--fa:"\f501"}.fa-user-lock{--fa:"\f502"}.fa-user-minus{--fa:"\f503"}.fa-user-ninja{--fa:"\f504"}.fa-user-shield{--fa:"\f505"}.fa-user-alt-slash,.fa-user-large-slash,.fa-user-slash{--fa:"\f506"}.fa-user-tag{--fa:"\f507"}.fa-user-tie{--fa:"\f508"}.fa-users-cog,.fa-users-gear{--fa:"\f509"}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:"\f515"}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:"\f516"}.fa-blender{--fa:"\f517"}.fa-book-open{--fa:"\f518"}.fa-broadcast-tower,.fa-tower-broadcast{--fa:"\f519"}.fa-broom{--fa:"\f51a"}.fa-blackboard,.fa-chalkboard{--fa:"\f51b"}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:"\f51c"}.fa-church{--fa:"\f51d"}.fa-coins{--fa:"\f51e"}.fa-compact-disc{--fa:"\f51f"}.fa-crow{--fa:"\f520"}.fa-crown{--fa:"\f521"}.fa-dice{--fa:"\f522"}.fa-dice-five{--fa:"\f523"}.fa-dice-four{--fa:"\f524"}.fa-dice-one{--fa:"\f525"}.fa-dice-six{--fa:"\f526"}.fa-dice-three{--fa:"\f527"}.fa-dice-two{--fa:"\f528"}.fa-divide{--fa:"\f529"}.fa-door-closed{--fa:"\f52a"}.fa-door-open{--fa:"\f52b"}.fa-feather{--fa:"\f52d"}.fa-frog{--fa:"\f52e"}.fa-gas-pump{--fa:"\f52f"}.fa-glasses{--fa:"\f530"}.fa-greater-than-equal{--fa:"\f532"}.fa-helicopter{--fa:"\f533"}.fa-infinity{--fa:"\f534"}.fa-kiwi-bird{--fa:"\f535"}.fa-less-than-equal{--fa:"\f537"}.fa-memory{--fa:"\f538"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:"\f539"}.fa-money-bill-wave{--fa:"\f53a"}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:"\f53b"}.fa-money-check{--fa:"\f53c"}.fa-money-check-alt,.fa-money-check-dollar{--fa:"\f53d"}.fa-not-equal{--fa:"\f53e"}.fa-palette{--fa:"\f53f"}.fa-parking,.fa-square-parking{--fa:"\f540"}.fa-diagram-project,.fa-project-diagram{--fa:"\f542"}.fa-receipt{--fa:"\f543"}.fa-robot{--fa:"\f544"}.fa-ruler{--fa:"\f545"}.fa-ruler-combined{--fa:"\f546"}.fa-ruler-horizontal{--fa:"\f547"}.fa-ruler-vertical{--fa:"\f548"}.fa-school{--fa:"\f549"}.fa-screwdriver{--fa:"\f54a"}.fa-shoe-prints{--fa:"\f54b"}.fa-skull{--fa:"\f54c"}.fa-ban-smoking,.fa-smoking-ban{--fa:"\f54d"}.fa-store{--fa:"\f54e"}.fa-shop,.fa-store-alt{--fa:"\f54f"}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:"\f550"}.fa-stroopwafel{--fa:"\f551"}.fa-toolbox{--fa:"\f552"}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:"\f553"}.fa-person-walking,.fa-walking{--fa:"\f554"}.fa-wallet{--fa:"\f555"}.fa-angry,.fa-face-angry{--fa:"\f556"}.fa-archway{--fa:"\f557"}.fa-atlas,.fa-book-atlas{--fa:"\f558"}.fa-award{--fa:"\f559"}.fa-backspace,.fa-delete-left{--fa:"\f55a"}.fa-bezier-curve{--fa:"\f55b"}.fa-bong{--fa:"\f55c"}.fa-brush{--fa:"\f55d"}.fa-bus-alt,.fa-bus-simple{--fa:"\f55e"}.fa-cannabis{--fa:"\f55f"}.fa-check-double{--fa:"\f560"}.fa-cocktail,.fa-martini-glass-citrus{--fa:"\f561"}.fa-bell-concierge,.fa-concierge-bell{--fa:"\f562"}.fa-cookie{--fa:"\f563"}.fa-cookie-bite{--fa:"\f564"}.fa-crop-alt,.fa-crop-simple{--fa:"\f565"}.fa-digital-tachograph,.fa-tachograph-digital{--fa:"\f566"}.fa-dizzy,.fa-face-dizzy{--fa:"\f567"}.fa-compass-drafting,.fa-drafting-compass{--fa:"\f568"}.fa-drum{--fa:"\f569"}.fa-drum-steelpan{--fa:"\f56a"}.fa-feather-alt,.fa-feather-pointed{--fa:"\f56b"}.fa-file-contract{--fa:"\f56c"}.fa-file-arrow-down,.fa-file-download{--fa:"\f56d"}.fa-arrow-right-from-file,.fa-file-export{--fa:"\f56e"}.fa-arrow-right-to-file,.fa-file-import{--fa:"\f56f"}.fa-file-invoice{--fa:"\f570"}.fa-file-invoice-dollar{--fa:"\f571"}.fa-file-prescription{--fa:"\f572"}.fa-file-signature{--fa:"\f573"}.fa-file-arrow-up,.fa-file-upload{--fa:"\f574"}.fa-fill{--fa:"\f575"}.fa-fill-drip{--fa:"\f576"}.fa-fingerprint{--fa:"\f577"}.fa-fish{--fa:"\f578"}.fa-face-flushed,.fa-flushed{--fa:"\f579"}.fa-face-frown-open,.fa-frown-open{--fa:"\f57a"}.fa-glass-martini-alt,.fa-martini-glass{--fa:"\f57b"}.fa-earth-africa,.fa-globe-africa{--fa:"\f57c"}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:"\f57d"}.fa-earth-asia,.fa-globe-asia{--fa:"\f57e"}.fa-face-grimace,.fa-grimace{--fa:"\f57f"}.fa-face-grin,.fa-grin{--fa:"\f580"}.fa-face-grin-wide,.fa-grin-alt{--fa:"\f581"}.fa-face-grin-beam,.fa-grin-beam{--fa:"\f582"}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:"\f583"}.fa-face-grin-hearts,.fa-grin-hearts{--fa:"\f584"}.fa-face-grin-squint,.fa-grin-squint{--fa:"\f585"}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:"\f586"}.fa-face-grin-stars,.fa-grin-stars{--fa:"\f587"}.fa-face-grin-tears,.fa-grin-tears{--fa:"\f588"}.fa-face-grin-tongue,.fa-grin-tongue{--fa:"\f589"}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:"\f58a"}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:"\f58b"}.fa-face-grin-wink,.fa-grin-wink{--fa:"\f58c"}.fa-grid-horizontal,.fa-grip,.fa-grip-horizontal{--fa:"\f58d"}.fa-grid-vertical,.fa-grip-vertical{--fa:"\f58e"}.fa-headset{--fa:"\f590"}.fa-highlighter{--fa:"\f591"}.fa-hot-tub,.fa-hot-tub-person{--fa:"\f593"}.fa-hotel{--fa:"\f594"}.fa-joint{--fa:"\f595"}.fa-face-kiss,.fa-kiss{--fa:"\f596"}.fa-face-kiss-beam,.fa-kiss-beam{--fa:"\f597"}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:"\f598"}.fa-face-laugh,.fa-laugh{--fa:"\f599"}.fa-face-laugh-beam,.fa-laugh-beam{--fa:"\f59a"}.fa-face-laugh-squint,.fa-laugh-squint{--fa:"\f59b"}.fa-face-laugh-wink,.fa-laugh-wink{--fa:"\f59c"}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:"\f59d"}.fa-map-location,.fa-map-marked{--fa:"\f59f"}.fa-map-location-dot,.fa-map-marked-alt{--fa:"\f5a0"}.fa-marker{--fa:"\f5a1"}.fa-medal{--fa:"\f5a2"}.fa-face-meh-blank,.fa-meh-blank{--fa:"\f5a4"}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:"\f5a5"}.fa-monument{--fa:"\f5a6"}.fa-mortar-pestle{--fa:"\f5a7"}.fa-paint-roller{--fa:"\f5aa"}.fa-passport{--fa:"\f5ab"}.fa-pen-fancy{--fa:"\f5ac"}.fa-pen-nib{--fa:"\f5ad"}.fa-pen-ruler,.fa-pencil-ruler{--fa:"\f5ae"}.fa-plane-arrival{--fa:"\f5af"}.fa-plane-departure{--fa:"\f5b0"}.fa-prescription{--fa:"\f5b1"}.fa-face-sad-cry,.fa-sad-cry{--fa:"\f5b3"}.fa-face-sad-tear,.fa-sad-tear{--fa:"\f5b4"}.fa-shuttle-van,.fa-van-shuttle{--fa:"\f5b6"}.fa-signature{--fa:"\f5b7"}.fa-face-smile-beam,.fa-smile-beam{--fa:"\f5b8"}.fa-solar-panel{--fa:"\f5ba"}.fa-spa{--fa:"\f5bb"}.fa-splotch{--fa:"\f5bc"}.fa-spray-can{--fa:"\f5bd"}.fa-stamp{--fa:"\f5bf"}.fa-star-half-alt,.fa-star-half-stroke{--fa:"\f5c0"}.fa-suitcase-rolling{--fa:"\f5c1"}.fa-face-surprise,.fa-surprise{--fa:"\f5c2"}.fa-swatchbook{--fa:"\f5c3"}.fa-person-swimming,.fa-swimmer{--fa:"\f5c4"}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:"\f5c5"}.fa-droplet-slash,.fa-tint-slash{--fa:"\f5c7"}.fa-face-tired,.fa-tired{--fa:"\f5c8"}.fa-tooth{--fa:"\f5c9"}.fa-umbrella-beach{--fa:"\f5ca"}.fa-weight-hanging{--fa:"\f5cd"}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:"\f5ce"}.fa-air-freshener,.fa-spray-can-sparkles{--fa:"\f5d0"}.fa-apple-alt,.fa-apple-whole{--fa:"\f5d1"}.fa-atom{--fa:"\f5d2"}.fa-bone{--fa:"\f5d7"}.fa-book-open-reader,.fa-book-reader{--fa:"\f5da"}.fa-brain{--fa:"\f5dc"}.fa-car-alt,.fa-car-rear{--fa:"\f5de"}.fa-battery-car,.fa-car-battery{--fa:"\f5df"}.fa-car-burst,.fa-car-crash{--fa:"\f5e1"}.fa-car-side{--fa:"\f5e4"}.fa-charging-station{--fa:"\f5e7"}.fa-diamond-turn-right,.fa-directions{--fa:"\f5eb"}.fa-draw-polygon,.fa-vector-polygon{--fa:"\f5ee"}.fa-laptop-code{--fa:"\f5fc"}.fa-layer-group{--fa:"\f5fd"}.fa-location,.fa-location-crosshairs{--fa:"\f601"}.fa-lungs{--fa:"\f604"}.fa-microscope{--fa:"\f610"}.fa-oil-can{--fa:"\f613"}.fa-poop{--fa:"\f619"}.fa-shapes,.fa-triangle-circle-square{--fa:"\f61f"}.fa-star-of-life{--fa:"\f621"}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:"\f624"}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:"\f625"}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:"\f629"}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:"\f62a"}.fa-teeth{--fa:"\f62e"}.fa-teeth-open{--fa:"\f62f"}.fa-masks-theater,.fa-theater-masks{--fa:"\f630"}.fa-traffic-light{--fa:"\f637"}.fa-truck-monster{--fa:"\f63b"}.fa-truck-pickup{--fa:"\f63c"}.fa-ad,.fa-rectangle-ad{--fa:"\f641"}.fa-ankh{--fa:"\f644"}.fa-bible,.fa-book-bible{--fa:"\f647"}.fa-briefcase-clock,.fa-business-time{--fa:"\f64a"}.fa-city{--fa:"\f64f"}.fa-comment-dollar{--fa:"\f651"}.fa-comments-dollar{--fa:"\f653"}.fa-cross{--fa:"\f654"}.fa-dharmachakra{--fa:"\f655"}.fa-envelope-open-text{--fa:"\f658"}.fa-folder-minus{--fa:"\f65d"}.fa-folder-plus{--fa:"\f65e"}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:"\f662"}.fa-gopuram{--fa:"\f664"}.fa-hamsa{--fa:"\f665"}.fa-bahai,.fa-haykal{--fa:"\f666"}.fa-jedi{--fa:"\f669"}.fa-book-journal-whills,.fa-journal-whills{--fa:"\f66a"}.fa-kaaba{--fa:"\f66b"}.fa-khanda{--fa:"\f66d"}.fa-landmark{--fa:"\f66f"}.fa-envelopes-bulk,.fa-mail-bulk{--fa:"\f674"}.fa-menorah{--fa:"\f676"}.fa-mosque{--fa:"\f678"}.fa-om{--fa:"\f679"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:"\f67b"}.fa-peace{--fa:"\f67c"}.fa-place-of-worship{--fa:"\f67f"}.fa-poll,.fa-square-poll-vertical{--fa:"\f681"}.fa-poll-h,.fa-square-poll-horizontal{--fa:"\f682"}.fa-person-praying,.fa-pray{--fa:"\f683"}.fa-hands-praying,.fa-praying-hands{--fa:"\f684"}.fa-book-quran,.fa-quran{--fa:"\f687"}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:"\f688"}.fa-magnifying-glass-location,.fa-search-location{--fa:"\f689"}.fa-socks{--fa:"\f696"}.fa-square-root-alt,.fa-square-root-variable{--fa:"\f698"}.fa-star-and-crescent{--fa:"\f699"}.fa-star-of-david{--fa:"\f69a"}.fa-synagogue{--fa:"\f69b"}.fa-scroll-torah,.fa-torah{--fa:"\f6a0"}.fa-torii-gate{--fa:"\f6a1"}.fa-vihara{--fa:"\f6a7"}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:"\f6a9"}.fa-yin-yang{--fa:"\f6ad"}.fa-blender-phone{--fa:"\f6b6"}.fa-book-dead,.fa-book-skull{--fa:"\f6b7"}.fa-campground{--fa:"\f6bb"}.fa-cat{--fa:"\f6be"}.fa-chair{--fa:"\f6c0"}.fa-cloud-moon{--fa:"\f6c3"}.fa-cloud-sun{--fa:"\f6c4"}.fa-cow{--fa:"\f6c8"}.fa-dice-d20{--fa:"\f6cf"}.fa-dice-d6{--fa:"\f6d1"}.fa-dog{--fa:"\f6d3"}.fa-dragon{--fa:"\f6d5"}.fa-drumstick-bite{--fa:"\f6d7"}.fa-dungeon{--fa:"\f6d9"}.fa-file-csv{--fa:"\f6dd"}.fa-fist-raised,.fa-hand-fist{--fa:"\f6de"}.fa-ghost{--fa:"\f6e2"}.fa-hammer{--fa:"\f6e3"}.fa-hanukiah{--fa:"\f6e6"}.fa-hat-wizard{--fa:"\f6e8"}.fa-hiking,.fa-person-hiking{--fa:"\f6ec"}.fa-hippo{--fa:"\f6ed"}.fa-horse{--fa:"\f6f0"}.fa-house-chimney-crack,.fa-house-damage{--fa:"\f6f1"}.fa-hryvnia,.fa-hryvnia-sign{--fa:"\f6f2"}.fa-mask{--fa:"\f6fa"}.fa-mountain{--fa:"\f6fc"}.fa-network-wired{--fa:"\f6ff"}.fa-otter{--fa:"\f700"}.fa-ring{--fa:"\f70b"}.fa-person-running,.fa-running{--fa:"\f70c"}.fa-scroll{--fa:"\f70e"}.fa-skull-crossbones{--fa:"\f714"}.fa-slash{--fa:"\f715"}.fa-spider{--fa:"\f717"}.fa-toilet-paper,.fa-toilet-paper-alt,.fa-toilet-paper-blank{--fa:"\f71e"}.fa-tractor{--fa:"\f722"}.fa-user-injured{--fa:"\f728"}.fa-vr-cardboard{--fa:"\f729"}.fa-wand-sparkles{--fa:"\f72b"}.fa-wind{--fa:"\f72e"}.fa-wine-bottle{--fa:"\f72f"}.fa-cloud-meatball{--fa:"\f73b"}.fa-cloud-moon-rain{--fa:"\f73c"}.fa-cloud-rain{--fa:"\f73d"}.fa-cloud-showers-heavy{--fa:"\f740"}.fa-cloud-sun-rain{--fa:"\f743"}.fa-democrat{--fa:"\f747"}.fa-flag-usa{--fa:"\f74d"}.fa-hurricane{--fa:"\f751"}.fa-landmark-alt,.fa-landmark-dome{--fa:"\f752"}.fa-meteor{--fa:"\f753"}.fa-person-booth{--fa:"\f756"}.fa-poo-bolt,.fa-poo-storm{--fa:"\f75a"}.fa-rainbow{--fa:"\f75b"}.fa-republican{--fa:"\f75e"}.fa-smog{--fa:"\f75f"}.fa-temperature-high{--fa:"\f769"}.fa-temperature-low{--fa:"\f76b"}.fa-cloud-bolt,.fa-thunderstorm{--fa:"\f76c"}.fa-tornado{--fa:"\f76f"}.fa-volcano{--fa:"\f770"}.fa-check-to-slot,.fa-vote-yea{--fa:"\f772"}.fa-water{--fa:"\f773"}.fa-baby{--fa:"\f77c"}.fa-baby-carriage,.fa-carriage-baby{--fa:"\f77d"}.fa-biohazard{--fa:"\f780"}.fa-blog{--fa:"\f781"}.fa-calendar-day{--fa:"\f783"}.fa-calendar-week{--fa:"\f784"}.fa-candy-cane{--fa:"\f786"}.fa-carrot{--fa:"\f787"}.fa-cash-register{--fa:"\f788"}.fa-compress-arrows-alt,.fa-minimize{--fa:"\f78c"}.fa-dumpster{--fa:"\f793"}.fa-dumpster-fire{--fa:"\f794"}.fa-ethernet{--fa:"\f796"}.fa-gifts{--fa:"\f79c"}.fa-champagne-glasses,.fa-glass-cheers{--fa:"\f79f"}.fa-glass-whiskey,.fa-whiskey-glass{--fa:"\f7a0"}.fa-earth-europe,.fa-globe-europe{--fa:"\f7a2"}.fa-grip-lines{--fa:"\f7a4"}.fa-grip-lines-vertical{--fa:"\f7a5"}.fa-guitar{--fa:"\f7a6"}.fa-heart-broken,.fa-heart-crack{--fa:"\f7a9"}.fa-holly-berry{--fa:"\f7aa"}.fa-horse-head{--fa:"\f7ab"}.fa-icicles{--fa:"\f7ad"}.fa-igloo{--fa:"\f7ae"}.fa-mitten{--fa:"\f7b5"}.fa-mug-hot{--fa:"\f7b6"}.fa-radiation{--fa:"\f7b9"}.fa-circle-radiation,.fa-radiation-alt{--fa:"\f7ba"}.fa-restroom{--fa:"\f7bd"}.fa-satellite{--fa:"\f7bf"}.fa-satellite-dish{--fa:"\f7c0"}.fa-sd-card{--fa:"\f7c2"}.fa-sim-card{--fa:"\f7c4"}.fa-person-skating,.fa-skating{--fa:"\f7c5"}.fa-person-skiing,.fa-skiing{--fa:"\f7c9"}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:"\f7ca"}.fa-sleigh{--fa:"\f7cc"}.fa-comment-sms,.fa-sms{--fa:"\f7cd"}.fa-person-snowboarding,.fa-snowboarding{--fa:"\f7ce"}.fa-snowman{--fa:"\f7d0"}.fa-snowplow{--fa:"\f7d2"}.fa-tenge,.fa-tenge-sign{--fa:"\f7d7"}.fa-toilet{--fa:"\f7d8"}.fa-screwdriver-wrench,.fa-tools{--fa:"\f7d9"}.fa-cable-car,.fa-tram{--fa:"\f7da"}.fa-fire-alt,.fa-fire-flame-curved{--fa:"\f7e4"}.fa-bacon{--fa:"\f7e5"}.fa-book-medical{--fa:"\f7e6"}.fa-bread-slice{--fa:"\f7ec"}.fa-cheese{--fa:"\f7ef"}.fa-clinic-medical,.fa-house-chimney-medical{--fa:"\f7f2"}.fa-clipboard-user{--fa:"\f7f3"}.fa-comment-medical{--fa:"\f7f5"}.fa-crutch{--fa:"\f7f7"}.fa-disease{--fa:"\f7fa"}.fa-egg{--fa:"\f7fb"}.fa-folder-tree{--fa:"\f802"}.fa-burger,.fa-hamburger{--fa:"\f805"}.fa-hand-middle-finger{--fa:"\f806"}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:"\f807"}.fa-hospital-user{--fa:"\f80d"}.fa-hotdog{--fa:"\f80f"}.fa-ice-cream{--fa:"\f810"}.fa-laptop-medical{--fa:"\f812"}.fa-pager{--fa:"\f815"}.fa-pepper-hot{--fa:"\f816"}.fa-pizza-slice{--fa:"\f818"}.fa-sack-dollar{--fa:"\f81d"}.fa-book-tanakh,.fa-tanakh{--fa:"\f827"}.fa-bars-progress,.fa-tasks-alt{--fa:"\f828"}.fa-trash-arrow-up,.fa-trash-restore{--fa:"\f829"}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:"\f82a"}.fa-user-nurse{--fa:"\f82f"}.fa-wave-square{--fa:"\f83e"}.fa-biking,.fa-person-biking{--fa:"\f84a"}.fa-border-all{--fa:"\f84c"}.fa-border-none{--fa:"\f850"}.fa-border-style,.fa-border-top-left{--fa:"\f853"}.fa-digging,.fa-person-digging{--fa:"\f85e"}.fa-fan{--fa:"\f863"}.fa-heart-music-camera-bolt,.fa-icons{--fa:"\f86d"}.fa-phone-alt,.fa-phone-flip{--fa:"\f879"}.fa-phone-square-alt,.fa-square-phone-flip{--fa:"\f87b"}.fa-photo-film,.fa-photo-video{--fa:"\f87c"}.fa-remove-format,.fa-text-slash{--fa:"\f87d"}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:"\f881"}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:"\f882"}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:"\f884"}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:"\f885"}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:"\f886"}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:"\f887"}.fa-spell-check{--fa:"\f891"}.fa-voicemail{--fa:"\f897"}.fa-hat-cowboy{--fa:"\f8c0"}.fa-hat-cowboy-side{--fa:"\f8c1"}.fa-computer-mouse,.fa-mouse{--fa:"\f8cc"}.fa-radio{--fa:"\f8d7"}.fa-record-vinyl{--fa:"\f8d9"}.fa-walkie-talkie{--fa:"\f8ef"}.fa-caravan{--fa:"\f8ff"} 9 :host,:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2)}.fa-brands,.fa-classic.fa-brands,.fab{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:"\e007"}.fa-ideal{--fa:"\e013"}.fa-microblog{--fa:"\e01a"}.fa-pied-piper-square,.fa-square-pied-piper{--fa:"\e01e"}.fa-unity{--fa:"\e049"}.fa-dailymotion{--fa:"\e052"}.fa-instagram-square,.fa-square-instagram{--fa:"\e055"}.fa-mixer{--fa:"\e056"}.fa-shopify{--fa:"\e057"}.fa-deezer{--fa:"\e077"}.fa-edge-legacy{--fa:"\e078"}.fa-google-pay{--fa:"\e079"}.fa-rust{--fa:"\e07a"}.fa-tiktok{--fa:"\e07b"}.fa-unsplash{--fa:"\e07c"}.fa-cloudflare{--fa:"\e07d"}.fa-guilded{--fa:"\e07e"}.fa-hive{--fa:"\e07f"}.fa-42-group,.fa-innosoft{--fa:"\e080"}.fa-instalod{--fa:"\e081"}.fa-octopus-deploy{--fa:"\e082"}.fa-perbyte{--fa:"\e083"}.fa-uncharted{--fa:"\e084"}.fa-watchman-monitoring{--fa:"\e087"}.fa-wodu{--fa:"\e088"}.fa-wirsindhandwerk,.fa-wsh{--fa:"\e2d0"}.fa-bots{--fa:"\e340"}.fa-cmplid{--fa:"\e360"}.fa-bilibili{--fa:"\e3d9"}.fa-golang{--fa:"\e40f"}.fa-pix{--fa:"\e43a"}.fa-sitrox{--fa:"\e44a"}.fa-hashnode{--fa:"\e499"}.fa-meta{--fa:"\e49b"}.fa-padlet{--fa:"\e4a0"}.fa-nfc-directional{--fa:"\e530"}.fa-nfc-symbol{--fa:"\e531"}.fa-screenpal{--fa:"\e570"}.fa-space-awesome{--fa:"\e5ac"}.fa-square-font-awesome{--fa:"\e5ad"}.fa-gitlab-square,.fa-square-gitlab{--fa:"\e5ae"}.fa-odysee{--fa:"\e5c6"}.fa-stubber{--fa:"\e5c7"}.fa-debian{--fa:"\e60b"}.fa-shoelace{--fa:"\e60c"}.fa-threads{--fa:"\e618"}.fa-square-threads{--fa:"\e619"}.fa-square-x-twitter{--fa:"\e61a"}.fa-x-twitter{--fa:"\e61b"}.fa-opensuse{--fa:"\e62b"}.fa-letterboxd{--fa:"\e62d"}.fa-square-letterboxd{--fa:"\e62e"}.fa-mintbit{--fa:"\e62f"}.fa-google-scholar{--fa:"\e63b"}.fa-brave{--fa:"\e63c"}.fa-brave-reverse{--fa:"\e63d"}.fa-pixiv{--fa:"\e640"}.fa-upwork{--fa:"\e641"}.fa-webflow{--fa:"\e65c"}.fa-signal-messenger{--fa:"\e663"}.fa-bluesky{--fa:"\e671"}.fa-jxl{--fa:"\e67b"}.fa-square-upwork{--fa:"\e67c"}.fa-web-awesome{--fa:"\e682"}.fa-square-web-awesome{--fa:"\e683"}.fa-square-web-awesome-stroke{--fa:"\e684"}.fa-dart-lang{--fa:"\e693"}.fa-flutter{--fa:"\e694"}.fa-files-pinwheel{--fa:"\e69f"}.fa-css{--fa:"\e6a2"}.fa-square-bluesky{--fa:"\e6a3"}.fa-openai{--fa:"\e7cf"}.fa-square-linkedin{--fa:"\e7d0"}.fa-cash-app{--fa:"\e7d4"}.fa-disqus{--fa:"\e7d5"}.fa-11ty,.fa-eleventy{--fa:"\e7d6"}.fa-kakao-talk{--fa:"\e7d7"}.fa-linktree{--fa:"\e7d8"}.fa-notion{--fa:"\e7d9"}.fa-pandora{--fa:"\e7da"}.fa-pixelfed{--fa:"\e7db"}.fa-tidal{--fa:"\e7dc"}.fa-vsco{--fa:"\e7dd"}.fa-w3c{--fa:"\e7de"}.fa-lumon{--fa:"\e7e2"}.fa-lumon-drop{--fa:"\e7e3"}.fa-square-figma{--fa:"\e7e4"}.fa-tex{--fa:"\e7ff"}.fa-duolingo{--fa:"\e812"}.fa-square-twitter,.fa-twitter-square{--fa:"\f081"}.fa-facebook-square,.fa-square-facebook{--fa:"\f082"}.fa-linkedin{--fa:"\f08c"}.fa-github-square,.fa-square-github{--fa:"\f092"}.fa-twitter{--fa:"\f099"}.fa-facebook{--fa:"\f09a"}.fa-github{--fa:"\f09b"}.fa-pinterest{--fa:"\f0d2"}.fa-pinterest-square,.fa-square-pinterest{--fa:"\f0d3"}.fa-google-plus-square,.fa-square-google-plus{--fa:"\f0d4"}.fa-google-plus-g{--fa:"\f0d5"}.fa-linkedin-in{--fa:"\f0e1"}.fa-github-alt{--fa:"\f113"}.fa-maxcdn{--fa:"\f136"}.fa-html5{--fa:"\f13b"}.fa-css3{--fa:"\f13c"}.fa-btc{--fa:"\f15a"}.fa-youtube{--fa:"\f167"}.fa-xing{--fa:"\f168"}.fa-square-xing,.fa-xing-square{--fa:"\f169"}.fa-dropbox{--fa:"\f16b"}.fa-stack-overflow{--fa:"\f16c"}.fa-instagram{--fa:"\f16d"}.fa-flickr{--fa:"\f16e"}.fa-adn{--fa:"\f170"}.fa-bitbucket{--fa:"\f171"}.fa-tumblr{--fa:"\f173"}.fa-square-tumblr,.fa-tumblr-square{--fa:"\f174"}.fa-apple{--fa:"\f179"}.fa-windows{--fa:"\f17a"}.fa-android{--fa:"\f17b"}.fa-linux{--fa:"\f17c"}.fa-dribbble{--fa:"\f17d"}.fa-skype{--fa:"\f17e"}.fa-foursquare{--fa:"\f180"}.fa-trello{--fa:"\f181"}.fa-gratipay{--fa:"\f184"}.fa-vk{--fa:"\f189"}.fa-weibo{--fa:"\f18a"}.fa-renren{--fa:"\f18b"}.fa-pagelines{--fa:"\f18c"}.fa-stack-exchange{--fa:"\f18d"}.fa-square-vimeo,.fa-vimeo-square{--fa:"\f194"}.fa-slack,.fa-slack-hash{--fa:"\f198"}.fa-WordPress{--fa:"\f19a"}.fa-openid{--fa:"\f19b"}.fa-yahoo{--fa:"\f19e"}.fa-google{--fa:"\f1a0"}.fa-reddit{--fa:"\f1a1"}.fa-reddit-square,.fa-square-reddit{--fa:"\f1a2"}.fa-stumbleupon-circle{--fa:"\f1a3"}.fa-stumbleupon{--fa:"\f1a4"}.fa-delicious{--fa:"\f1a5"}.fa-digg{--fa:"\f1a6"}.fa-pied-piper-pp{--fa:"\f1a7"}.fa-pied-piper-alt{--fa:"\f1a8"}.fa-drupal{--fa:"\f1a9"}.fa-joomla{--fa:"\f1aa"}.fa-behance{--fa:"\f1b4"}.fa-behance-square,.fa-square-behance{--fa:"\f1b5"}.fa-steam{--fa:"\f1b6"}.fa-square-steam,.fa-steam-square{--fa:"\f1b7"}.fa-spotify{--fa:"\f1bc"}.fa-deviantart{--fa:"\f1bd"}.fa-soundcloud{--fa:"\f1be"}.fa-vine{--fa:"\f1ca"}.fa-codepen{--fa:"\f1cb"}.fa-jsfiddle{--fa:"\f1cc"}.fa-rebel{--fa:"\f1d0"}.fa-empire{--fa:"\f1d1"}.fa-git-square,.fa-square-git{--fa:"\f1d2"}.fa-git{--fa:"\f1d3"}.fa-hacker-news{--fa:"\f1d4"}.fa-tencent-weibo{--fa:"\f1d5"}.fa-qq{--fa:"\f1d6"}.fa-weixin{--fa:"\f1d7"}.fa-slideshare{--fa:"\f1e7"}.fa-twitch{--fa:"\f1e8"}.fa-yelp{--fa:"\f1e9"}.fa-paypal{--fa:"\f1ed"}.fa-google-wallet{--fa:"\f1ee"}.fa-cc-visa{--fa:"\f1f0"}.fa-cc-mastercard{--fa:"\f1f1"}.fa-cc-discover{--fa:"\f1f2"}.fa-cc-amex{--fa:"\f1f3"}.fa-cc-paypal{--fa:"\f1f4"}.fa-cc-stripe{--fa:"\f1f5"}.fa-lastfm{--fa:"\f202"}.fa-lastfm-square,.fa-square-lastfm{--fa:"\f203"}.fa-ioxhost{--fa:"\f208"}.fa-angellist{--fa:"\f209"}.fa-buysellads{--fa:"\f20d"}.fa-connectdevelop{--fa:"\f20e"}.fa-dashcube{--fa:"\f210"}.fa-forumbee{--fa:"\f211"}.fa-leanpub{--fa:"\f212"}.fa-sellsy{--fa:"\f213"}.fa-shirtsinbulk{--fa:"\f214"}.fa-simplybuilt{--fa:"\f215"}.fa-skyatlas{--fa:"\f216"}.fa-pinterest-p{--fa:"\f231"}.fa-whatsapp{--fa:"\f232"}.fa-viacoin{--fa:"\f237"}.fa-medium,.fa-medium-m{--fa:"\f23a"}.fa-y-combinator{--fa:"\f23b"}.fa-optin-monster{--fa:"\f23c"}.fa-opencart{--fa:"\f23d"}.fa-expeditedssl{--fa:"\f23e"}.fa-cc-jcb{--fa:"\f24b"}.fa-cc-diners-club{--fa:"\f24c"}.fa-creative-commons{--fa:"\f25e"}.fa-gg{--fa:"\f260"}.fa-gg-circle{--fa:"\f261"}.fa-odnoklassniki{--fa:"\f263"}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:"\f264"}.fa-get-pocket{--fa:"\f265"}.fa-wikipedia-w{--fa:"\f266"}.fa-safari{--fa:"\f267"}.fa-chrome{--fa:"\f268"}.fa-firefox{--fa:"\f269"}.fa-opera{--fa:"\f26a"}.fa-internet-explorer{--fa:"\f26b"}.fa-contao{--fa:"\f26d"}.fa-500px{--fa:"\f26e"}.fa-amazon{--fa:"\f270"}.fa-houzz{--fa:"\f27c"}.fa-vimeo-v{--fa:"\f27d"}.fa-black-tie{--fa:"\f27e"}.fa-fonticons{--fa:"\f280"}.fa-reddit-alien{--fa:"\f281"}.fa-edge{--fa:"\f282"}.fa-codiepie{--fa:"\f284"}.fa-modx{--fa:"\f285"}.fa-fort-awesome{--fa:"\f286"}.fa-usb{--fa:"\f287"}.fa-product-hunt{--fa:"\f288"}.fa-mixcloud{--fa:"\f289"}.fa-scribd{--fa:"\f28a"}.fa-bluetooth{--fa:"\f293"}.fa-bluetooth-b{--fa:"\f294"}.fa-gitlab{--fa:"\f296"}.fa-wpbeginner{--fa:"\f297"}.fa-wpforms{--fa:"\f298"}.fa-envira{--fa:"\f299"}.fa-glide{--fa:"\f2a5"}.fa-glide-g{--fa:"\f2a6"}.fa-viadeo{--fa:"\f2a9"}.fa-square-viadeo,.fa-viadeo-square{--fa:"\f2aa"}.fa-snapchat,.fa-snapchat-ghost{--fa:"\f2ab"}.fa-snapchat-square,.fa-square-snapchat{--fa:"\f2ad"}.fa-pied-piper{--fa:"\f2ae"}.fa-first-order{--fa:"\f2b0"}.fa-yoast{--fa:"\f2b1"}.fa-themeisle{--fa:"\f2b2"}.fa-google-plus{--fa:"\f2b3"}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:"\f2b4"}.fa-linode{--fa:"\f2b8"}.fa-quora{--fa:"\f2c4"}.fa-free-code-camp{--fa:"\f2c5"}.fa-telegram,.fa-telegram-plane{--fa:"\f2c6"}.fa-bandcamp{--fa:"\f2d5"}.fa-grav{--fa:"\f2d6"}.fa-etsy{--fa:"\f2d7"}.fa-imdb{--fa:"\f2d8"}.fa-ravelry{--fa:"\f2d9"}.fa-sellcast{--fa:"\f2da"}.fa-superpowers{--fa:"\f2dd"}.fa-wpexplorer{--fa:"\f2de"}.fa-meetup{--fa:"\f2e0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:"\f35c"}.fa-accessible-icon{--fa:"\f368"}.fa-accusoft{--fa:"\f369"}.fa-adversal{--fa:"\f36a"}.fa-affiliatetheme{--fa:"\f36b"}.fa-algolia{--fa:"\f36c"}.fa-amilia{--fa:"\f36d"}.fa-angrycreative{--fa:"\f36e"}.fa-app-store{--fa:"\f36f"}.fa-app-store-ios{--fa:"\f370"}.fa-apper{--fa:"\f371"}.fa-asymmetrik{--fa:"\f372"}.fa-audible{--fa:"\f373"}.fa-avianex{--fa:"\f374"}.fa-aws{--fa:"\f375"}.fa-bimobject{--fa:"\f378"}.fa-bitcoin{--fa:"\f379"}.fa-bity{--fa:"\f37a"}.fa-blackberry{--fa:"\f37b"}.fa-blogger{--fa:"\f37c"}.fa-blogger-b{--fa:"\f37d"}.fa-buromobelexperte{--fa:"\f37f"}.fa-centercode{--fa:"\f380"}.fa-cloudscale{--fa:"\f383"}.fa-cloudsmith{--fa:"\f384"}.fa-cloudversify{--fa:"\f385"}.fa-cpanel{--fa:"\f388"}.fa-css3-alt{--fa:"\f38b"}.fa-cuttlefish{--fa:"\f38c"}.fa-d-and-d{--fa:"\f38d"}.fa-deploydog{--fa:"\f38e"}.fa-deskpro{--fa:"\f38f"}.fa-digital-ocean{--fa:"\f391"}.fa-discord{--fa:"\f392"}.fa-discourse{--fa:"\f393"}.fa-dochub{--fa:"\f394"}.fa-docker{--fa:"\f395"}.fa-draft2digital{--fa:"\f396"}.fa-dribbble-square,.fa-square-dribbble{--fa:"\f397"}.fa-dyalog{--fa:"\f399"}.fa-earlybirds{--fa:"\f39a"}.fa-erlang{--fa:"\f39d"}.fa-facebook-f{--fa:"\f39e"}.fa-facebook-messenger{--fa:"\f39f"}.fa-firstdraft{--fa:"\f3a1"}.fa-fonticons-fi{--fa:"\f3a2"}.fa-fort-awesome-alt{--fa:"\f3a3"}.fa-freebsd{--fa:"\f3a4"}.fa-gitkraken{--fa:"\f3a6"}.fa-gofore{--fa:"\f3a7"}.fa-goodreads{--fa:"\f3a8"}.fa-goodreads-g{--fa:"\f3a9"}.fa-google-drive{--fa:"\f3aa"}.fa-google-play{--fa:"\f3ab"}.fa-gripfire{--fa:"\f3ac"}.fa-grunt{--fa:"\f3ad"}.fa-gulp{--fa:"\f3ae"}.fa-hacker-news-square,.fa-square-hacker-news{--fa:"\f3af"}.fa-hire-a-helper{--fa:"\f3b0"}.fa-hotjar{--fa:"\f3b1"}.fa-hubspot{--fa:"\f3b2"}.fa-itunes{--fa:"\f3b4"}.fa-itunes-note{--fa:"\f3b5"}.fa-jenkins{--fa:"\f3b6"}.fa-joget{--fa:"\f3b7"}.fa-js{--fa:"\f3b8"}.fa-js-square,.fa-square-js{--fa:"\f3b9"}.fa-keycdn{--fa:"\f3ba"}.fa-kickstarter,.fa-square-kickstarter{--fa:"\f3bb"}.fa-kickstarter-k{--fa:"\f3bc"}.fa-laravel{--fa:"\f3bd"}.fa-line{--fa:"\f3c0"}.fa-lyft{--fa:"\f3c3"}.fa-magento{--fa:"\f3c4"}.fa-medapps{--fa:"\f3c6"}.fa-medrt{--fa:"\f3c8"}.fa-microsoft{--fa:"\f3ca"}.fa-mix{--fa:"\f3cb"}.fa-mizuni{--fa:"\f3cc"}.fa-monero{--fa:"\f3d0"}.fa-napster{--fa:"\f3d2"}.fa-node-js{--fa:"\f3d3"}.fa-npm{--fa:"\f3d4"}.fa-ns8{--fa:"\f3d5"}.fa-nutritionix{--fa:"\f3d6"}.fa-page4{--fa:"\f3d7"}.fa-palfed{--fa:"\f3d8"}.fa-patreon{--fa:"\f3d9"}.fa-periscope{--fa:"\f3da"}.fa-phabricator{--fa:"\f3db"}.fa-phoenix-framework{--fa:"\f3dc"}.fa-playstation{--fa:"\f3df"}.fa-pushed{--fa:"\f3e1"}.fa-python{--fa:"\f3e2"}.fa-red-river{--fa:"\f3e3"}.fa-rendact,.fa-wpressr{--fa:"\f3e4"}.fa-replyd{--fa:"\f3e6"}.fa-resolving{--fa:"\f3e7"}.fa-rocketchat{--fa:"\f3e8"}.fa-rockrms{--fa:"\f3e9"}.fa-schlix{--fa:"\f3ea"}.fa-searchengin{--fa:"\f3eb"}.fa-servicestack{--fa:"\f3ec"}.fa-sistrix{--fa:"\f3ee"}.fa-speakap{--fa:"\f3f3"}.fa-staylinked{--fa:"\f3f5"}.fa-steam-symbol{--fa:"\f3f6"}.fa-sticker-mule{--fa:"\f3f7"}.fa-studiovinari{--fa:"\f3f8"}.fa-supple{--fa:"\f3f9"}.fa-uber{--fa:"\f402"}.fa-uikit{--fa:"\f403"}.fa-uniregistry{--fa:"\f404"}.fa-untappd{--fa:"\f405"}.fa-ussunnah{--fa:"\f407"}.fa-vaadin{--fa:"\f408"}.fa-viber{--fa:"\f409"}.fa-vimeo{--fa:"\f40a"}.fa-vnv{--fa:"\f40b"}.fa-square-whatsapp,.fa-whatsapp-square{--fa:"\f40c"}.fa-whmcs{--fa:"\f40d"}.fa- wordpress-simple{--fa:"\f411"}.fa-xbox{--fa:"\f412"}.fa-yandex{--fa:"\f413"}.fa-yandex-international{--fa:"\f414"}.fa-apple-pay{--fa:"\f415"}.fa-cc-apple-pay{--fa:"\f416"}.fa-fly{--fa:"\f417"}.fa-node{--fa:"\f419"}.fa-osi{--fa:"\f41a"}.fa-react{--fa:"\f41b"}.fa-autoprefixer{--fa:"\f41c"}.fa-less{--fa:"\f41d"}.fa-sass{--fa:"\f41e"}.fa-vuejs{--fa:"\f41f"}.fa-angular{--fa:"\f420"}.fa-aviato{--fa:"\f421"}.fa-ember{--fa:"\f423"}.fa-gitter{--fa:"\f426"}.fa-hooli{--fa:"\f427"}.fa-strava{--fa:"\f428"}.fa-stripe{--fa:"\f429"}.fa-stripe-s{--fa:"\f42a"}.fa-typo3{--fa:"\f42b"}.fa-amazon-pay{--fa:"\f42c"}.fa-cc-amazon-pay{--fa:"\f42d"}.fa-ethereum{--fa:"\f42e"}.fa-korvue{--fa:"\f42f"}.fa-elementor{--fa:"\f430"}.fa-square-youtube,.fa-youtube-square{--fa:"\f431"}.fa-flipboard{--fa:"\f44d"}.fa-hips{--fa:"\f452"}.fa-php{--fa:"\f457"}.fa-quinscape{--fa:"\f459"}.fa-readme{--fa:"\f4d5"}.fa-java{--fa:"\f4e4"}.fa-pied-piper-hat{--fa:"\f4e5"}.fa-creative-commons-by{--fa:"\f4e7"}.fa-creative-commons-nc{--fa:"\f4e8"}.fa-creative-commons-nc-eu{--fa:"\f4e9"}.fa-creative-commons-nc-jp{--fa:"\f4ea"}.fa-creative-commons-nd{--fa:"\f4eb"}.fa-creative-commons-pd{--fa:"\f4ec"}.fa-creative-commons-pd-alt{--fa:"\f4ed"}.fa-creative-commons-remix{--fa:"\f4ee"}.fa-creative-commons-sa{--fa:"\f4ef"}.fa-creative-commons-sampling{--fa:"\f4f0"}.fa-creative-commons-sampling-plus{--fa:"\f4f1"}.fa-creative-commons-share{--fa:"\f4f2"}.fa-creative-commons-zero{--fa:"\f4f3"}.fa-ebay{--fa:"\f4f4"}.fa-keybase{--fa:"\f4f5"}.fa-mastodon{--fa:"\f4f6"}.fa-r-project{--fa:"\f4f7"}.fa-researchgate{--fa:"\f4f8"}.fa-teamspeak{--fa:"\f4f9"}.fa-first-order-alt{--fa:"\f50a"}.fa-fulcrum{--fa:"\f50b"}.fa-galactic-republic{--fa:"\f50c"}.fa-galactic-senate{--fa:"\f50d"}.fa-jedi-order{--fa:"\f50e"}.fa-mandalorian{--fa:"\f50f"}.fa-old-republic{--fa:"\f510"}.fa-phoenix-squadron{--fa:"\f511"}.fa-sith{--fa:"\f512"}.fa-trade-federation{--fa:"\f513"}.fa-wolf-pack-battalion{--fa:"\f514"}.fa-hornbill{--fa:"\f592"}.fa-mailchimp{--fa:"\f59e"}.fa-megaport{--fa:"\f5a3"}.fa-nimblr{--fa:"\f5a8"}.fa-rev{--fa:"\f5b2"}.fa-shopware{--fa:"\f5b5"}.fa-squarespace{--fa:"\f5be"}.fa-themeco{--fa:"\f5c6"}.fa-weebly{--fa:"\f5cc"}.fa-wix{--fa:"\f5cf"}.fa-ello{--fa:"\f5f1"}.fa-hackerrank{--fa:"\f5f7"}.fa-kaggle{--fa:"\f5fa"}.fa-markdown{--fa:"\f60f"}.fa-neos{--fa:"\f612"}.fa-zhihu{--fa:"\f63f"}.fa-alipay{--fa:"\f642"}.fa-the-red-yeti{--fa:"\f69d"}.fa-critical-role{--fa:"\f6c9"}.fa-d-and-d-beyond{--fa:"\f6ca"}.fa-dev{--fa:"\f6cc"}.fa-fantasy-flight-games{--fa:"\f6dc"}.fa-wizards-of-the-coast{--fa:"\f730"}.fa-think-peaks{--fa:"\f731"}.fa-reacteurope{--fa:"\f75d"}.fa-artstation{--fa:"\f77a"}.fa-atlassian{--fa:"\f77b"}.fa-canadian-maple-leaf{--fa:"\f785"}.fa-centos{--fa:"\f789"}.fa-confluence{--fa:"\f78d"}.fa-dhl{--fa:"\f790"}.fa-diaspora{--fa:"\f791"}.fa-fedex{--fa:"\f797"}.fa-fedora{--fa:"\f798"}.fa-figma{--fa:"\f799"}.fa-intercom{--fa:"\f7af"}.fa-invision{--fa:"\f7b0"}.fa-jira{--fa:"\f7b1"}.fa-mendeley{--fa:"\f7b3"}.fa-raspberry-pi{--fa:"\f7bb"}.fa-redhat{--fa:"\f7bc"}.fa-sketch{--fa:"\f7c6"}.fa-sourcetree{--fa:"\f7d3"}.fa-suse{--fa:"\f7d6"}.fa-ubuntu{--fa:"\f7df"}.fa-ups{--fa:"\f7e0"}.fa-usps{--fa:"\f7e1"}.fa-yarn{--fa:"\f7e3"}.fa-airbnb{--fa:"\f834"}.fa-battle-net{--fa:"\f835"}.fa-bootstrap{--fa:"\f836"}.fa-buffer{--fa:"\f837"}.fa-chromecast{--fa:"\f838"}.fa-evernote{--fa:"\f839"}.fa-itch-io{--fa:"\f83a"}.fa-salesforce{--fa:"\f83b"}.fa-speaker-deck{--fa:"\f83c"}.fa-symfony{--fa:"\f83d"}.fa-waze{--fa:"\f83f"}.fa-yammer{--fa:"\f840"}.fa-git-alt{--fa:"\f841"}.fa-stackpath{--fa:"\f842"}.fa-cotton-bureau{--fa:"\f89e"}.fa-buy-n-large{--fa:"\f8a6"}.fa-mdb{--fa:"\f8ca"}.fa-orcid{--fa:"\f8d2"}.fa-swift{--fa:"\f8e1"}.fa-umbraco{--fa:"\f8e8"}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}9 :host,:root{--fa-family-brands:"Font Awesome 7 Brands";--fa-font-brands:normal 400 1em/1 var(--fa-family-brands)}@font-face{font-family:"Font Awesome 7 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2)}.fa-brands,.fa-classic.fa-brands,.fab{--fa-family:var(--fa-family-brands);--fa-style:400}.fa-firefox-browser{--fa:"\e007"}.fa-ideal{--fa:"\e013"}.fa-microblog{--fa:"\e01a"}.fa-pied-piper-square,.fa-square-pied-piper{--fa:"\e01e"}.fa-unity{--fa:"\e049"}.fa-dailymotion{--fa:"\e052"}.fa-instagram-square,.fa-square-instagram{--fa:"\e055"}.fa-mixer{--fa:"\e056"}.fa-shopify{--fa:"\e057"}.fa-deezer{--fa:"\e077"}.fa-edge-legacy{--fa:"\e078"}.fa-google-pay{--fa:"\e079"}.fa-rust{--fa:"\e07a"}.fa-tiktok{--fa:"\e07b"}.fa-unsplash{--fa:"\e07c"}.fa-cloudflare{--fa:"\e07d"}.fa-guilded{--fa:"\e07e"}.fa-hive{--fa:"\e07f"}.fa-42-group,.fa-innosoft{--fa:"\e080"}.fa-instalod{--fa:"\e081"}.fa-octopus-deploy{--fa:"\e082"}.fa-perbyte{--fa:"\e083"}.fa-uncharted{--fa:"\e084"}.fa-watchman-monitoring{--fa:"\e087"}.fa-wodu{--fa:"\e088"}.fa-wirsindhandwerk,.fa-wsh{--fa:"\e2d0"}.fa-bots{--fa:"\e340"}.fa-cmplid{--fa:"\e360"}.fa-bilibili{--fa:"\e3d9"}.fa-golang{--fa:"\e40f"}.fa-pix{--fa:"\e43a"}.fa-sitrox{--fa:"\e44a"}.fa-hashnode{--fa:"\e499"}.fa-meta{--fa:"\e49b"}.fa-padlet{--fa:"\e4a0"}.fa-nfc-directional{--fa:"\e530"}.fa-nfc-symbol{--fa:"\e531"}.fa-screenpal{--fa:"\e570"}.fa-space-awesome{--fa:"\e5ac"}.fa-square-font-awesome{--fa:"\e5ad"}.fa-gitlab-square,.fa-square-gitlab{--fa:"\e5ae"}.fa-odysee{--fa:"\e5c6"}.fa-stubber{--fa:"\e5c7"}.fa-debian{--fa:"\e60b"}.fa-shoelace{--fa:"\e60c"}.fa-threads{--fa:"\e618"}.fa-square-threads{--fa:"\e619"}.fa-square-x-twitter{--fa:"\e61a"}.fa-x-twitter{--fa:"\e61b"}.fa-opensuse{--fa:"\e62b"}.fa-letterboxd{--fa:"\e62d"}.fa-square-letterboxd{--fa:"\e62e"}.fa-mintbit{--fa:"\e62f"}.fa-google-scholar{--fa:"\e63b"}.fa-brave{--fa:"\e63c"}.fa-brave-reverse{--fa:"\e63d"}.fa-pixiv{--fa:"\e640"}.fa-upwork{--fa:"\e641"}.fa-webflow{--fa:"\e65c"}.fa-signal-messenger{--fa:"\e663"}.fa-bluesky{--fa:"\e671"}.fa-jxl{--fa:"\e67b"}.fa-square-upwork{--fa:"\e67c"}.fa-web-awesome{--fa:"\e682"}.fa-square-web-awesome{--fa:"\e683"}.fa-square-web-awesome-stroke{--fa:"\e684"}.fa-dart-lang{--fa:"\e693"}.fa-flutter{--fa:"\e694"}.fa-files-pinwheel{--fa:"\e69f"}.fa-css{--fa:"\e6a2"}.fa-square-bluesky{--fa:"\e6a3"}.fa-openai{--fa:"\e7cf"}.fa-square-linkedin{--fa:"\e7d0"}.fa-cash-app{--fa:"\e7d4"}.fa-disqus{--fa:"\e7d5"}.fa-11ty,.fa-eleventy{--fa:"\e7d6"}.fa-kakao-talk{--fa:"\e7d7"}.fa-linktree{--fa:"\e7d8"}.fa-notion{--fa:"\e7d9"}.fa-pandora{--fa:"\e7da"}.fa-pixelfed{--fa:"\e7db"}.fa-tidal{--fa:"\e7dc"}.fa-vsco{--fa:"\e7dd"}.fa-w3c{--fa:"\e7de"}.fa-lumon{--fa:"\e7e2"}.fa-lumon-drop{--fa:"\e7e3"}.fa-square-figma{--fa:"\e7e4"}.fa-tex{--fa:"\e7ff"}.fa-duolingo{--fa:"\e812"}.fa-square-twitter,.fa-twitter-square{--fa:"\f081"}.fa-facebook-square,.fa-square-facebook{--fa:"\f082"}.fa-linkedin{--fa:"\f08c"}.fa-github-square,.fa-square-github{--fa:"\f092"}.fa-twitter{--fa:"\f099"}.fa-facebook{--fa:"\f09a"}.fa-github{--fa:"\f09b"}.fa-pinterest{--fa:"\f0d2"}.fa-pinterest-square,.fa-square-pinterest{--fa:"\f0d3"}.fa-google-plus-square,.fa-square-google-plus{--fa:"\f0d4"}.fa-google-plus-g{--fa:"\f0d5"}.fa-linkedin-in{--fa:"\f0e1"}.fa-github-alt{--fa:"\f113"}.fa-maxcdn{--fa:"\f136"}.fa-html5{--fa:"\f13b"}.fa-css3{--fa:"\f13c"}.fa-btc{--fa:"\f15a"}.fa-youtube{--fa:"\f167"}.fa-xing{--fa:"\f168"}.fa-square-xing,.fa-xing-square{--fa:"\f169"}.fa-dropbox{--fa:"\f16b"}.fa-stack-overflow{--fa:"\f16c"}.fa-instagram{--fa:"\f16d"}.fa-flickr{--fa:"\f16e"}.fa-adn{--fa:"\f170"}.fa-bitbucket{--fa:"\f171"}.fa-tumblr{--fa:"\f173"}.fa-square-tumblr,.fa-tumblr-square{--fa:"\f174"}.fa-apple{--fa:"\f179"}.fa-windows{--fa:"\f17a"}.fa-android{--fa:"\f17b"}.fa-linux{--fa:"\f17c"}.fa-dribbble{--fa:"\f17d"}.fa-skype{--fa:"\f17e"}.fa-foursquare{--fa:"\f180"}.fa-trello{--fa:"\f181"}.fa-gratipay{--fa:"\f184"}.fa-vk{--fa:"\f189"}.fa-weibo{--fa:"\f18a"}.fa-renren{--fa:"\f18b"}.fa-pagelines{--fa:"\f18c"}.fa-stack-exchange{--fa:"\f18d"}.fa-square-vimeo,.fa-vimeo-square{--fa:"\f194"}.fa-slack,.fa-slack-hash{--fa:"\f198"}.fa-WordPress{--fa:"\f19a"}.fa-openid{--fa:"\f19b"}.fa-yahoo{--fa:"\f19e"}.fa-google{--fa:"\f1a0"}.fa-reddit{--fa:"\f1a1"}.fa-reddit-square,.fa-square-reddit{--fa:"\f1a2"}.fa-stumbleupon-circle{--fa:"\f1a3"}.fa-stumbleupon{--fa:"\f1a4"}.fa-delicious{--fa:"\f1a5"}.fa-digg{--fa:"\f1a6"}.fa-pied-piper-pp{--fa:"\f1a7"}.fa-pied-piper-alt{--fa:"\f1a8"}.fa-drupal{--fa:"\f1a9"}.fa-joomla{--fa:"\f1aa"}.fa-behance{--fa:"\f1b4"}.fa-behance-square,.fa-square-behance{--fa:"\f1b5"}.fa-steam{--fa:"\f1b6"}.fa-square-steam,.fa-steam-square{--fa:"\f1b7"}.fa-spotify{--fa:"\f1bc"}.fa-deviantart{--fa:"\f1bd"}.fa-soundcloud{--fa:"\f1be"}.fa-vine{--fa:"\f1ca"}.fa-codepen{--fa:"\f1cb"}.fa-jsfiddle{--fa:"\f1cc"}.fa-rebel{--fa:"\f1d0"}.fa-empire{--fa:"\f1d1"}.fa-git-square,.fa-square-git{--fa:"\f1d2"}.fa-git{--fa:"\f1d3"}.fa-hacker-news{--fa:"\f1d4"}.fa-tencent-weibo{--fa:"\f1d5"}.fa-qq{--fa:"\f1d6"}.fa-weixin{--fa:"\f1d7"}.fa-slideshare{--fa:"\f1e7"}.fa-twitch{--fa:"\f1e8"}.fa-yelp{--fa:"\f1e9"}.fa-paypal{--fa:"\f1ed"}.fa-google-wallet{--fa:"\f1ee"}.fa-cc-visa{--fa:"\f1f0"}.fa-cc-mastercard{--fa:"\f1f1"}.fa-cc-discover{--fa:"\f1f2"}.fa-cc-amex{--fa:"\f1f3"}.fa-cc-paypal{--fa:"\f1f4"}.fa-cc-stripe{--fa:"\f1f5"}.fa-lastfm{--fa:"\f202"}.fa-lastfm-square,.fa-square-lastfm{--fa:"\f203"}.fa-ioxhost{--fa:"\f208"}.fa-angellist{--fa:"\f209"}.fa-buysellads{--fa:"\f20d"}.fa-connectdevelop{--fa:"\f20e"}.fa-dashcube{--fa:"\f210"}.fa-forumbee{--fa:"\f211"}.fa-leanpub{--fa:"\f212"}.fa-sellsy{--fa:"\f213"}.fa-shirtsinbulk{--fa:"\f214"}.fa-simplybuilt{--fa:"\f215"}.fa-skyatlas{--fa:"\f216"}.fa-pinterest-p{--fa:"\f231"}.fa-whatsapp{--fa:"\f232"}.fa-viacoin{--fa:"\f237"}.fa-medium,.fa-medium-m{--fa:"\f23a"}.fa-y-combinator{--fa:"\f23b"}.fa-optin-monster{--fa:"\f23c"}.fa-opencart{--fa:"\f23d"}.fa-expeditedssl{--fa:"\f23e"}.fa-cc-jcb{--fa:"\f24b"}.fa-cc-diners-club{--fa:"\f24c"}.fa-creative-commons{--fa:"\f25e"}.fa-gg{--fa:"\f260"}.fa-gg-circle{--fa:"\f261"}.fa-odnoklassniki{--fa:"\f263"}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:"\f264"}.fa-get-pocket{--fa:"\f265"}.fa-wikipedia-w{--fa:"\f266"}.fa-safari{--fa:"\f267"}.fa-chrome{--fa:"\f268"}.fa-firefox{--fa:"\f269"}.fa-opera{--fa:"\f26a"}.fa-internet-explorer{--fa:"\f26b"}.fa-contao{--fa:"\f26d"}.fa-500px{--fa:"\f26e"}.fa-amazon{--fa:"\f270"}.fa-houzz{--fa:"\f27c"}.fa-vimeo-v{--fa:"\f27d"}.fa-black-tie{--fa:"\f27e"}.fa-fonticons{--fa:"\f280"}.fa-reddit-alien{--fa:"\f281"}.fa-edge{--fa:"\f282"}.fa-codiepie{--fa:"\f284"}.fa-modx{--fa:"\f285"}.fa-fort-awesome{--fa:"\f286"}.fa-usb{--fa:"\f287"}.fa-product-hunt{--fa:"\f288"}.fa-mixcloud{--fa:"\f289"}.fa-scribd{--fa:"\f28a"}.fa-bluetooth{--fa:"\f293"}.fa-bluetooth-b{--fa:"\f294"}.fa-gitlab{--fa:"\f296"}.fa-wpbeginner{--fa:"\f297"}.fa-wpforms{--fa:"\f298"}.fa-envira{--fa:"\f299"}.fa-glide{--fa:"\f2a5"}.fa-glide-g{--fa:"\f2a6"}.fa-viadeo{--fa:"\f2a9"}.fa-square-viadeo,.fa-viadeo-square{--fa:"\f2aa"}.fa-snapchat,.fa-snapchat-ghost{--fa:"\f2ab"}.fa-snapchat-square,.fa-square-snapchat{--fa:"\f2ad"}.fa-pied-piper{--fa:"\f2ae"}.fa-first-order{--fa:"\f2b0"}.fa-yoast{--fa:"\f2b1"}.fa-themeisle{--fa:"\f2b2"}.fa-google-plus{--fa:"\f2b3"}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:"\f2b4"}.fa-linode{--fa:"\f2b8"}.fa-quora{--fa:"\f2c4"}.fa-free-code-camp{--fa:"\f2c5"}.fa-telegram,.fa-telegram-plane{--fa:"\f2c6"}.fa-bandcamp{--fa:"\f2d5"}.fa-grav{--fa:"\f2d6"}.fa-etsy{--fa:"\f2d7"}.fa-imdb{--fa:"\f2d8"}.fa-ravelry{--fa:"\f2d9"}.fa-sellcast{--fa:"\f2da"}.fa-superpowers{--fa:"\f2dd"}.fa-wpexplorer{--fa:"\f2de"}.fa-meetup{--fa:"\f2e0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:"\f35c"}.fa-accessible-icon{--fa:"\f368"}.fa-accusoft{--fa:"\f369"}.fa-adversal{--fa:"\f36a"}.fa-affiliatetheme{--fa:"\f36b"}.fa-algolia{--fa:"\f36c"}.fa-amilia{--fa:"\f36d"}.fa-angrycreative{--fa:"\f36e"}.fa-app-store{--fa:"\f36f"}.fa-app-store-ios{--fa:"\f370"}.fa-apper{--fa:"\f371"}.fa-asymmetrik{--fa:"\f372"}.fa-audible{--fa:"\f373"}.fa-avianex{--fa:"\f374"}.fa-aws{--fa:"\f375"}.fa-bimobject{--fa:"\f378"}.fa-bitcoin{--fa:"\f379"}.fa-bity{--fa:"\f37a"}.fa-blackberry{--fa:"\f37b"}.fa-blogger{--fa:"\f37c"}.fa-blogger-b{--fa:"\f37d"}.fa-buromobelexperte{--fa:"\f37f"}.fa-centercode{--fa:"\f380"}.fa-cloudscale{--fa:"\f383"}.fa-cloudsmith{--fa:"\f384"}.fa-cloudversify{--fa:"\f385"}.fa-cpanel{--fa:"\f388"}.fa-css3-alt{--fa:"\f38b"}.fa-cuttlefish{--fa:"\f38c"}.fa-d-and-d{--fa:"\f38d"}.fa-deploydog{--fa:"\f38e"}.fa-deskpro{--fa:"\f38f"}.fa-digital-ocean{--fa:"\f391"}.fa-discord{--fa:"\f392"}.fa-discourse{--fa:"\f393"}.fa-dochub{--fa:"\f394"}.fa-docker{--fa:"\f395"}.fa-draft2digital{--fa:"\f396"}.fa-dribbble-square,.fa-square-dribbble{--fa:"\f397"}.fa-dyalog{--fa:"\f399"}.fa-earlybirds{--fa:"\f39a"}.fa-erlang{--fa:"\f39d"}.fa-facebook-f{--fa:"\f39e"}.fa-facebook-messenger{--fa:"\f39f"}.fa-firstdraft{--fa:"\f3a1"}.fa-fonticons-fi{--fa:"\f3a2"}.fa-fort-awesome-alt{--fa:"\f3a3"}.fa-freebsd{--fa:"\f3a4"}.fa-gitkraken{--fa:"\f3a6"}.fa-gofore{--fa:"\f3a7"}.fa-goodreads{--fa:"\f3a8"}.fa-goodreads-g{--fa:"\f3a9"}.fa-google-drive{--fa:"\f3aa"}.fa-google-play{--fa:"\f3ab"}.fa-gripfire{--fa:"\f3ac"}.fa-grunt{--fa:"\f3ad"}.fa-gulp{--fa:"\f3ae"}.fa-hacker-news-square,.fa-square-hacker-news{--fa:"\f3af"}.fa-hire-a-helper{--fa:"\f3b0"}.fa-hotjar{--fa:"\f3b1"}.fa-hubspot{--fa:"\f3b2"}.fa-itunes{--fa:"\f3b4"}.fa-itunes-note{--fa:"\f3b5"}.fa-jenkins{--fa:"\f3b6"}.fa-joget{--fa:"\f3b7"}.fa-js{--fa:"\f3b8"}.fa-js-square,.fa-square-js{--fa:"\f3b9"}.fa-keycdn{--fa:"\f3ba"}.fa-kickstarter,.fa-square-kickstarter{--fa:"\f3bb"}.fa-kickstarter-k{--fa:"\f3bc"}.fa-laravel{--fa:"\f3bd"}.fa-line{--fa:"\f3c0"}.fa-lyft{--fa:"\f3c3"}.fa-magento{--fa:"\f3c4"}.fa-medapps{--fa:"\f3c6"}.fa-medrt{--fa:"\f3c8"}.fa-microsoft{--fa:"\f3ca"}.fa-mix{--fa:"\f3cb"}.fa-mizuni{--fa:"\f3cc"}.fa-monero{--fa:"\f3d0"}.fa-napster{--fa:"\f3d2"}.fa-node-js{--fa:"\f3d3"}.fa-npm{--fa:"\f3d4"}.fa-ns8{--fa:"\f3d5"}.fa-nutritionix{--fa:"\f3d6"}.fa-page4{--fa:"\f3d7"}.fa-palfed{--fa:"\f3d8"}.fa-patreon{--fa:"\f3d9"}.fa-periscope{--fa:"\f3da"}.fa-phabricator{--fa:"\f3db"}.fa-phoenix-framework{--fa:"\f3dc"}.fa-playstation{--fa:"\f3df"}.fa-pushed{--fa:"\f3e1"}.fa-python{--fa:"\f3e2"}.fa-red-river{--fa:"\f3e3"}.fa-rendact,.fa-wpressr{--fa:"\f3e4"}.fa-replyd{--fa:"\f3e6"}.fa-resolving{--fa:"\f3e7"}.fa-rocketchat{--fa:"\f3e8"}.fa-rockrms{--fa:"\f3e9"}.fa-schlix{--fa:"\f3ea"}.fa-searchengin{--fa:"\f3eb"}.fa-servicestack{--fa:"\f3ec"}.fa-sistrix{--fa:"\f3ee"}.fa-speakap{--fa:"\f3f3"}.fa-staylinked{--fa:"\f3f5"}.fa-steam-symbol{--fa:"\f3f6"}.fa-sticker-mule{--fa:"\f3f7"}.fa-studiovinari{--fa:"\f3f8"}.fa-supple{--fa:"\f3f9"}.fa-uber{--fa:"\f402"}.fa-uikit{--fa:"\f403"}.fa-uniregistry{--fa:"\f404"}.fa-untappd{--fa:"\f405"}.fa-ussunnah{--fa:"\f407"}.fa-vaadin{--fa:"\f408"}.fa-viber{--fa:"\f409"}.fa-vimeo{--fa:"\f40a"}.fa-vnv{--fa:"\f40b"}.fa-square-whatsapp,.fa-whatsapp-square{--fa:"\f40c"}.fa-whmcs{--fa:"\f40d"}.fa-WordPress-simple{--fa:"\f411"}.fa-xbox{--fa:"\f412"}.fa-yandex{--fa:"\f413"}.fa-yandex-international{--fa:"\f414"}.fa-apple-pay{--fa:"\f415"}.fa-cc-apple-pay{--fa:"\f416"}.fa-fly{--fa:"\f417"}.fa-node{--fa:"\f419"}.fa-osi{--fa:"\f41a"}.fa-react{--fa:"\f41b"}.fa-autoprefixer{--fa:"\f41c"}.fa-less{--fa:"\f41d"}.fa-sass{--fa:"\f41e"}.fa-vuejs{--fa:"\f41f"}.fa-angular{--fa:"\f420"}.fa-aviato{--fa:"\f421"}.fa-ember{--fa:"\f423"}.fa-gitter{--fa:"\f426"}.fa-hooli{--fa:"\f427"}.fa-strava{--fa:"\f428"}.fa-stripe{--fa:"\f429"}.fa-stripe-s{--fa:"\f42a"}.fa-typo3{--fa:"\f42b"}.fa-amazon-pay{--fa:"\f42c"}.fa-cc-amazon-pay{--fa:"\f42d"}.fa-ethereum{--fa:"\f42e"}.fa-korvue{--fa:"\f42f"}.fa-elementor{--fa:"\f430"}.fa-square-youtube,.fa-youtube-square{--fa:"\f431"}.fa-flipboard{--fa:"\f44d"}.fa-hips{--fa:"\f452"}.fa-php{--fa:"\f457"}.fa-quinscape{--fa:"\f459"}.fa-readme{--fa:"\f4d5"}.fa-java{--fa:"\f4e4"}.fa-pied-piper-hat{--fa:"\f4e5"}.fa-creative-commons-by{--fa:"\f4e7"}.fa-creative-commons-nc{--fa:"\f4e8"}.fa-creative-commons-nc-eu{--fa:"\f4e9"}.fa-creative-commons-nc-jp{--fa:"\f4ea"}.fa-creative-commons-nd{--fa:"\f4eb"}.fa-creative-commons-pd{--fa:"\f4ec"}.fa-creative-commons-pd-alt{--fa:"\f4ed"}.fa-creative-commons-remix{--fa:"\f4ee"}.fa-creative-commons-sa{--fa:"\f4ef"}.fa-creative-commons-sampling{--fa:"\f4f0"}.fa-creative-commons-sampling-plus{--fa:"\f4f1"}.fa-creative-commons-share{--fa:"\f4f2"}.fa-creative-commons-zero{--fa:"\f4f3"}.fa-ebay{--fa:"\f4f4"}.fa-keybase{--fa:"\f4f5"}.fa-mastodon{--fa:"\f4f6"}.fa-r-project{--fa:"\f4f7"}.fa-researchgate{--fa:"\f4f8"}.fa-teamspeak{--fa:"\f4f9"}.fa-first-order-alt{--fa:"\f50a"}.fa-fulcrum{--fa:"\f50b"}.fa-galactic-republic{--fa:"\f50c"}.fa-galactic-senate{--fa:"\f50d"}.fa-jedi-order{--fa:"\f50e"}.fa-mandalorian{--fa:"\f50f"}.fa-old-republic{--fa:"\f510"}.fa-phoenix-squadron{--fa:"\f511"}.fa-sith{--fa:"\f512"}.fa-trade-federation{--fa:"\f513"}.fa-wolf-pack-battalion{--fa:"\f514"}.fa-hornbill{--fa:"\f592"}.fa-mailchimp{--fa:"\f59e"}.fa-megaport{--fa:"\f5a3"}.fa-nimblr{--fa:"\f5a8"}.fa-rev{--fa:"\f5b2"}.fa-shopware{--fa:"\f5b5"}.fa-squarespace{--fa:"\f5be"}.fa-themeco{--fa:"\f5c6"}.fa-weebly{--fa:"\f5cc"}.fa-wix{--fa:"\f5cf"}.fa-ello{--fa:"\f5f1"}.fa-hackerrank{--fa:"\f5f7"}.fa-kaggle{--fa:"\f5fa"}.fa-markdown{--fa:"\f60f"}.fa-neos{--fa:"\f612"}.fa-zhihu{--fa:"\f63f"}.fa-alipay{--fa:"\f642"}.fa-the-red-yeti{--fa:"\f69d"}.fa-critical-role{--fa:"\f6c9"}.fa-d-and-d-beyond{--fa:"\f6ca"}.fa-dev{--fa:"\f6cc"}.fa-fantasy-flight-games{--fa:"\f6dc"}.fa-wizards-of-the-coast{--fa:"\f730"}.fa-think-peaks{--fa:"\f731"}.fa-reacteurope{--fa:"\f75d"}.fa-artstation{--fa:"\f77a"}.fa-atlassian{--fa:"\f77b"}.fa-canadian-maple-leaf{--fa:"\f785"}.fa-centos{--fa:"\f789"}.fa-confluence{--fa:"\f78d"}.fa-dhl{--fa:"\f790"}.fa-diaspora{--fa:"\f791"}.fa-fedex{--fa:"\f797"}.fa-fedora{--fa:"\f798"}.fa-figma{--fa:"\f799"}.fa-intercom{--fa:"\f7af"}.fa-invision{--fa:"\f7b0"}.fa-jira{--fa:"\f7b1"}.fa-mendeley{--fa:"\f7b3"}.fa-raspberry-pi{--fa:"\f7bb"}.fa-redhat{--fa:"\f7bc"}.fa-sketch{--fa:"\f7c6"}.fa-sourcetree{--fa:"\f7d3"}.fa-suse{--fa:"\f7d6"}.fa-ubuntu{--fa:"\f7df"}.fa-ups{--fa:"\f7e0"}.fa-usps{--fa:"\f7e1"}.fa-yarn{--fa:"\f7e3"}.fa-airbnb{--fa:"\f834"}.fa-battle-net{--fa:"\f835"}.fa-bootstrap{--fa:"\f836"}.fa-buffer{--fa:"\f837"}.fa-chromecast{--fa:"\f838"}.fa-evernote{--fa:"\f839"}.fa-itch-io{--fa:"\f83a"}.fa-salesforce{--fa:"\f83b"}.fa-speaker-deck{--fa:"\f83c"}.fa-symfony{--fa:"\f83d"}.fa-waze{--fa:"\f83f"}.fa-yammer{--fa:"\f840"}.fa-git-alt{--fa:"\f841"}.fa-stackpath{--fa:"\f842"}.fa-cotton-bureau{--fa:"\f89e"}.fa-buy-n-large{--fa:"\f8a6"}.fa-mdb{--fa:"\f8ca"}.fa-orcid{--fa:"\f8d2"}.fa-swift{--fa:"\f8e1"}.fa-umbraco{--fa:"\f8e8"}:host,:root{--fa-font-regular:normal 400 1em/1 var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2)}.far{--fa-family:var(--fa-family-classic)}.fa-regular,.far{--fa-style:400}:host,:root{--fa-family-classic:"Font Awesome 7 Free";--fa-font-solid:normal 900 1em/1 var(--fa-family-classic);--fa-style-family-classic:var(--fa-family-classic)}@font-face{font-family:"Font Awesome 7 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2)}.fas{--fa-style:900}.fa-classic,.fas{--fa-family:var(--fa-family-classic)}.fa-solid{--fa-style:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a} -
style-accessories/1.2.9/functions.php
r353396 r356251 3 3 * Style Accessories functions and definitions 4 4 * 5 * @link https://developer. wordpress.org/themes/basics/theme-functions/5 * @link https://developer.WordPress.org/themes/basics/theme-functions/ 6 6 * 7 7 * @package Style Accessories … … 97 97 require_once get_theme_file_path( '/inc/customizer.php' ); 98 98 99 // Getting Started page slug and URL (needed before the wizard loads). 100 if ( ! defined( 'STYLE_ACCESSORIES_GETTING_STARTED_SLUG' ) ) { 101 define( 'STYLE_ACCESSORIES_GETTING_STARTED_SLUG', 'styleaccessories-wizard' ); 102 } 103 if ( ! defined( 'STYLE_ACCESSORIES_GETTING_STARTED_URL' ) ) { 104 define( 'STYLE_ACCESSORIES_GETTING_STARTED_URL', admin_url( 'themes.php?page=' . STYLE_ACCESSORIES_GETTING_STARTED_SLUG ) ); 105 } 106 99 107 /** 100 * Demo Import 101 */ 102 require get_parent_theme_file_path( '/inc/get-started/demo-import-settings.php' ); 103 104 if ( ! defined( 'STYLE_ACCESSORIES_FREE_THEME_URL' ) ) { 105 define( 'STYLE_ACCESSORIES_FREE_THEME_URL', 'https://www.seothemesexpert.com/products/style-accessories' ); 106 } 107 if ( ! defined( 'STYLE_ACCESSORIES_PRO_THEME_URL' ) ) { 108 define( 'STYLE_ACCESSORIES_PRO_THEME_URL', 'https://www.seothemesexpert.com/products/jewellery-website-template' ); 109 } 110 if ( ! defined( 'STYLE_ACCESSORIES_FREE_DOC_URL' ) ) { 111 define( 'STYLE_ACCESSORIES_FREE_DOC_URL', 'https://demo.seothemesexpert.com/documentation/style-accessories/' ); 112 } 113 if ( ! defined( 'STYLE_ACCESSORIES_DEMO_THEME_URL' ) ) { 114 define( 'STYLE_ACCESSORIES_DEMO_THEME_URL', 'https://demo.seothemesexpert.com/jewellery-boutique/' ); 115 } 116 if ( ! defined( 'STYLE_ACCESSORIES_RATE_THEME_URL' ) ) { 117 define( 'STYLE_ACCESSORIES_RATE_THEME_URL', 'https://wordpress.org/support/theme/style-accessories/reviews/' ); 118 } 119 if ( ! defined( 'STYLE_ACCESSORIES_SUPPORT_THEME_URL' ) ) { 120 define( 'STYLE_ACCESSORIES_SUPPORT_THEME_URL', 'https://wordpress.org/support/theme/style-accessories/' ); 121 } 122 if ( ! defined( 'STYLE_ACCESSORIES_THEME_BUNDLE_URL' ) ) { 123 define( 'STYLE_ACCESSORIES_THEME_BUNDLE_URL', 'https://www.seothemesexpert.com/products/wordpress-theme-bundle' ); 124 } 108 * Demo Import (also loads TGM) 109 */ 110 require get_parent_theme_file_path( '/inc/get-started/demo-import-settings.php' ); 111 112 if ( ! defined( 'STYLE_ACCESSORIES_FREE_THEME_URL' ) ) { 113 define( 'STYLE_ACCESSORIES_FREE_THEME_URL', 'https://www.seothemesexpert.com/products/style-accessories' ); 114 } 115 if ( ! defined( 'STYLE_ACCESSORIES_PRO_THEME_URL' ) ) { 116 define( 'STYLE_ACCESSORIES_PRO_THEME_URL', 'https://www.seothemesexpert.com/products/jewellery-website-template' ); 117 } 118 if ( ! defined( 'STYLE_ACCESSORIES_FREE_DOC_URL' ) ) { 119 define( 'STYLE_ACCESSORIES_FREE_DOC_URL', 'https://demo.seothemesexpert.com/documentation/style-accessories/' ); 120 } 121 if ( ! defined( 'STYLE_ACCESSORIES_DEMO_THEME_URL' ) ) { 122 define( 'STYLE_ACCESSORIES_DEMO_THEME_URL', 'https://demo.seothemesexpert.com/jewellery-boutique/' ); 123 } 124 if ( ! defined( 'STYLE_ACCESSORIES_RATE_THEME_URL' ) ) { 125 define( 'STYLE_ACCESSORIES_RATE_THEME_URL', 'https://wordpress.org/support/theme/style-accessories/reviews/' ); 126 } 127 if ( ! defined( 'STYLE_ACCESSORIES_SUPPORT_THEME_URL' ) ) { 128 define( 'STYLE_ACCESSORIES_SUPPORT_THEME_URL', 'https://wordpress.org/support/theme/style-accessories/' ); 129 } 130 if ( ! defined( 'STYLE_ACCESSORIES_THEME_BUNDLE_URL' ) ) { 131 define( 'STYLE_ACCESSORIES_THEME_BUNDLE_URL', 'https://www.seothemesexpert.com/products/WordPress-theme-bundle' ); 132 } 133 134 // Prices (USD) and coupon shown on the Getting Started page. 135 if ( ! defined( 'STYLE_ACCESSORIES_PRO_PRICE' ) ) { 136 define( 'STYLE_ACCESSORIES_PRO_PRICE', 45 ); 137 } 138 if ( ! defined( 'STYLE_ACCESSORIES_BUNDLE_PRICE' ) ) { 139 define( 'STYLE_ACCESSORIES_BUNDLE_PRICE', 79 ); 140 } 141 if ( ! defined( 'STYLE_ACCESSORIES_BUNDLE_THEME_COUNT' ) ) { 142 define( 'STYLE_ACCESSORIES_BUNDLE_THEME_COUNT', 60 ); 143 } 144 if ( ! defined( 'STYLE_ACCESSORIES_COUPON_CODE' ) ) { 145 define( 'STYLE_ACCESSORIES_COUPON_CODE', 'STEPRO10' ); 146 } 147 if ( ! defined( 'STYLE_ACCESSORIES_COUPON_PERCENT' ) ) { 148 define( 'STYLE_ACCESSORIES_COUPON_PERCENT', 10 ); 149 } 150 if ( ! defined( 'STYLE_ACCESSORIES_BUNDLE_COUPON_CODE' ) ) { 151 define( 'STYLE_ACCESSORIES_BUNDLE_COUPON_CODE', 'EXPERT20' ); 152 } 153 if ( ! defined( 'STYLE_ACCESSORIES_BUNDLE_COUPON_PERCENT' ) ) { 154 define( 'STYLE_ACCESSORIES_BUNDLE_COUPON_PERCENT', 20 ); 155 } 156 157 // Time to wait before the upgrade popup shows again (48 hours). 158 if ( ! defined( 'STYLE_ACCESSORIES_POPUP_INTERVAL' ) ) { 159 define( 'STYLE_ACCESSORIES_POPUP_INTERVAL', 2 * DAY_IN_SECONDS ); 160 } 161 125 162 } 126 163 add_action( 'after_setup_theme', 'style_accessories_init_setup' ); 127 164 165 166 /** 167 * Getting Started state. 168 * 169 * Steps are stored in one option: plugins, homepage, customize or done. 170 */ 171 function style_accessories_get_setup_step() { 172 return (string) get_option( 'style_accessories_setup_step', 'plugins' ); 173 } 174 175 function style_accessories_setup_is_complete() { 176 return 'done' === style_accessories_get_setup_step(); 177 } 178 179 /** 180 * Whether the welcome notice should be printed on this screen. 181 * 182 * It stays on every admin screen until the user clicks its close (x) button; 183 * only the Getting Started page itself skips it. 184 */ 185 function style_accessories_show_welcome_notice() { 186 if ( get_option( 'style_accessories_welcome_notice_dismissed' ) || ! current_user_can( 'edit_theme_options' ) ) { 187 return false; 188 } 189 $style_accessories_screen = get_current_screen(); 190 return ! $style_accessories_screen || 'appearance_page_' . STYLE_ACCESSORIES_GETTING_STARTED_SLUG !== $style_accessories_screen->id; 191 } 128 192 129 193 // Show Admin Notice 130 194 function style_accessories_promo_notice() { 131 if (get_option('style_accessories_notice_dismissed')) { 132 return; 133 } 134 135 if (isset($_GET['page']) && $_GET['page'] === 'styleaccessories-wizard') { 136 return; 137 } 138 139 $style_accessories_theme = wp_get_theme(); 140 $style_accessories_theme_title = $style_accessories_theme->get( 'Name' ); 141 $style_accessories_theme_version = $style_accessories_theme->get( 'Version' ); 142 143 ?> 144 <div class="notice style-accessories-notice is-dismissible"> 145 <div> 146 <h3> 147 <span><?php echo esc_html( '(Version: ' . $style_accessories_theme_version . ')' ); ?></span><br> 148 <?php esc_html_e( 'Thank you for choosing,', 'style-accessories'); ?> 149 <?php echo esc_html( $style_accessories_theme_title ); ?> <?php esc_html_e( '!!!', 'style-accessories'); ?> 150 </h3> 151 <p><?php esc_html_e( 'Welcome! You can now easily start building your website using our beautiful and user-friendly themes. No need to worry about setup — with our one-click demo importer, your site can look just like the demo in minutes. All the tools and information you need to get started are right here!', 'style-accessories'); ?></p> 152 <a class="button button-primary style-accessories-buy-now" href="<?php echo esc_url(admin_url('themes.php?page=styleaccessories-wizard')); ?>" target="_blank"> 153 <?php esc_html_e( 'Get Started', 'style-accessories') ?> 154 </a> 155 <a class="button button-primary style-accessories-bundle-button" target="_blank" href="<?php echo esc_url( STYLE_ACCESSORIES_THEME_BUNDLE_URL ); ?>"> 156 <?php echo esc_html__( 'Get All 60+ Themes @ $79', 'style-accessories' ); ?> 157 </a> 158 </div> 159 <div class="style-accessories-image-wrap"> 160 <img src="<?php echo esc_url(get_stylesheet_directory_uri() . '/screenshot.png'); ?>"> 161 </div> 162 <canvas id="style-accessories-notice-confetti"></canvas> 163 </div> 164 <?php 165 } 166 add_action('admin_notices', 'style_accessories_promo_notice'); 167 168 add_action('wp_ajax_style_accessories_dismiss_notice', 'style_accessories_dismiss_notice'); 195 if ( ! style_accessories_show_welcome_notice() ) { 196 return; 197 } 198 199 $style_accessories_theme_title = wp_get_theme()->get( 'Name' ); 200 ?> 201 <div class="notice expert-notice is-dismissible"> 202 <div class="expert-notice__thumb"> 203 <img src="<?php echo esc_url( get_template_directory_uri() . '/screenshot.png' ); ?>" alt=""> 204 </div> 205 <div class="expert-notice__text"> 206 <p class="expert-notice__title"> 207 <?php 208 /* translators: %s: Theme name. */ 209 printf( esc_html__( 'Thanks for activating %s!', 'style-accessories' ), esc_html( $style_accessories_theme_title ) ); 210 ?> 211 </p> 212 <p class="notice_para"><?php esc_html_e( 'Install the recommended plugins and make the homepage your own in about 4 minutes.', 'style-accessories' ); ?></p> 213 </div> 214 <div class="expert-notice__actions"> 215 <a class="button button-primary expert-notice__start" href="<?php echo esc_url( STYLE_ACCESSORIES_GETTING_STARTED_URL ); ?>"> 216 <span class="dashicons dashicons-controls-play" aria-hidden="true"></span> 217 <?php esc_html_e( 'Start setup', 'style-accessories' ); ?> 218 </a> 219 <a class="button expert-notice__upgrade" href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" target="_blank" rel="noopener"> 220 <span class="dashicons dashicons-star-filled" aria-hidden="true"></span> 221 <?php esc_html_e( 'Upgrade to Pro', 'style-accessories' ); ?> 222 <span class="expert-notice__tag"> 223 <?php 224 /* translators: 1: Coupon code, 2: Discount percentage. */ 225 printf( esc_html__( '%1$s · %2$d%% off', 'style-accessories' ), '<code>' . esc_html( STYLE_ACCESSORIES_COUPON_CODE ) . '</code>', (int) STYLE_ACCESSORIES_COUPON_PERCENT ); 226 ?> 227 </span> 228 </a> 229 <a class="expert-notice__link" href="<?php echo esc_url( STYLE_ACCESSORIES_DEMO_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'View demo', 'style-accessories' ); ?></a> 230 </div> 231 </div> 232 <?php 233 } 234 add_action( 'admin_notices', 'style_accessories_promo_notice' ); 235 236 add_action( 'wp_ajax_style_accessories_dismiss_notice', 'style_accessories_dismiss_notice' ); 169 237 function style_accessories_dismiss_notice() { 170 update_option('style_accessories_notice_dismissed', true); 171 wp_send_json_success(); 172 } 173 174 add_action('after_switch_theme', 'style_accessories_reset_notice_on_activation'); 238 check_ajax_referer( 'style_accessories_dismiss_notice', 'nonce' ); 239 if ( ! current_user_can( 'edit_theme_options' ) ) { 240 wp_send_json_error(); 241 } 242 update_option( 'style_accessories_welcome_notice_dismissed', true ); 243 wp_send_json_success(); 244 } 245 246 add_action( 'after_switch_theme', 'style_accessories_reset_notice_on_activation' ); 175 247 function style_accessories_reset_notice_on_activation() { 176 delete_option('style_accessories_notice_dismissed'); 177 } 178 179 function style_accessories_enqueue_admin_assets() { 180 wp_enqueue_script( 181 'style-accessories-confetti', 182 get_template_directory_uri() . '/inc/get-started/assets/js/confetti/confetti.min.js', 183 ['jquery'], 184 null, 185 true 186 ); 187 188 wp_enqueue_script( 189 'style-accessories-notice-confetti-js', 190 get_template_directory_uri() . '/inc/get-started/assets/js/plugin-update-notice.js', 191 ['style-accessories-confetti'], 192 null, 193 true 194 ); 195 196 wp_enqueue_script( 197 'style-accessories-notice-dismiss', 198 get_template_directory_uri() . '/inc/get-started/assets/js/notice-dismiss.js', 199 ['jquery'], 200 null, 201 true 202 ); 203 } 204 add_action('admin_enqueue_scripts', 'style_accessories_enqueue_admin_assets'); 248 delete_option( 'style_accessories_welcome_notice_dismissed' ); 249 // Show the upgrade popup again right after the theme is (re)activated. 250 delete_option( 'style_accessories_popup_next_show' ); 251 } 252 253 /** 254 * "Upgrade to Pro" link in the admin bar. 255 */ 256 function style_accessories_admin_bar_upgrade( $style_accessories_wp_admin_bar ) { 257 if ( ! is_admin() || ! current_user_can( 'edit_theme_options' ) ) { 258 return; 259 } 260 $style_accessories_wp_admin_bar->add_node( 261 array( 262 'id' => 'expert-upgrade', 263 'title' => '<span class="ab-icon" aria-hidden="true"></span><span class="ab-label">' . sprintf( 264 /* translators: %d: Discount percentage. */ 265 esc_html__( 'Upgrade to Pro · %d%% off', 'style-accessories' ), 266 (int) STYLE_ACCESSORIES_COUPON_PERCENT 267 ) . '</span>', 268 'href' => esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ), 269 'meta' => array( 270 'target' => '_blank', 271 'rel' => 'noopener', 272 ), 273 ) 274 ); 275 } 276 add_action( 'admin_bar_menu', 'style_accessories_admin_bar_upgrade', 100 ); 277 278 function style_accessories_enqueue_admin_assets( $style_accessories_hook ) { 279 // Notice, admin bar and menu styles are small and needed on every screen. 280 wp_enqueue_style( 281 'expert-admin', 282 get_template_directory_uri() . '/inc/get-started/assets/css/expert-admin.css', 283 array(), 284 STYLE_ACCESSORIES_VERSION 285 ); 286 287 if ( 'appearance_page_' . STYLE_ACCESSORIES_GETTING_STARTED_SLUG === $style_accessories_hook ) { 288 wp_enqueue_style( 289 'expert-getting-started', 290 get_template_directory_uri() . '/inc/get-started/assets/css/expert-getting-started.css', 291 array( 'expert-admin' ), 292 STYLE_ACCESSORIES_VERSION 293 ); 294 } 295 296 wp_enqueue_script( 297 'expert-admin', 298 get_template_directory_uri() . '/inc/get-started/assets/js/expert-admin.js', 299 array( 'jquery' ), 300 STYLE_ACCESSORIES_VERSION, 301 true 302 ); 303 304 wp_localize_script( 305 'expert-admin', 306 'expertAdminNotice', 307 array( 308 'ajaxurl' => admin_url( 'admin-ajax.php' ), 309 'nonce' => wp_create_nonce( 'style_accessories_dismiss_notice' ), 310 ) 311 ); 312 } 313 add_action( 'admin_enqueue_scripts', 'style_accessories_enqueue_admin_assets' ); -
style-accessories/1.2.9/inc/get-started/demo-import-contents.php
r326799 r356251 2 2 3 3 /** 4 * Wizard4 * Getting Started wizard 5 5 * 6 6 * @package Whizzie … … 10 10 11 11 class Whizzie { 12 13 protected $version = ' 1.1.0';14 12 13 protected $version = '2.0.0'; 14 15 15 /** @var string Current theme name, used as namespace in actions. */ 16 16 protected $style_accessories_theme_name = ''; 17 17 protected $style_accessories_theme_title = ''; 18 18 19 19 /** @var string Wizard page slug and title. */ 20 20 protected $style_accessories_page_slug = ''; 21 21 protected $style_accessories_page_title = ''; 22 22 23 23 /** @var array Wizard steps set by user. */ 24 24 protected $config_steps = array(); 25 25 26 26 /** 27 27 * Relative plugin url for this plugin folder … … 33 33 public $style_accessories_plugin_path; 34 34 public $parent_slug; 35 35 36 36 /** 37 37 * TGMPA instance storage … … 40 40 */ 41 41 protected $tgmpa_instance; 42 42 43 43 /** 44 44 * TGMPA Menu slug … … 47 47 */ 48 48 protected $tgmpa_menu_slug = 'tgmpa-install-plugins'; 49 49 50 50 /** 51 51 * TGMPA Menu url … … 54 54 */ 55 55 protected $tgmpa_url = 'themes.php?page=tgmpa-install-plugins'; 56 56 57 57 /** 58 58 * Constructor 59 59 * 60 * @param $ config Our config parameters61 */ 62 public function __construct( $ config ) {63 $this->set_vars( $ config );60 * @param $style_accessories_config Our config parameters 61 */ 62 public function __construct( $style_accessories_config ) { 63 $this->set_vars( $style_accessories_config ); 64 64 $this->init(); 65 65 } 66 66 67 67 /** 68 68 * Set some settings 69 69 * @since 1.0.0 70 * @param $ config Our config parameters71 */ 72 public function set_vars( $ config ) {73 70 * @param $style_accessories_config Our config parameters 71 */ 72 public function set_vars( $style_accessories_config ) { 73 74 74 require_once trailingslashit( WHIZZIE_DIR ) . 'tgm/class-tgm-plugin-activation.php'; 75 75 require_once trailingslashit( WHIZZIE_DIR ) . 'tgm/tgm.php'; 76 76 77 if( isset( $config['style_accessories_page_slug'] ) ) { 78 $this->style_accessories_page_slug = esc_attr( $config['style_accessories_page_slug'] ); 79 } 80 if( isset( $config['style_accessories_page_title'] ) ) { 81 $this->style_accessories_page_title = esc_attr( $config['style_accessories_page_title'] ); 82 } 83 if( isset( $config['steps'] ) ) { 84 $this->config_steps = $config['steps']; 85 } 86 77 if ( isset( $style_accessories_config['style_accessories_page_title'] ) ) { 78 $this->style_accessories_page_title = $style_accessories_config['style_accessories_page_title']; 79 } 80 if ( isset( $style_accessories_config['steps'] ) ) { 81 $this->config_steps = $style_accessories_config['steps']; 82 } 83 87 84 $this->style_accessories_plugin_path = trailingslashit( dirname( __FILE__ ) ); 88 $ relative_url = str_replace( get_template_directory(), '', $this->style_accessories_plugin_path );89 $this->style_accessories_plugin_url = trailingslashit( get_template_directory_uri() . $ relative_url );85 $style_accessories_relative_url = str_replace( get_template_directory(), '', $this->style_accessories_plugin_path ); 86 $this->style_accessories_plugin_url = trailingslashit( get_template_directory_uri() . $style_accessories_relative_url ); 90 87 $style_accessories_current_theme = wp_get_theme(); 91 88 $this->style_accessories_theme_title = $style_accessories_current_theme->get( 'Name' ); 92 89 $this->style_accessories_theme_name = strtolower( preg_replace( '#[^a-zA-Z]#', '', $style_accessories_current_theme->get( 'Name' ) ) ); 93 $this->style_accessories_page_slug = apply_filters( $this->style_accessories_theme_name . '_theme_setup_wizard_style_accessories_page_slug', $this->style_accessories_theme_name . '-wizard');90 $this->style_accessories_page_slug = apply_filters( $this->style_accessories_theme_name . '_theme_setup_wizard_style_accessories_page_slug', STYLE_ACCESSORIES_GETTING_STARTED_SLUG ); 94 91 $this->parent_slug = apply_filters( $this->style_accessories_theme_name . '_theme_setup_wizard_parent_slug', '' ); 95 92 96 93 } 97 94 98 95 /** 99 96 * Hooks and filters 100 97 * @since 1.0.0 101 */ 98 */ 102 99 public function init() { 103 100 104 101 if ( class_exists( 'TGM_Plugin_Activation' ) && isset( $GLOBALS['tgmpa'] ) ) { 105 102 add_action( 'init', array( $this, 'get_tgmpa_instance' ), 30 ); … … 108 105 add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) ); 109 106 add_action( 'admin_menu', array( $this, 'menu_page' ) ); 110 add_action( 'admin_init', array( $this, 'get_plugins' ), 30 );111 107 add_filter( 'tgmpa_load', array( $this, 'tgmpa_load' ), 10, 1 ); 112 108 add_action( 'wp_ajax_setup_plugins', array( $this, 'setup_plugins' ) ); 113 109 add_action( 'wp_ajax_setup_widgets', array( $this, 'setup_widgets' ) ); 114 115 } 116 117 public function enqueue_scripts() { 118 wp_enqueue_style( 'style-accessories-demo-import-style', get_template_directory_uri() . '/inc/get-started/assets/css/demo-import-style.css'); 119 wp_register_script( 'style-accessories-demo-import-script', get_template_directory_uri() . '/inc/get-started/assets/js/demo-import-script.js', array( 'jquery' ), time() ); 120 wp_localize_script( 121 'style-accessories-demo-import-script', 122 'whizzie_params', 110 add_action( 'wp_ajax_style_accessories_setup_progress', array( $this, 'save_progress' ) ); 111 add_action( 'wp_ajax_style_accessories_popup_seen', array( $this, 'popup_seen' ) ); 112 113 } 114 115 /** 116 * Admin page hook of the Getting Started screen. 117 * 118 * @return string 119 */ 120 public function get_page_hook() { 121 return 'appearance_page_' . $this->style_accessories_page_slug; 122 } 123 124 public function enqueue_scripts( $style_accessories_hook ) { 125 if ( $this->get_page_hook() !== $style_accessories_hook ) { 126 return; 127 } 128 129 wp_enqueue_script( 130 'expert-confetti', 131 get_template_directory_uri() . '/inc/get-started/assets/js/confetti/confetti.min.js', 132 array(), 133 STYLE_ACCESSORIES_VERSION, 134 true 135 ); 136 wp_enqueue_script( 137 'expert-getting-started', 138 get_template_directory_uri() . '/inc/get-started/assets/js/expert-getting-started.js', 139 array( 'jquery', 'expert-confetti' ), 140 STYLE_ACCESSORIES_VERSION, 141 true 142 ); 143 wp_localize_script( 144 'expert-getting-started', 145 'expertGettingStarted', 123 146 array( 124 'ajaxurl' => admin_url( 'admin-ajax.php' ), 125 'wpnonce' => wp_create_nonce( 'whizzie_nonce' ), 126 'verify_text' => esc_html( 'verifying', 'style-accessories' ) 147 'ajaxUrl' => admin_url( 'admin-ajax.php' ), 148 'nonce' => wp_create_nonce( 'style_accessories_getting_started' ), 149 'pluginNonce' => wp_create_nonce( 'whizzie_nonce' ), 150 'pageSlug' => $this->style_accessories_page_slug, 151 'i18n' => array( 152 'installing' => __( 'Installing…', 'style-accessories' ), 153 'working' => __( 'Working…', 'style-accessories' ), 154 'active' => __( 'Active', 'style-accessories' ), 155 'failed' => __( 'Failed', 'style-accessories' ), 156 'failedNote' => __( 'Some plugins could not be installed. You can install them later from Appearance › Install Plugins, or continue now.', 'style-accessories' ), 157 'continue' => __( 'Continue', 'style-accessories' ), 158 'copied' => __( 'Copied', 'style-accessories' ), 159 'copy' => __( 'Copy', 'style-accessories' ), 160 'saveError' => __( 'Could not save your progress. Please reload the page and try again.', 'style-accessories' ), 161 'importing' => __( 'Importing…', 'style-accessories' ), 162 'importError' => __( 'The demo products could not be imported. Please reload the page and try again.', 'style-accessories' ), 163 ), 127 164 ) 128 165 ); 129 wp_enqueue_script( 'style-accessories-demo-import-script' ); 130 } 131 132 public static function get_instance() { 133 if ( ! self::$instance ) { 134 self::$instance = new self; 135 } 136 return self::$instance; 137 } 138 139 public function tgmpa_load( $status ) { 166 } 167 168 public function tgmpa_load( $style_accessories_status ) { 140 169 return is_admin() || current_user_can( 'install_themes' ); 141 170 } 142 171 143 172 /** 144 173 * Get configured TGMPA instance … … 150 179 $this->tgmpa_instance = call_user_func( array( get_class( $GLOBALS['tgmpa'] ), 'get_instance' ) ); 151 180 } 152 153 /** 154 * Update $tgmpa_menu_slug and $ tgmpa_parent_slug from TGMPA instance181 182 /** 183 * Update $tgmpa_menu_slug and $style_accessories_tgmpa_parent_slug from TGMPA instance 155 184 * 156 185 * @access public … … 160 189 $this->tgmpa_menu_slug = ( property_exists( $this->tgmpa_instance, 'menu' ) ) ? $this->tgmpa_instance->menu : $this->tgmpa_menu_slug; 161 190 $this->tgmpa_menu_slug = apply_filters( $this->style_accessories_theme_name . '_theme_setup_wizard_tgmpa_menu_slug', $this->tgmpa_menu_slug ); 162 $ tgmpa_parent_slug = ( property_exists( $this->tgmpa_instance, 'parent_slug' ) && $this->tgmpa_instance->parent_slug !== 'themes.php' ) ? 'admin.php' : 'themes.php';163 $this->tgmpa_url = apply_filters( $this->style_accessories_theme_name . '_theme_setup_wizard_tgmpa_url', $ tgmpa_parent_slug . '?page=' . $this->tgmpa_menu_slug );164 } 165 166 /** 167 * Make a modal screen for the wizard191 $style_accessories_tgmpa_parent_slug = ( property_exists( $this->tgmpa_instance, 'parent_slug' ) && $this->tgmpa_instance->parent_slug !== 'themes.php' ) ? 'admin.php' : 'themes.php'; 192 $this->tgmpa_url = apply_filters( $this->style_accessories_theme_name . '_theme_setup_wizard_tgmpa_url', $style_accessories_tgmpa_parent_slug . '?page=' . $this->tgmpa_menu_slug ); 193 } 194 195 /** 196 * Register the Getting Started page and the Upgrade link under Appearance. 168 197 */ 169 198 public function menu_page() { 170 add_theme_page( esc_html( $this->style_accessories_page_title ), esc_html( $this->style_accessories_page_title ), 'manage_options', $this->style_accessories_page_slug, array( $this, 'wizard_page' ) ); 171 } 172 173 /** 174 * Make an interface for the wizard 175 */ 176 public function wizard_page() { 177 tgmpa_load_bulk_installer(); 178 179 if ( ! class_exists( 'TGM_Plugin_Activation' ) || ! isset( $GLOBALS['tgmpa'] ) ) { 180 die( esc_html__( 'Failed to find TGM', 'style-accessories' ) ); 181 } 182 183 $url = wp_nonce_url( add_query_arg( array( 'plugins' => 'go' ) ), 'whizzie-setup' ); 184 $method = ''; 185 $fields = array_keys( $_POST ); 186 187 if ( false === ( $creds = request_filesystem_credentials( esc_url_raw( $url ), $method, false, false, $fields ) ) ) { 188 return true; 189 } 190 191 if ( ! WP_Filesystem( $creds ) ) { 192 request_filesystem_credentials( esc_url_raw( $url ), $method, true, false, $fields ); 193 return true; 194 } 195 196 $style_accessories_theme = wp_get_theme(); 197 $style_accessories_theme_title = $style_accessories_theme->get( 'Name' ); 198 $style_accessories_theme_version = $style_accessories_theme->get( 'Version' ); 199 200 ?> 201 <div class="wrap"> 202 <?php 203 // Theme Title and Version 204 printf( '<h1>%s %s</h1>', esc_html( $style_accessories_theme_title ), esc_html( '(Version :- ' . $style_accessories_theme_version . ')' ) ); 205 ?> 206 207 <div class="card whizzie-wrap"> 208 209 <div class="demo_content_image"> 210 <div class="demo_content"> 211 <?php 212 213 $style_accessories_steps = $this->get_steps(); 214 echo '<ul class="whizzie-menu">'; 215 foreach ( $style_accessories_steps as $style_accessories_step ) { 216 $class = 'step step-' . esc_attr( $style_accessories_step['id'] ); 217 echo '<li data-step="' . esc_attr( $style_accessories_step['id'] ) . '" class="' . esc_attr( $class ) . '">'; 218 printf( '<h2>%s</h2>', esc_html( $style_accessories_step['title'] ) ); 219 220 $content = call_user_func( array( $this, $style_accessories_step['view'] ) ); 221 if ( isset( $content['summary'] ) ) { 222 printf( 223 '<div class="summary">%s</div>', 224 wp_kses_post( $content['summary'] ) 225 ); 226 } 227 if ( isset( $content['detail'] ) ) { 228 printf( '<p><a href="#" class="more-info">%s</a></p>', esc_html__( 'More Info', 'style-accessories' ) ); 229 printf( 230 '<div class="detail">%s</div>', 231 wp_kses_post( $content['detail'] ) 232 ); 233 } 234 if ( isset( $style_accessories_step['button_text'] ) && $style_accessories_step['button_text'] ) { 235 printf( 236 '<div class="button-wrap"><a href="#" class="button button-primary do-it" data-callback="%s" data-step="%s">%s</a></div>', 237 esc_attr( $style_accessories_step['callback'] ), 238 esc_attr( $style_accessories_step['id'] ), 239 esc_html( $style_accessories_step['button_text'] ) 240 ); 241 } 242 if ( isset( $style_accessories_step['can_skip'] ) && $style_accessories_step['can_skip'] ) { 243 printf( 244 '<div class="button-wrap" style="margin-left: 0.5em;"><a href="#" class="button button-secondary do-it" data-callback="%s" data-step="%s">%s</a></div>', 245 esc_attr( 'do_next_step' ), 246 esc_attr( $style_accessories_step['id'] ), 247 esc_html__( 'Skip', 'style-accessories' ) 248 ); 249 } 250 echo '</li>'; 251 } 252 echo '</ul>'; 253 ?> 254 255 <ul class="whizzie-nav"> 256 <?php 257 foreach ( $style_accessories_steps as $style_accessories_step ) { 258 if ( isset( $style_accessories_step['icon'] ) && $style_accessories_step['icon'] ) { 259 echo '<li class="nav-step-' . esc_attr( $style_accessories_step['id'] ) . '"><span class="dashicons dashicons-' . esc_attr( $style_accessories_step['icon'] ) . '"></span></li>'; 260 } 261 } 262 ?> 263 </ul> 264 265 <div class="step-loading"><span class="spinner"></span></div> 266 </div> <!-- .demo_content --> 267 268 <div class="demo_image"> 269 <div class="demo_image buttons"> 270 <a href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" class="button button-primary bundle" target="_blank"><?php echo esc_html__( 'Get Pro Theme', 'style-accessories' ); ?></a> 271 <a href="<?php echo esc_url( STYLE_ACCESSORIES_DEMO_THEME_URL ); ?>" class="button button-primary bundle pro" target="_blank"><?php echo esc_html__( 'Live Demo', 'style-accessories' ); ?></a> 272 <a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_DOC_URL ); ?>" target="_blank" class="button button-primary"><?php echo esc_html__( 'Free Documentation', 'style-accessories' ); ?></a> 273 <a href="<?php echo esc_url( STYLE_ACCESSORIES_SUPPORT_THEME_URL ); ?>" target="_blank" class="button button-primary"><?php echo esc_html__( 'Support', 'style-accessories' ); ?></a> 274 </div> 275 <img src="<?php echo esc_url( get_stylesheet_directory_uri() . '/screenshot.png' ); ?>" alt="<?php echo esc_attr( $style_accessories_theme_title ); ?>" /> 276 </div> <!-- .demo_image --> 277 278 </div> <!-- .demo_content_image --> 279 280 <div class="bundle-getstart-div"> 281 <div class="bundle-getstart-img-div"> 282 <a target="_blank" href="<?php echo esc_url( STYLE_ACCESSORIES_THEME_BUNDLE_URL ); ?>"> 283 <img class="bundle-imgs" src="<?php echo esc_url( get_stylesheet_directory_uri() . '/images/bundle_image.png' ); ?>" alt="<?php echo esc_attr( $style_accessories_theme_title ); ?>" /> 284 </a> 285 </div> 286 <div class="bundle-getstart-lifetime-div"> 287 <h2><?php echo esc_html__( 'WordPress Theme Bundle | 60+ Premium Designs for Every Need', 'style-accessories' ); ?></h2> 288 <a class="button button-primary" target="_blank" href="<?php echo esc_url( STYLE_ACCESSORIES_THEME_BUNDLE_URL ); ?>"> 289 <?php echo esc_html__( 'Get All 60+ Themes @ $79', 'style-accessories' ); ?> 290 </a> 291 </div> 292 </div> 293 294 </div> <!-- .whizzie-wrap --> 295 296 297 <div class="about-wrappp-main-div"> 298 <h1 class="title" style="margin:0;"><?php esc_html_e( 'More Information', 'style-accessories' ); ?></h1> 299 <div class="about-wrappp"> 300 <div class="about-wrappp-boxes-div"> 301 <div class="about_wrappp_demo_content"> 302 <p class="about-description" style="margin-bottom:0;" ><?php esc_html_e( 'Quick Links:', 'style-accessories' ); ?></p> 303 <div class="feature-section two-col"> 304 <div class="card buy-noww" style="background:linear-gradient(to bottom,#0189f0,#024985) !important;"> 305 <h2 style="color:#fff;" class="title"><?php esc_html_e( 'Upgrade To Pro', 'style-accessories' ); ?></h2> 306 <p style="color:#fff;"><?php esc_html_e( 'Take a step towards excellence, try our premium theme. Use Code', 'style-accessories' ) ?><span class="usecode"><?php esc_html_e('" STEPRO10 "', 'style-accessories'); ?></span></p> 307 <p><a style="background: red !important;" href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" class="button button-primary" target="_blank"><?php esc_html_e( 'Upgrade Pro', 'style-accessories' ); ?></a></p> 308 </div> 309 310 <div class="card"> 311 <h2 class="title"><?php esc_html_e( 'Lite Documentation', 'style-accessories' ); ?></h2> 312 <p><?php esc_html_e( 'The free theme documentation can help you set up the theme.', 'style-accessories' ) ?></p> 313 <p><a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_DOC_URL ); ?>" class="button button-primary" target="_blank"><?php esc_html_e( 'Lite Documentation', 'style-accessories' ); ?></a></p> 314 </div> 315 316 <div class="card"> 317 <h2 class="title"><?php esc_html_e( 'Theme Info', 'style-accessories' ); ?></h2> 318 <p><?php esc_html_e( 'Know more about Expert Business Consultant.', 'style-accessories' ) ?></p> 319 <p><a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_THEME_URL ); ?>" class="button button-primary" target="_blank"><?php esc_html_e( 'Theme Info', 'style-accessories' ); ?></a></p> 320 </div> 321 322 <div class="card"> 323 <h2 class="title"><?php esc_html_e( 'Theme Customizer', 'style-accessories' ); ?></h2> 324 <p><?php esc_html_e( 'You can get all theme options in customizer.', 'style-accessories' ) ?></p> 325 <p><a href="<?php echo esc_url( admin_url( 'customize.php' ) ); ?>" class="button button-primary" target="_blank"><?php esc_html_e( 'Customize', 'style-accessories' ); ?></a></p> 326 </div> 327 328 <div class="card"> 329 <h2 class="title"><?php esc_html_e( 'Need Support?', 'style-accessories' ); ?></h2> 330 <p><?php esc_html_e( 'If you are having some issues with the theme or you want to tweak some thing, you can contact us our expert team will help you.', 'style-accessories' ) ?></p> 331 <p><a href="<?php echo esc_url( STYLE_ACCESSORIES_SUPPORT_THEME_URL ); ?>" class="button button-primary" target="_blank"><?php esc_html_e( 'Support Forum', 'style-accessories' ); ?></a></p> 332 </div> 333 334 <div class="card"> 335 <h2 class="title"><?php esc_html_e( 'Review', 'style-accessories' ); ?></h2> 336 <p><?php esc_html_e( 'If you have loved our theme please show your support with the review.', 'style-accessories' ) ?></p> 337 <p><a href="<?php echo esc_url( STYLE_ACCESSORIES_RATE_THEME_URL ); ?>" class="button button-primary" target="_blank"><?php esc_html_e( 'Rate Us', 'style-accessories' ); ?></a></p> 338 </div> 339 </div> 340 </div> <!-- .about_wrappp_demo_content --> 341 </div> <!-- .about-wrappp-boxes-div --> 342 343 <div class="about-wrappp-free-pro-div"> 344 <p class="about-description"><?php esc_html_e( 'View Free vs Pro Table below:', 'style-accessories' ); ?></p> 345 <div class="seo-theme-table"> 346 <table> 347 <thead> 348 <tr><th scope="col"></th> 349 <th class="head" scope="col"><?php esc_html_e( 'Free Theme', 'style-accessories' ); ?></th> 350 <th class="head" scope="col"><?php esc_html_e( 'Pro Theme', 'style-accessories' ); ?></th> 351 </tr> 352 </thead> 353 <tbody> 354 <tr class="odd" scope="row"> 355 <td headers="features" class="feature"><span><?php esc_html_e( 'One click demo import', 'style-accessories' ); ?></span></td> 356 <td><span class="dashicons dashicons-saved"></span></td> 357 <td><span class="dashicons dashicons-saved"></span></td> 358 </tr> 359 <tr class="odd" scope="row"> 360 <td headers="features" class="feature"><?php esc_html_e( '15+ Theme Sections', 'style-accessories' ); ?></td> 361 <td><span class="dashicons dashicons-no-alt"></span></td> 362 <td><span class="dashicons dashicons-saved"></span></td> 363 </tr> 364 <tr class="odd" scope="row"> 365 <td headers="features" class="feature"><?php esc_html_e( 'Extensive Typography Settings & Color Pallets', 'style-accessories' ); ?></td> 366 <td><span class="dashicons dashicons-no-alt"></span></td> 367 <td><span class="dashicons dashicons-saved"></span></td> 368 </tr> 369 <tr class="odd" scope="row"> 370 <td headers="features" class="feature"><?php esc_html_e( 'Fully SEO Optimized', 'style-accessories' ); ?></td> 371 <td><span class="dashicons dashicons-no-alt"></span></td> 372 <td><span class="dashicons dashicons-saved"></span></td> 373 </tr> 374 <tr class="odd" scope="row"> 375 <td headers="features" class="feature"><?php esc_html_e( 'Expert Technical Support', 'style-accessories' ); ?></td> 376 <td><span class="dashicons dashicons-no-alt"></span></td> 377 <td><span class="dashicons dashicons-saved"></span></td> 378 </tr> 379 <tr class="odd" scope="row"> 380 <td headers="features" class="feature"><?php esc_html_e( 'Attractive Preloader Design', 'style-accessories' ); ?></td> 381 <td><span class="dashicons dashicons-no-alt"></span></td> 382 <td><span class="dashicons dashicons-saved"></span></td> 383 </tr> 384 <tr class="odd" scope="row"> 385 <td headers="features" class="feature"><?php esc_html_e( 'Enhanced Plugin Integration', 'style-accessories' ); ?></td> 386 <td><span class="dashicons dashicons-no-alt"></span></td> 387 <td><span class="dashicons dashicons-saved"></span></td> 388 </tr> 389 <tr class="odd" scope="row"> 390 <td headers="features" class="feature"><?php esc_html_e( 'Custom Post Types', 'style-accessories' ); ?></td> 391 <td><span class="dashicons dashicons-no-alt"></span></td> 392 <td><span class="dashicons dashicons-saved"></span></td> 393 </tr> 394 <tr class="odd" scope="row"> 395 <td headers="features" class="feature"><?php esc_html_e( 'High-Level Compatibility with Modern Browsers', 'style-accessories' ); ?></td> 396 <td><span class="dashicons dashicons-no-alt"></span></td> 397 <td><span class="dashicons dashicons-saved"></span></td> 398 </tr> 399 <tr class="odd" scope="row"> 400 <td headers="features" class="feature"><?php esc_html_e( 'Real-Time Theme Customizer', 'style-accessories' ); ?></td> 401 <td><span class="dashicons dashicons-no-alt"></span></td> 402 <td><span class="dashicons dashicons-saved"></span></td> 403 </tr> 404 <tr class="odd" scope="row"> 405 <td headers="features" class="feature"><?php esc_html_e( 'Easy Customization', 'style-accessories' ); ?></td> 406 <td><span class="dashicons dashicons-saved"></span></td> 407 <td><span class="dashicons dashicons-saved"></span></td> 408 </tr> 409 <tr class="odd" scope="row"> 410 <td headers="features" class="feature"><?php esc_html_e( 'Regular Bug Fixes', 'style-accessories' ); ?></td> 411 <td><span class="dashicons dashicons-saved"></span></td> 412 <td><span class="dashicons dashicons-saved"></span></td> 413 </tr> 414 <tr class="odd" scope="row"> 415 <td headers="features" class="feature"><?php esc_html_e( 'Responsive Design', 'style-accessories' ); ?></td> 416 <td><span class="dashicons dashicons-saved"></span></td> 417 <td><span class="dashicons dashicons-saved"></span></td> 418 </tr> 419 <tr class="odd" scope="row"> 420 <td headers="features" class="feature"><?php esc_html_e( 'Multiple Blog Layouts', 'style-accessories' ); ?></td> 421 <td><span class="dashicons dashicons-saved"></span></td> 422 <td><span class="dashicons dashicons-saved"></span></td> 423 </tr> 424 <tr class="odd" scope="row"> 425 <td class="feature feature--empty"></td> 426 <td class="feature feature--empty"></td> 427 <td headers="comp-2" class="td-btn-2"><a class="button button-primary bundle" href="<?php echo esc_url(STYLE_ACCESSORIES_PRO_THEME_URL);?>" target="_blank"><?php esc_html_e( 'Go for Premium', 'style-accessories' ); ?></a></td> 428 </tr> 429 </tbody> 430 </table> 431 </div> 432 </div> 433 434 </div> <!-- .about-wrappp --> 435 </div> <!-- .about-wrappp-main-div --> 436 </div> <!-- .wrap --> 437 <?php 438 } 439 440 441 442 /** 443 * Set options for the steps 444 * Incorporate any options set by the theme dev 445 * Return the array for the steps 446 * @return Array 199 $style_accessories_menu_title = esc_html( $this->style_accessories_page_title ); 200 if ( ! style_accessories_setup_is_complete() ) { 201 $style_accessories_menu_title .= ' <span class="awaiting-mod"><span class="pending-count">1</span></span>'; 202 } 203 add_theme_page( esc_html( $this->style_accessories_page_title ), $style_accessories_menu_title, 'manage_options', $this->style_accessories_page_slug, array( $this, 'wizard_page' ) ); 204 205 global $submenu; 206 if ( current_user_can( 'edit_theme_options' ) && isset( $submenu['themes.php'] ) ) { 207 $submenu['themes.php'][] = array( 208 esc_html__( 'Upgrade to Pro', 'style-accessories' ), 209 'edit_theme_options', 210 esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ), 211 esc_html__( 'Upgrade to Pro', 'style-accessories' ), 212 'expert-menu-upgrade', 213 ); 214 } 215 } 216 217 /** 218 * Steps with any values the theme dev set in demo-import-settings.php. 219 * 220 * @return array 447 221 */ 448 222 public function get_steps() { 449 $style_accessories_dev_steps = $this->config_steps; 450 $style_accessories_steps = array( 451 'intro' => array( 452 'id' => 'intro', 453 'title' => __( 'Welcome to ', 'style-accessories' ) . $this->style_accessories_theme_title, 454 'icon' => 'dashboard', 455 'view' => 'get_step_intro', 456 'callback' => 'do_next_step', 457 'button_text' => __( 'Start Now', 'style-accessories' ), 458 'can_skip' => false 459 ), 460 'plugins' => array( 461 'id' => 'plugins', 462 'title' => __( 'Plugins', 'style-accessories' ), 463 'icon' => 'admin-plugins', 464 'view' => 'get_step_plugins', 465 'callback' => 'install_plugins', 466 'button_text' => __( 'Install Plugins', 'style-accessories' ), 467 'can_skip' => true 468 ), 469 // 'widgets' => array( 470 // 'id' => 'widgets', 471 // 'title' => __( 'Demo Importer', 'style-accessories' ), 472 // 'icon' => 'welcome-widgets-menus', 473 // 'view' => 'get_step_widgets', 474 // 'callback' => 'install_widgets', 475 // 'button_text' => __( 'Import Demo Content', 'style-accessories' ), 476 // 'can_skip' => true 477 // ), 478 'done' => array( 479 'id' => 'done', 480 'title' => __( 'All Done', 'style-accessories' ), 481 'icon' => 'yes', 482 'view' => 'get_step_done', 483 'callback' => '' 484 ) 223 $style_accessories_steps = array( 224 'plugins' => array( 225 'id' => 'plugins', 226 'title' => __( 'Install plugins', 'style-accessories' ), 227 'duration' => __( 'About 1 min', 'style-accessories' ), 228 'view' => 'get_step_plugins', 229 ), 230 'import' => array( 231 'id' => 'import', 232 'title' => __( 'Import products', 'style-accessories' ), 233 'duration' => __( 'About 1 min', 'style-accessories' ), 234 'view' => 'get_step_import', 235 ), 236 'customize' => array( 237 'id' => 'customize', 238 'title' => __( 'Customize & launch', 'style-accessories' ), 239 'duration' => __( 'About 2 min', 'style-accessories' ), 240 'view' => 'get_step_customize', 241 ), 485 242 ); 486 487 // Iterate through each step and replace with dev config values 488 if( $style_accessories_dev_steps ) { 489 // Configurable elements - these are the only ones the dev can update from demo-import-settings.php 490 $can_config = array( 'title', 'icon', 'button_text', 'can_skip' ); 491 foreach( $style_accessories_dev_steps as $style_accessories_dev_step ) { 492 // We can only proceed if an ID exists and matches one of our IDs 493 if( isset( $style_accessories_dev_step['id'] ) ) { 494 $id = $style_accessories_dev_step['id']; 495 if( isset( $style_accessories_steps[$id] ) ) { 496 foreach( $can_config as $element ) { 497 if( isset( $style_accessories_dev_step[$element] ) ) { 498 $style_accessories_steps[$id][$element] = $style_accessories_dev_step[$element]; 499 } 500 } 243 244 // Configurable elements - these are the only ones the dev can update from demo-import-settings.php 245 $style_accessories_can_config = array( 'title', 'duration' ); 246 foreach ( $this->config_steps as $style_accessories_dev_step ) { 247 if ( isset( $style_accessories_dev_step['id'], $style_accessories_steps[ $style_accessories_dev_step['id'] ] ) ) { 248 foreach ( $style_accessories_can_config as $style_accessories_element ) { 249 if ( isset( $style_accessories_dev_step[ $style_accessories_element ] ) ) { 250 $style_accessories_steps[ $style_accessories_dev_step['id'] ][ $style_accessories_element ] = $style_accessories_dev_step[ $style_accessories_element ]; 501 251 } 502 252 } … … 505 255 return $style_accessories_steps; 506 256 } 507 508 /** 509 * Print the content for the intro step 510 */ 511 public function get_step_intro() { ?> 512 <div class="summary"> 513 <div class="steps_content"> 514 <p> 515 <?php printf( 257 258 /** 259 * Make an interface for the wizard 260 */ 261 public function wizard_page() { 262 tgmpa_load_bulk_installer(); 263 264 if ( ! class_exists( 'TGM_Plugin_Activation' ) || ! isset( $GLOBALS['tgmpa'] ) ) { 265 die( esc_html__( 'Failed to find TGM', 'style-accessories' ) ); 266 } 267 268 $style_accessories_url = wp_nonce_url( add_query_arg( array( 'plugins' => 'go' ) ), 'whizzie-setup' ); 269 $style_accessories_method = ''; 270 $style_accessories_fields = array_keys( $_POST ); 271 272 if ( false === ( $style_accessories_creds = request_filesystem_credentials( esc_url_raw( $style_accessories_url ), $style_accessories_method, false, false, $style_accessories_fields ) ) ) { 273 return true; 274 } 275 276 if ( ! WP_Filesystem( $style_accessories_creds ) ) { 277 request_filesystem_credentials( esc_url_raw( $style_accessories_url ), $style_accessories_method, true, false, $style_accessories_fields ); 278 return true; 279 } 280 281 $style_accessories_steps = $this->get_steps(); 282 $style_accessories_current_step = style_accessories_get_setup_step(); 283 $style_accessories_is_complete = 'done' === $style_accessories_current_step; 284 if ( ! $style_accessories_is_complete && ! isset( $style_accessories_steps[ $style_accessories_current_step ] ) ) { 285 $style_accessories_current_step = key( $style_accessories_steps ); 286 } 287 $style_accessories_popup_due = time() >= (int) get_option( 'style_accessories_popup_next_show', 0 ); 288 289 ?> 290 <div class="wrap expert-gs" data-state="<?php echo esc_attr( $style_accessories_is_complete ? 'done' : 'setup' ); ?>"> 291 <h1 class="screen-reader-text"><?php echo esc_html( $this->style_accessories_page_title ); ?></h1> 292 <hr class="wp-header-end"> 293 294 <?php $this->render_header(); ?> 295 296 <div class="expert-gs__body"> 297 <section class="expert-gs__setup" <?php echo $style_accessories_is_complete ? 'hidden' : ''; ?>> 298 <?php $this->render_setup( $style_accessories_steps, $style_accessories_is_complete ? key( $style_accessories_steps ) : $style_accessories_current_step ); ?> 299 </section> 300 301 <section class="expert-gs__done" <?php echo $style_accessories_is_complete ? '' : 'hidden'; ?>> 302 <?php $this->render_done( count( $style_accessories_steps ) ); ?> 303 </section> 304 305 <?php 306 $this->render_pricing(); 307 $this->render_compare(); 308 ?> 309 310 <section class="expert-gs__help" <?php echo $style_accessories_is_complete ? '' : 'hidden'; ?>> 311 <?php $this->render_help(); ?> 312 </section> 313 314 <?php $this->render_faq(); ?> 315 </div> 316 317 <?php $this->render_popup( $style_accessories_popup_due ); ?> 318 </div> 319 <?php 320 } 321 322 /** 323 * Page header with the theme name and quick links. 324 */ 325 protected function render_header() { 326 $style_accessories_theme = wp_get_theme(); 327 ?> 328 <header class="expert-gs__header"> 329 <div class="expert-gs__brand"> 330 <span class="expert-gs__logo dashicons dashicons-admin-appearance" aria-hidden="true"></span> 331 <div> 332 <p class="expert-gs__name"><?php echo esc_html( $this->style_accessories_theme_title ); ?></p> 333 <p class="expert-gs__meta"> 334 <?php 335 printf( 336 /* translators: 1: Theme version, 2: Theme author. */ 337 esc_html__( 'Free theme · v%1$s · by %2$s', 'style-accessories' ), 338 esc_html( $style_accessories_theme->get( 'Version' ) ), 339 esc_html__( 'SEO Themes Expert', 'style-accessories' ) 340 ); 341 ?> 342 </p> 343 </div> 344 </div> 345 <nav class="expert-gs__links" aria-label="<?php esc_attr_e( 'Theme links', 'style-accessories' ); ?>"> 346 <a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Theme info', 'style-accessories' ); ?></a> 347 <a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_DOC_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Documentation', 'style-accessories' ); ?></a> 348 <a href="<?php echo esc_url( STYLE_ACCESSORIES_SUPPORT_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Support', 'style-accessories' ); ?></a> 349 <a href="<?php echo esc_url( STYLE_ACCESSORIES_DEMO_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Live demo', 'style-accessories' ); ?></a> 350 <a class="expert-btn expert-btn--accent" href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" target="_blank" rel="noopener"><span class="dashicons dashicons-star-filled" aria-hidden="true"></span><?php esc_html_e( 'Upgrade to Pro', 'style-accessories' ); ?></a> 351 </nav> 352 </header> 353 <?php 354 } 355 356 /** 357 * Stepper card and sidebar shown until setup is finished. 358 * 359 * @param array $style_accessories_steps Wizard steps. 360 * @param string $style_accessories_current_step Step to open on page load. 361 */ 362 protected function render_setup( $style_accessories_steps, $style_accessories_current_step ) { 363 $style_accessories_ids = array_keys( $style_accessories_steps ); 364 $style_accessories_index = array_search( $style_accessories_current_step, $style_accessories_ids, true ); 365 ?> 366 <div class="expert-gs__grid"> 367 <div class="expert-card expert-wizard" data-current="<?php echo esc_attr( $style_accessories_current_step ); ?>"> 368 <ol class="expert-stepper"> 369 <?php 370 $style_accessories_i = 0; 371 foreach ( $style_accessories_steps as $style_accessories_step ) { 372 $style_accessories_class = 'expert-stepper__item'; 373 if ( $style_accessories_i < $style_accessories_index ) { 374 $style_accessories_class .= ' is-done'; 375 } elseif ( $style_accessories_i === $style_accessories_index ) { 376 $style_accessories_class .= ' is-current'; 377 } 378 ?> 379 <li class="<?php echo esc_attr( $style_accessories_class ); ?>" data-step="<?php echo esc_attr( $style_accessories_step['id'] ); ?>"> 380 <span class="expert-stepper__num"><?php echo esc_html( $style_accessories_i + 1 ); ?></span> 381 <span class="expert-stepper__text"> 382 <strong><?php echo esc_html( $style_accessories_step['title'] ); ?></strong> 383 <small><?php echo esc_html( $style_accessories_step['duration'] ); ?></small> 384 </span> 385 </li> 386 <?php 387 $style_accessories_i++; 388 } 389 ?> 390 </ol> 391 392 <?php 393 $style_accessories_i = 0; 394 foreach ( $style_accessories_steps as $style_accessories_step ) { 395 $style_accessories_i++; 396 ?> 397 <div class="expert-wizard__panel" data-step="<?php echo esc_attr( $style_accessories_step['id'] ); ?>" <?php echo $style_accessories_step['id'] === $style_accessories_current_step ? '' : 'hidden'; ?>> 398 <p class="expert-eyebrow"> 399 <?php 400 /* translators: 1: Current step number, 2: Total steps. */ 401 printf( esc_html__( 'Step %1$d of %2$d', 'style-accessories' ), (int) $style_accessories_i, count( $style_accessories_steps ) ); 402 ?> 403 </p> 404 <?php call_user_func( array( $this, $style_accessories_step['view'] ) ); ?> 405 </div> 406 <?php 407 } 408 ?> 409 410 <p class="expert-wizard__foot"> 411 <span class="dashicons dashicons-shield" aria-hidden="true"></span> 412 <?php esc_html_e( 'You can re-run this setup any time from Appearance › Getting Started.', 'style-accessories' ); ?> 413 </p> 414 </div> 415 416 <aside class="expert-gs__aside"> 417 <div class="expert-card expert-preview"> 418 <div class="expert-preview__shot"> 419 <img src="<?php echo esc_url( get_template_directory_uri() . '/screenshot.png' ); ?>" alt="<?php echo esc_attr( $this->style_accessories_theme_title ); ?>"> 420 </div> 421 <h3><?php esc_html_e( 'Your homepage', 'style-accessories' ); ?></h3> 422 <p><?php esc_html_e( 'Homepage sections are ready, waiting for your own text.', 'style-accessories' ); ?></p> 423 <a class="expert-btn expert-btn--ghost expert-btn--block" href="<?php echo esc_url( STYLE_ACCESSORIES_DEMO_THEME_URL ); ?>" target="_blank" rel="noopener"><span class="dashicons dashicons-visibility" aria-hidden="true"></span><?php esc_html_e( 'Open the live demo', 'style-accessories' ); ?></a> 424 </div> 425 <div class="expert-card expert-stuck"> 426 <h3><?php esc_html_e( 'Stuck on something?', 'style-accessories' ); ?></h3> 427 <a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_DOC_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Read the setup guide', 'style-accessories' ); ?></a> 428 <a href="<?php echo esc_url( STYLE_ACCESSORIES_SUPPORT_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Ask in the support forum', 'style-accessories' ); ?></a> 429 </div> 430 </aside> 431 </div> 432 <?php 433 } 434 435 /** 436 * Step 1: recommended plugins. 437 */ 438 public function get_step_plugins() { 439 $style_accessories_rows = $this->get_plugin_rows(); 440 $style_accessories_pending = array_filter( 441 $style_accessories_rows, 442 function ( $style_accessories_row ) { 443 return ! $style_accessories_row['active']; 444 } 445 ); 446 ?> 447 <h2 class="expert-title"><?php esc_html_e( 'Install the plugins the theme uses', 'style-accessories' ); ?></h2> 448 <p class="expert-lead"><?php esc_html_e( 'These power parts of the homepage. They are free and we install and activate them for you.', 'style-accessories' ); ?></p> 449 450 <ul class="expert-plugins"> 451 <?php foreach ( $style_accessories_rows as $style_accessories_slug => $style_accessories_row ) : ?> 452 <li class="expert-plugin<?php echo $style_accessories_row['active'] ? ' is-active' : ''; ?>" data-slug="<?php echo esc_attr( $style_accessories_slug ); ?>"> 453 <label> 454 <input type="checkbox" value="<?php echo esc_attr( $style_accessories_slug ); ?>" <?php checked( true ); ?> <?php disabled( $style_accessories_row['active'] ); ?>> 455 <span class="expert-plugin__text"> 456 <strong><?php echo esc_html( $style_accessories_row['name'] ); ?></strong> 457 <?php if ( $style_accessories_row['description'] ) : ?> 458 <small><?php echo esc_html( $style_accessories_row['description'] ); ?></small> 459 <?php endif; ?> 460 </span> 461 </label> 462 <span class="expert-plugin__status"> 463 <?php 464 if ( $style_accessories_row['active'] ) { 465 esc_html_e( 'Active', 'style-accessories' ); 466 } elseif ( $style_accessories_row['required'] ) { 467 esc_html_e( 'Required', 'style-accessories' ); 468 } else { 469 esc_html_e( 'Recommended', 'style-accessories' ); 470 } 471 ?> 472 </span> 473 </li> 474 <?php endforeach; ?> 475 </ul> 476 477 <p class="expert-note expert-note--error" data-role="plugin-error" hidden></p> 478 479 <p class="expert-note"> 480 <span class="dashicons dashicons-lock" aria-hidden="true"></span> 481 <span> 482 <?php esc_html_e( 'Want more homepage sections and color options? They come with', 'style-accessories' ); ?> 483 <a href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'the Pro version', 'style-accessories' ); ?></a>. 484 </span> 485 </p> 486 487 <div class="expert-actions"> 488 <button type="button" class="expert-btn expert-btn--primary" data-action="install-plugins"> 489 <span class="expert-btn__label"><?php echo $style_accessories_pending ? esc_html__( 'Install & continue', 'style-accessories' ) : esc_html__( 'Continue', 'style-accessories' ); ?></span> 490 <span class="dashicons dashicons-arrow-right-alt" aria-hidden="true"></span> 491 </button> 492 <?php if ( $style_accessories_pending ) : ?> 493 <button type="button" class="expert-link" data-action="next"><?php esc_html_e( 'Skip this step', 'style-accessories' ); ?></button> 494 <?php endif; ?> 495 </div> 496 <?php 497 } 498 499 /** 500 * Step 2: import the demo products. 501 */ 502 public function get_step_import() { 503 $style_accessories_imported = (bool) get_option( 'style_accessories_demo_imported' ); 504 ?> 505 <h2 class="expert-title"><?php esc_html_e( 'Import the demo products', 'style-accessories' ); ?></h2> 506 <p class="expert-lead"><?php esc_html_e( 'One click adds sample products with images and sale prices, so the homepage product section looks like the demo.', 'style-accessories' ); ?></p> 507 508 <ul class="expert-checks"> 509 <li><span class="dashicons dashicons-yes" aria-hidden="true"></span><?php esc_html_e( 'Product categories with sample products', 'style-accessories' ); ?></li> 510 <li><span class="dashicons dashicons-yes" aria-hidden="true"></span><?php esc_html_e( 'Product images and sale prices', 'style-accessories' ); ?></li> 511 <li><span class="dashicons dashicons-yes" aria-hidden="true"></span><?php esc_html_e( 'Shown in the homepage product section', 'style-accessories' ); ?></li> 512 </ul> 513 514 <p class="expert-note expert-note--error" data-role="import-error" hidden></p> 515 516 <?php if ( $style_accessories_imported ) : ?> 517 <p class="expert-note"> 518 <span class="dashicons dashicons-yes-alt" aria-hidden="true"></span> 519 <span><?php esc_html_e( 'The demo products are already imported.', 'style-accessories' ); ?></span> 520 </p> 521 <?php else : ?> 522 <p class="expert-note"> 523 <span class="dashicons dashicons-info-outline" aria-hidden="true"></span> 524 <span><?php echo class_exists( 'WooCommerce' ) ? esc_html__( 'Products that already exist with the same name are skipped.', 'style-accessories' ) : esc_html__( 'Install WooCommerce in step 1 first.', 'style-accessories' ); ?></span> 525 </p> 526 <?php endif; ?> 527 528 <div class="expert-actions"> 529 <button type="button" class="expert-btn expert-btn--primary" data-action="<?php echo $style_accessories_imported ? 'next' : 'import-demo'; ?>"> 530 <span class="expert-btn__label"><?php echo $style_accessories_imported ? esc_html__( 'Continue', 'style-accessories' ) : esc_html__( 'Import & continue', 'style-accessories' ); ?></span> 531 <span class="dashicons dashicons-arrow-right-alt" aria-hidden="true"></span> 532 </button> 533 <a class="expert-btn expert-btn--ghost" href="<?php echo esc_url( home_url( '/' ) ); ?>" target="_blank" rel="noopener"> 534 <?php esc_html_e( 'Open homepage', 'style-accessories' ); ?> 535 <span class="dashicons dashicons-external" aria-hidden="true"></span> 536 </a> 537 <?php if ( ! $style_accessories_imported ) : ?> 538 <button type="button" class="expert-link" data-action="next"><?php esc_html_e( 'Skip this step', 'style-accessories' ); ?></button> 539 <?php endif; ?> 540 <button type="button" class="expert-link" data-action="back"><?php esc_html_e( 'Back', 'style-accessories' ); ?></button> 541 </div> 542 <?php 543 } 544 545 /** 546 * Step 3: shortcuts into the Site Editor. 547 */ 548 public function get_step_customize() { 549 ?> 550 <h2 class="expert-title"><?php esc_html_e( 'Make it yours', 'style-accessories' ); ?></h2> 551 <p class="expert-lead"><?php esc_html_e( 'Replace the sample text and images with your own. Each link opens the Site Editor in a new tab.', 'style-accessories' ); ?></p> 552 553 <ul class="expert-tasks"> 554 <?php foreach ( $this->get_customize_links() as $style_accessories_task ) : ?> 555 <li class="expert-task"> 556 <span class="expert-task__icon dashicons dashicons-<?php echo esc_attr( $style_accessories_task['icon'] ); ?>" aria-hidden="true"></span> 557 <span class="expert-task__text"> 558 <strong><?php echo esc_html( $style_accessories_task['title'] ); ?></strong> 559 <small><?php echo esc_html( $style_accessories_task['text'] ); ?></small> 560 </span> 561 <a class="expert-btn expert-btn--ghost expert-btn--sm" href="<?php echo esc_url( $style_accessories_task['url'] ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Open', 'style-accessories' ); ?><span class="dashicons dashicons-external" aria-hidden="true"></span></a> 562 </li> 563 <?php endforeach; ?> 564 </ul> 565 566 <div class="expert-actions"> 567 <button type="button" class="expert-btn expert-btn--primary" data-action="finish"> 568 <?php esc_html_e( 'Finish setup', 'style-accessories' ); ?> 569 <span class="dashicons dashicons-yes" aria-hidden="true"></span> 570 </button> 571 <button type="button" class="expert-link" data-action="back"><?php esc_html_e( 'Back', 'style-accessories' ); ?></button> 572 </div> 573 <?php 574 } 575 576 /** 577 * Site Editor shortcuts used in step 3. 578 * 579 * @return array 580 */ 581 protected function get_customize_links() { 582 $style_accessories_stylesheet = get_stylesheet(); 583 return array( 584 array( 585 'icon' => 'admin-home', 586 'title' => __( 'Edit the homepage', 'style-accessories' ), 587 'text' => __( 'Headline, photos and the sections of your homepage.', 'style-accessories' ), 588 'url' => admin_url( 'site-editor.php?postType=wp_template&postId=' . rawurlencode( $style_accessories_stylesheet . '//front-page' ) . '&canvas=edit' ), 589 ), 590 array( 591 'icon' => 'format-image', 592 'title' => __( 'Upload your logo and menu', 'style-accessories' ), 593 'text' => __( 'Replace the sample logo in the header.', 'style-accessories' ), 594 'url' => admin_url( 'site-editor.php?postType=wp_template_part&postId=' . rawurlencode( $style_accessories_stylesheet . '//header' ) . '&canvas=edit' ), 595 ), 596 array( 597 'icon' => 'phone', 598 'title' => __( 'Add your phone number and email', 'style-accessories' ), 599 'text' => __( 'Shown in the footer so customers can reach you.', 'style-accessories' ), 600 'url' => admin_url( 'site-editor.php?postType=wp_template_part&postId=' . rawurlencode( $style_accessories_stylesheet . '//footer' ) . '&canvas=edit' ), 601 ), 602 array( 603 'icon' => 'art', 604 'title' => __( 'Pick colors and fonts', 'style-accessories' ), 605 'text' => __( 'Match the site to your brand.', 'style-accessories' ), 606 'url' => admin_url( 'site-editor.php?path=%2Fwp_global_styles' ), 607 ), 608 ); 609 } 610 611 /** 612 * Card shown once all steps are finished. 613 * 614 * @param int $style_accessories_step_count Number of wizard steps. 615 */ 616 protected function render_done( $style_accessories_step_count ) { 617 ?> 618 <div class="expert-card expert-ready"> 619 <span class="expert-ready__check dashicons dashicons-yes" aria-hidden="true"></span> 620 <div class="expert-ready__body"> 621 <p class="expert-eyebrow expert-eyebrow--success"> 622 <?php 623 /* translators: 1: Completed steps, 2: Total steps. */ 624 printf( esc_html__( 'Setup complete · %1$d of %2$d steps', 'style-accessories' ), (int) $style_accessories_step_count, (int) $style_accessories_step_count ); 625 ?> 626 </p> 627 <h2 class="expert-title expert-title--lg"><?php esc_html_e( 'Your site is ready', 'style-accessories' ); ?></h2> 628 <p class="expert-lead"><?php esc_html_e( 'Preview it, then replace the sample logo, text and images with your own.', 'style-accessories' ); ?></p> 629 <div class="expert-actions"> 630 <a class="expert-btn expert-btn--primary" href="<?php echo esc_url( home_url( '/' ) ); ?>" target="_blank" rel="noopener"> 631 <?php esc_html_e( 'Preview site', 'style-accessories' ); ?> 632 <span class="dashicons dashicons-external" aria-hidden="true"></span> 633 </a> 634 <a class="expert-btn expert-btn--ghost" href="<?php echo esc_url( admin_url( 'site-editor.php' ) ); ?>"><span class="dashicons dashicons-admin-customizer" aria-hidden="true"></span><?php esc_html_e( 'Open Site Editor', 'style-accessories' ); ?></a> 635 <a class="expert-link" href="<?php echo esc_url( admin_url() ); ?>"><span class="dashicons dashicons-dashboard" aria-hidden="true"></span><?php esc_html_e( 'Go to dashboard', 'style-accessories' ); ?></a> 636 <button type="button" class="expert-link expert-link--muted" data-action="restart"><span class="dashicons dashicons-update" aria-hidden="true"></span><?php esc_html_e( 'Run setup again', 'style-accessories' ); ?></button> 637 </div> 638 </div> 639 <div class="expert-ready__shot"> 640 <img src="<?php echo esc_url( get_template_directory_uri() . '/screenshot.png' ); ?>" alt="<?php echo esc_attr( $this->style_accessories_theme_title ); ?>"> 641 </div> 642 </div> 643 <?php 644 } 645 646 /** 647 * Free / Pro / Bundle plans. 648 */ 649 protected function render_pricing() { 650 $style_accessories_pro_price = (float) STYLE_ACCESSORIES_PRO_PRICE; 651 $style_accessories_discount_price = $style_accessories_pro_price * ( 100 - (int) STYLE_ACCESSORIES_COUPON_PERCENT ) / 100; 652 $style_accessories_per_theme = (float) STYLE_ACCESSORIES_BUNDLE_PRICE / max( 1, (int) STYLE_ACCESSORIES_BUNDLE_THEME_COUNT ); 653 $style_accessories_bundle_deal = (float) STYLE_ACCESSORIES_BUNDLE_PRICE * ( 100 - (int) STYLE_ACCESSORIES_BUNDLE_COUPON_PERCENT ) / 100; 654 ?> 655 <section class="expert-card expert-pricing" id="expert-pricing"> 656 <div class="expert-plans"> 657 <div class="expert-plan"> 658 <h3 class="expert-plan__name"><?php esc_html_e( 'Free', 'style-accessories' ); ?></h3> 659 <p class="expert-plan__for"><?php esc_html_e( 'What you have now', 'style-accessories' ); ?></p> 660 <p class="expert-plan__price"><?php echo esc_html( $this->format_price( 0 ) ); ?></p> 661 <?php 662 $this->render_list( 663 array( 664 __( 'Responsive design', 'style-accessories' ), 665 __( 'Multiple blog layouts', 'style-accessories' ), 666 __( 'Easy customization', 'style-accessories' ), 667 __( 'Regular bug fixes', 'style-accessories' ), 668 ) 669 ); 670 ?> 671 <span class="expert-btn expert-btn--muted expert-btn--block" aria-disabled="true"><span class="dashicons dashicons-yes-alt" aria-hidden="true"></span><?php esc_html_e( 'Current plan', 'style-accessories' ); ?></span> 672 </div> 673 674 <div class="expert-plan expert-plan--featured"> 675 <span class="expert-plan__flag"><?php esc_html_e( 'Most popular', 'style-accessories' ); ?></span> 676 <h3 class="expert-plan__name"> 677 <?php 516 678 /* translators: %s: Theme name. */ 517 esc_html__('Thank you for choosing the %s theme. You will only need a few minutes to configure and launch your new website with the help of this quick setup tutorial. To begin using your website, simply follow the wizard\'s instructions.', 'style-accessories'), 518 esc_html($this->style_accessories_theme_title) 519 ); ?> 679 printf( esc_html__( '%s Pro', 'style-accessories' ), esc_html( $this->style_accessories_theme_title ) ); 680 ?> 681 </h3> 682 <p class="expert-plan__for"><?php esc_html_e( 'For one business site', 'style-accessories' ); ?></p> 683 <p class="expert-plan__price"><?php echo esc_html( $this->format_price( $style_accessories_pro_price ) ); ?> <small><?php esc_html_e( 'one-time', 'style-accessories' ); ?></small></p> 684 <p class="expert-plan__deal"> 685 <?php 686 /* translators: %s: Discounted price. */ 687 printf( esc_html__( 'Only %s with code', 'style-accessories' ), '<strong>' . esc_html( $this->format_price( $style_accessories_discount_price ) ) . '</strong>' ); 688 ?> 689 </p> 690 <?php $this->render_coupon( 'sm' ); ?> 691 <p class="expert-plan__lead"><?php esc_html_e( 'Everything in Free, plus:', 'style-accessories' ); ?></p> 692 <?php 693 $this->render_list( 694 array( 695 __( '15+ extra homepage sections', 'style-accessories' ), 696 __( 'Typography & color palettes', 'style-accessories' ), 697 __( 'Custom post types', 'style-accessories' ), 698 __( 'Fully SEO-optimized markup', 'style-accessories' ), 699 __( 'Preloader & real-time customizer', 'style-accessories' ), 700 __( 'Expert technical support', 'style-accessories' ), 701 ) 702 ); 703 ?> 704 <a class="expert-btn expert-btn--primary expert-btn--block" href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" target="_blank" rel="noopener"><span class="dashicons dashicons-unlock" aria-hidden="true"></span><?php esc_html_e( 'Upgrade to Pro', 'style-accessories' ); ?><span class="dashicons dashicons-arrow-right-alt" aria-hidden="true"></span></a> 705 </div> 706 707 <div class="expert-plan"> 708 <h3 class="expert-plan__name"><?php esc_html_e( 'Theme Bundle', 'style-accessories' ); ?></h3> 709 <p class="expert-plan__for"><?php esc_html_e( 'For agencies and multiple sites', 'style-accessories' ); ?></p> 710 <p class="expert-plan__price"><?php echo esc_html( $this->format_price( STYLE_ACCESSORIES_BUNDLE_PRICE ) ); ?> <small><?php esc_html_e( 'one-time', 'style-accessories' ); ?></small></p> 711 <p class="expert-plan__for"> 712 <?php 713 /* translators: %s: Price per theme. */ 714 printf( esc_html__( 'About %s per theme', 'style-accessories' ), esc_html( $this->format_price( $style_accessories_per_theme ) ) ); 715 ?> 716 </p> 717 <p class="expert-plan__deal"> 718 <?php 719 /* translators: %s: Discounted price. */ 720 printf( esc_html__( 'Only %s with code', 'style-accessories' ), '<strong>' . esc_html( $this->format_price( $style_accessories_bundle_deal ) ) . '</strong>' ); 721 ?> 722 </p> 723 <?php $this->render_coupon( 'sm', STYLE_ACCESSORIES_BUNDLE_COUPON_CODE ); ?> 724 <?php 725 $this->render_list( 726 array( 727 /* translators: %s: Theme name. */ 728 sprintf( __( '%s Pro included', 'style-accessories' ), $this->style_accessories_theme_title ), 729 /* translators: %s: Number of themes, e.g. 70+. */ 730 sprintf( __( '%s premium WordPress themes', 'style-accessories' ), STYLE_ACCESSORIES_BUNDLE_THEME_COUNT . '+' ), 731 __( 'One payment, every design', 'style-accessories' ), 732 ) 733 ); 734 ?> 735 <a class="expert-btn expert-btn--ghost expert-btn--block" href="<?php echo esc_url( STYLE_ACCESSORIES_THEME_BUNDLE_URL ); ?>" target="_blank" rel="noopener"> 736 <span class="dashicons dashicons-screenoptions" aria-hidden="true"></span> 737 <?php 738 /* translators: %s: Number of themes, e.g. 70+. */ 739 printf( esc_html__( 'Get all %s themes', 'style-accessories' ), esc_html( STYLE_ACCESSORIES_BUNDLE_THEME_COUNT . '+' ) ); 740 ?> 741 </a> 742 </div> 743 </div> 744 </section> 745 <?php 746 } 747 748 /** 749 * Free vs Pro feature table. 750 */ 751 protected function render_compare() { 752 $style_accessories_features = array( 753 __( 'One-click setup', 'style-accessories' ) => true, 754 __( 'Responsive design', 'style-accessories' ) => true, 755 __( 'Multiple blog layouts', 'style-accessories' ) => true, 756 __( 'Regular bug fixes', 'style-accessories' ) => true, 757 __( 'Easy customization', 'style-accessories' ) => true, 758 __( '15+ theme sections', 'style-accessories' ) => false, 759 __( 'Typography settings & color palettes', 'style-accessories' ) => false, 760 __( 'Fully SEO optimized', 'style-accessories' ) => false, 761 __( 'Custom post types', 'style-accessories' ) => false, 762 __( 'Real-time theme customizer', 'style-accessories' ) => false, 763 __( 'Enhanced plugin integration', 'style-accessories' ) => false, 764 __( 'Attractive preloader', 'style-accessories' ) => false, 765 __( 'Expert technical support', 'style-accessories' ) => false, 766 ); 767 ?> 768 <section class="expert-card expert-compare"> 769 <h2 class="expert-title"><?php esc_html_e( 'Compare Free and Pro', 'style-accessories' ); ?></h2> 770 <div class="expert-compare__scroll"> 771 <table class="expert-table"> 772 <thead> 773 <tr> 774 <th scope="col"><?php esc_html_e( 'Feature', 'style-accessories' ); ?></th> 775 <th scope="col"><?php esc_html_e( 'Free', 'style-accessories' ); ?></th> 776 <th scope="col" class="is-pro"><?php esc_html_e( 'Pro', 'style-accessories' ); ?></th> 777 </tr> 778 </thead> 779 <tbody> 780 <?php foreach ( $style_accessories_features as $style_accessories_label => $style_accessories_in_free ) : ?> 781 <tr> 782 <th scope="row"><?php echo esc_html( $style_accessories_label ); ?></th> 783 <td> 784 <?php if ( $style_accessories_in_free ) : ?> 785 <span class="dashicons dashicons-yes" aria-hidden="true"></span><span class="screen-reader-text"><?php esc_html_e( 'Included', 'style-accessories' ); ?></span> 786 <?php else : ?> 787 <span class="expert-dash" aria-hidden="true">—</span><span class="screen-reader-text"><?php esc_html_e( 'Not included', 'style-accessories' ); ?></span> 788 <?php endif; ?> 789 </td> 790 <td class="is-pro"><span class="dashicons dashicons-yes" aria-hidden="true"></span><span class="screen-reader-text"><?php esc_html_e( 'Included', 'style-accessories' ); ?></span></td> 791 </tr> 792 <?php endforeach; ?> 793 </tbody> 794 <tfoot> 795 <tr> 796 <td colspan="2"></td> 797 <td class="is-pro"> 798 <a class="expert-btn expert-btn--primary expert-btn--sm" href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" target="_blank" rel="noopener"><span class="dashicons dashicons-unlock" aria-hidden="true"></span><?php esc_html_e( 'Upgrade to Pro', 'style-accessories' ); ?></a> 799 </td> 800 </tr> 801 </tfoot> 802 </table> 803 </div> 804 </section> 805 <?php 806 } 807 808 /** 809 * Review request and help links, shown after setup. 810 */ 811 protected function render_help() { 812 ?> 813 <div class="expert-help"> 814 <div class="expert-card expert-review"> 815 <div> 816 <h3> 817 <?php 818 /* translators: %s: Theme name. */ 819 printf( esc_html__( 'Enjoying %s?', 'style-accessories' ), esc_html( $this->style_accessories_theme_title ) ); 820 ?> 821 </h3> 822 <p><?php esc_html_e( 'A short review on WordPress.org helps other site owners find the theme.', 'style-accessories' ); ?></p> 823 </div> 824 <a class="expert-btn expert-btn--ghost" href="<?php echo esc_url( STYLE_ACCESSORIES_RATE_THEME_URL ); ?>" target="_blank" rel="noopener"> 825 <span class="dashicons dashicons-star-filled" aria-hidden="true"></span> 826 <?php esc_html_e( 'Leave a review', 'style-accessories' ); ?> 827 </a> 828 </div> 829 <div class="expert-card expert-stuck"> 830 <h3><?php esc_html_e( 'Need a hand?', 'style-accessories' ); ?></h3> 831 <a href="<?php echo esc_url( STYLE_ACCESSORIES_FREE_DOC_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Read the documentation', 'style-accessories' ); ?></a> 832 <a href="<?php echo esc_url( STYLE_ACCESSORIES_SUPPORT_THEME_URL ); ?>" target="_blank" rel="noopener"><?php esc_html_e( 'Ask in the support forum', 'style-accessories' ); ?></a> 833 </div> 834 </div> 835 <?php 836 } 837 838 /** 839 * Common questions about upgrading. 840 */ 841 protected function render_faq() { 842 $style_accessories_faqs = array( 843 __( 'Will I lose my content when I upgrade?', 'style-accessories' ) => __( 'No. Your posts, pages, media and menus are stored in WordPress, not in the theme, so they stay. Template edits made in the Site Editor belong to the free theme, so check those after switching.', 'style-accessories' ), 844 __( 'How do I use the discount?', 'style-accessories' ) => sprintf( 845 /* translators: 1: Pro coupon code, 2: Pro discount percentage, 3: Bundle coupon code, 4: Bundle discount percentage. */ 846 __( 'Enter %1$s at checkout to take %2$d%% off the Pro theme, or %3$s to take %4$d%% off the Theme Bundle.', 'style-accessories' ), 847 STYLE_ACCESSORIES_COUPON_CODE, 848 (int) STYLE_ACCESSORIES_COUPON_PERCENT, 849 STYLE_ACCESSORIES_BUNDLE_COUPON_CODE, 850 (int) STYLE_ACCESSORIES_BUNDLE_COUPON_PERCENT 851 ), 852 __( 'What is in the Theme Bundle?', 'style-accessories' ) => sprintf( 853 /* translators: 1: Number of themes, 2: Theme name. */ 854 __( 'Every premium theme in the collection (%1$s designs, %2$s Pro included) for a single payment. A good fit if you build sites for several businesses.', 'style-accessories' ), 855 STYLE_ACCESSORIES_BUNDLE_THEME_COUNT . '+', 856 $this->style_accessories_theme_title 857 ), 858 __( 'Can I keep using the free theme?', 'style-accessories' ) => __( 'Yes. The free theme stays free and keeps receiving updates. Upgrade only when you need the extra sections and support.', 'style-accessories' ), 859 ); 860 ?> 861 <section class="expert-faq"> 862 <h2 class="expert-title"><?php esc_html_e( 'Questions before upgrading', 'style-accessories' ); ?></h2> 863 <div class="expert-faq__grid"> 864 <?php foreach ( $style_accessories_faqs as $style_accessories_question => $style_accessories_answer ) : ?> 865 <div class="expert-card expert-faq__item"> 866 <h3><?php echo esc_html( $style_accessories_question ); ?></h3> 867 <p><?php echo esc_html( $style_accessories_answer ); ?></p> 868 </div> 869 <?php endforeach; ?> 870 </div> 871 </section> 872 <?php 873 } 874 875 /** 876 * Bottom-right upgrade popup. 877 * 878 * @param bool $style_accessories_due Whether the popup's waiting period is over. 879 */ 880 protected function render_popup( $style_accessories_due ) { 881 $style_accessories_per_theme = (float) STYLE_ACCESSORIES_BUNDLE_PRICE / max( 1, (int) STYLE_ACCESSORIES_BUNDLE_THEME_COUNT ); 882 ?> 883 <div class="expert-popup" role="dialog" aria-modal="false" aria-labelledby="expert-popup-title" data-due="<?php echo $style_accessories_due ? '1' : '0'; ?>" hidden> 884 <button type="button" class="expert-popup__close" data-action="popup-close" aria-label="<?php esc_attr_e( 'Close', 'style-accessories' ); ?>"> 885 <span class="dashicons dashicons-no-alt" aria-hidden="true"></span> 886 </button> 887 <div class="expert-popup__head"> 888 <p class="expert-eyebrow"><?php esc_html_e( 'Premium templates', 'style-accessories' ); ?></p> 889 <h2 id="expert-popup-title"> 890 <?php 891 /* translators: %s: Theme name. */ 892 printf( esc_html__( 'Unlock every %s template', 'style-accessories' ), esc_html( $this->style_accessories_theme_title ) ); 893 ?> 894 </h2> 895 <p><?php esc_html_e( 'Your site runs the free templates. Get the premium ones with Pro, or every theme with the bundle.', 'style-accessories' ); ?></p> 896 </div> 897 898 <div class="expert-popup__offer is-featured"> 899 <div class="expert-popup__row"> 900 <strong> 901 <?php 902 /* translators: %s: Theme name. */ 903 printf( esc_html__( '%s Pro', 'style-accessories' ), esc_html( $this->style_accessories_theme_title ) ); 904 ?> 905 </strong> 906 <strong><?php echo esc_html( $this->format_price( STYLE_ACCESSORIES_PRO_PRICE ) ); ?></strong> 907 </div> 908 <p class="expert-popup__feat"><span class="dashicons dashicons-yes" aria-hidden="true"></span><?php esc_html_e( '15+ sections, colors & fonts, expert support', 'style-accessories' ); ?></p> 909 <div class="expert-popup__row"> 910 <span class="expert-popup__deal"> 911 <?php 912 /* translators: %d: Discount percentage. */ 913 printf( esc_html__( '%d%% off with code', 'style-accessories' ), (int) STYLE_ACCESSORIES_COUPON_PERCENT ); 914 ?> 915 </span> 916 <?php $this->render_coupon( 'sm' ); ?> 917 </div> 918 <a class="expert-btn expert-btn--primary expert-btn--sm expert-btn--block" href="<?php echo esc_url( STYLE_ACCESSORIES_PRO_THEME_URL ); ?>" target="_blank" rel="noopener"><span class="dashicons dashicons-unlock" aria-hidden="true"></span><?php esc_html_e( 'Upgrade to Pro', 'style-accessories' ); ?></a> 919 </div> 920 921 <div class="expert-popup__offer"> 922 <div class="expert-popup__row"> 923 <strong><?php esc_html_e( 'Theme Bundle', 'style-accessories' ); ?> <span class="expert-badge"><?php esc_html_e( 'Best value', 'style-accessories' ); ?></span></strong> 924 <strong><?php echo esc_html( $this->format_price( STYLE_ACCESSORIES_BUNDLE_PRICE ) ); ?></strong> 925 </div> 926 <p class="expert-popup__feat"> 927 <span class="dashicons dashicons-yes" aria-hidden="true"></span> 928 <?php 929 /* translators: 1: Number of themes, 2: Price per theme. */ 930 printf( esc_html__( '%1$s premium themes · about %2$s each', 'style-accessories' ), esc_html( STYLE_ACCESSORIES_BUNDLE_THEME_COUNT . '+' ), esc_html( $this->format_price( $style_accessories_per_theme ) ) ); 931 ?> 520 932 </p> 933 <div class="expert-popup__row"> 934 <span class="expert-popup__deal"> 935 <?php 936 /* translators: %d: Discount percentage. */ 937 printf( esc_html__( '%d%% off with code', 'style-accessories' ), (int) STYLE_ACCESSORIES_BUNDLE_COUPON_PERCENT ); 938 ?> 939 </span> 940 <?php $this->render_coupon( 'sm', STYLE_ACCESSORIES_BUNDLE_COUPON_CODE ); ?> 941 </div> 942 <a class="expert-btn expert-btn--ghost expert-btn--sm expert-btn--block" href="<?php echo esc_url( STYLE_ACCESSORIES_THEME_BUNDLE_URL ); ?>" target="_blank" rel="noopener"><span class="dashicons dashicons-cart" aria-hidden="true"></span><?php esc_html_e( 'Get the bundle', 'style-accessories' ); ?></a> 943 </div> 944 945 <div class="expert-popup__foot"> 946 <span><?php esc_html_e( 'One-time payment', 'style-accessories' ); ?></span> 947 <button type="button" class="expert-link expert-link--muted" data-action="popup-close"><span class="dashicons dashicons-clock" aria-hidden="true"></span><?php esc_html_e( 'Remind me later', 'style-accessories' ); ?></button> 521 948 </div> 522 949 </div> 523 <?php } 524 525 /** 526 * Get the content for the plugins step 527 * @return $content Array 528 */ 529 public function get_step_plugins() { 530 $plugins = $this->get_plugins(); 531 $content = array(); ?> 532 <div class="summary"> 533 <p> 534 <?php esc_html_e('Additional plugins always make your website exceptional. Install these plugins by clicking the install button. You may also deactivate them from the dashboard.','style-accessories') ?> 535 </p> 536 </div> 537 <?php // The detail element is initially hidden from the user 538 $content['detail'] = '<ul class="whizzie-do-plugins">'; 539 // Add each plugin into a list 540 foreach( $plugins['all'] as $slug=>$plugin ) { 541 542 if ( $slug != 'yith-woocommerce-wishlist' ) { 543 $content['detail'] .= '<li data-slug="' . esc_attr( $slug ) . '">' . esc_html( $plugin['name'] ) . '<span>'; 544 $keys = array(); 545 if ( isset( $plugins['install'][ $slug ] ) ) { 546 $keys[] = 'Installation'; 547 } 548 if ( isset( $plugins['update'][ $slug ] ) ) { 549 $keys[] = 'Update'; 550 } 551 if ( isset( $plugins['activate'][ $slug ] ) ) { 552 $keys[] = 'Activation'; 553 } 554 $content['detail'] .= implode( ' and ', $keys ) . ' required'; 555 $content['detail'] .= '</span></li>'; 556 } 557 } 558 $content['detail'] .= '</ul>'; 559 560 return $content; 561 } 562 563 /** 564 * Print the content for the widgets step 565 * @since 1.1.0 566 */ 567 public function get_step_widgets() { ?> 568 <div class="summary"> 569 <p> 570 <?php esc_html_e('This theme supports importing the demo content and adding widgets. Get them installed with the below button. Using the Customizer, it is possible to update or even deactivate them.','style-accessories'); ?> 571 </p> 572 </div> 573 <?php } 574 575 /** 576 * Print the content for the final step 577 */ 578 public function get_step_done() { ?> 579 <div id="style-accessories-demo-setup-guid"> 580 <div class="customize_div"><?php echo esc_html( 'Now Customize your website' ); ?> 581 <a target="_blank" href="<?php echo esc_url( admin_url( 'customize.php' ) ); ?>" class="customize_link"> 582 <?php echo esc_html( 'Customize ' ); ?> 583 <span class="dashicons dashicons-share-alt2"></span> 584 </a> 585 </div> 586 <div class="style-accessories-setup-finish"> 587 <a href="<?php echo esc_url( admin_url() ); ?>" class="button button-primary"> 588 <?php esc_html_e( 'Go To Dashboard', 'style-accessories' ); ?> 589 </a> 590 <a target="_blank" href="<?php echo esc_url( get_home_url() ); ?>" class="button button-primary"> 591 <?php esc_html_e( 'Preview Site', 'style-accessories' ); ?> 592 </a> 593 </div> 594 </div> 595 <?php } 596 950 <?php 951 } 952 953 /** 954 * Highlighted coupon code with a copy button. 955 * 956 * @param string $style_accessories_size Optional size modifier, e.g. "sm". 957 * @param string $style_accessories_code Coupon code; defaults to the Pro coupon. 958 */ 959 protected function render_coupon( $style_accessories_size = '', $style_accessories_code = STYLE_ACCESSORIES_COUPON_CODE ) { 960 $style_accessories_class = 'expert-coupon' . ( $style_accessories_size ? ' expert-coupon--' . $style_accessories_size : '' ); 961 ?> 962 <span class="<?php echo esc_attr( $style_accessories_class ); ?>"> 963 <span class="expert-coupon__icon dashicons dashicons-tag" aria-hidden="true"></span> 964 <code class="expert-coupon__code"><?php echo esc_html( $style_accessories_code ); ?></code> 965 <button type="button" class="expert-coupon__copy" data-action="copy" data-copy="<?php echo esc_attr( $style_accessories_code ); ?>"> 966 <span class="dashicons dashicons-admin-page" aria-hidden="true"></span> 967 <span class="expert-coupon__label"><?php esc_html_e( 'Copy', 'style-accessories' ); ?></span> 968 </button> 969 </span> 970 <?php 971 } 972 973 /** 974 * Print a check-mark list. 975 * 976 * @param array $style_accessories_items Plain-text items. 977 */ 978 protected function render_list( $style_accessories_items ) { 979 echo '<ul class="expert-list">'; 980 foreach ( $style_accessories_items as $style_accessories_item ) { 981 echo '<li><span class="dashicons dashicons-yes" aria-hidden="true"></span>' . esc_html( $style_accessories_item ) . '</li>'; 982 } 983 echo '</ul>'; 984 } 985 986 /** 987 * Format a USD price, dropping ".00". 988 * 989 * @param float $style_accessories_amount Price. 990 * @return string 991 */ 992 protected function format_price( $style_accessories_amount ) { 993 $style_accessories_amount = (float) $style_accessories_amount; 994 $style_accessories_places = ( floor( $style_accessories_amount ) == $style_accessories_amount ) ? 0 : 2; 995 return '$' . number_format_i18n( $style_accessories_amount, $style_accessories_places ); 996 } 997 998 /** 999 * Every plugin registered with TGMPA, with its status. 1000 * 1001 * @return array 1002 */ 1003 protected function get_plugin_rows() { 1004 $style_accessories_rows = array(); 1005 $style_accessories_instance = call_user_func( array( get_class( $GLOBALS['tgmpa'] ), 'get_instance' ) ); 1006 foreach ( $style_accessories_instance->plugins as $style_accessories_slug => $style_accessories_plugin ) { 1007 $style_accessories_rows[ $style_accessories_slug ] = array( 1008 'name' => $style_accessories_plugin['name'], 1009 'description' => isset( $style_accessories_plugin['description'] ) ? $style_accessories_plugin['description'] : '', 1010 'required' => ! empty( $style_accessories_plugin['required'] ), 1011 'active' => $style_accessories_instance->is_plugin_active( $style_accessories_slug ), 1012 ); 1013 } 1014 // WooCommerce goes first: shop plugins can only be activated once it is active. 1015 if ( isset( $style_accessories_rows['woocommerce'] ) ) { 1016 $style_accessories_rows = array( 'woocommerce' => $style_accessories_rows['woocommerce'] ) + $style_accessories_rows; 1017 } 1018 return $style_accessories_rows; 1019 } 597 1020 598 1021 /** … … 600 1023 */ 601 1024 public function get_plugins() { 602 $ instance = call_user_func( array( get_class( $GLOBALS['tgmpa'] ), 'get_instance' ) );603 $ plugins = array(1025 $style_accessories_instance = call_user_func( array( get_class( $GLOBALS['tgmpa'] ), 'get_instance' ) ); 1026 $style_accessories_plugins = array( 604 1027 'all' => array(), 605 1028 'install' => array(), … … 607 1030 'activate' => array() 608 1031 ); 609 foreach( $ instance->plugins as $slug=>$plugin ) {610 if( $ instance->is_plugin_active( $slug ) && false === $instance->does_plugin_have_update( $slug ) ) {1032 foreach( $style_accessories_instance->plugins as $style_accessories_slug=>$style_accessories_plugin ) { 1033 if( $style_accessories_instance->is_plugin_active( $style_accessories_slug ) && false === $style_accessories_instance->does_plugin_have_update( $style_accessories_slug ) ) { 611 1034 // Plugin is installed and up to date 612 1035 continue; 613 1036 } else { 614 $ plugins['all'][$slug] = $plugin;615 if( ! $ instance->is_plugin_installed( $slug ) ) {616 $ plugins['install'][$slug] = $plugin;1037 $style_accessories_plugins['all'][$style_accessories_slug] = $style_accessories_plugin; 1038 if( ! $style_accessories_instance->is_plugin_installed( $style_accessories_slug ) ) { 1039 $style_accessories_plugins['install'][$style_accessories_slug] = $style_accessories_plugin; 617 1040 } else { 618 if( false !== $ instance->does_plugin_have_update( $slug ) ) {619 $ plugins['update'][$slug] = $plugin;1041 if( false !== $style_accessories_instance->does_plugin_have_update( $style_accessories_slug ) ) { 1042 $style_accessories_plugins['update'][$style_accessories_slug] = $style_accessories_plugin; 620 1043 } 621 if( $ instance->can_plugin_activate( $slug ) ) {622 $ plugins['activate'][$slug] = $plugin;1044 if( $style_accessories_instance->can_plugin_activate( $style_accessories_slug ) ) { 1045 $style_accessories_plugins['activate'][$style_accessories_slug] = $style_accessories_plugin; 623 1046 } 624 1047 } 625 1048 } 626 1049 } 627 return $plugins; 628 } 629 630 /** 631 * Get the widgets.wie file from the /content folder 632 * @return Mixed Either the file or false 633 * @since 1.1.0 634 */ 635 public function has_widget_file() { 636 if( file_exists( $this->widget_file_url ) ) { 637 return true; 638 } 639 return false; 640 } 641 1050 return $style_accessories_plugins; 1051 } 1052 642 1053 public function setup_plugins() { 643 if ( ! check_ajax_referer( 'whizzie_nonce', 'wpnonce' ) || empty( $_POST['slug'] ) ) {1054 if ( ! check_ajax_referer( 'whizzie_nonce', 'wpnonce', false ) || empty( $_POST['slug'] ) ) { 644 1055 wp_send_json_error( array( 'error' => 1, 'message' => esc_html__( 'No Slug Found','style-accessories' ) ) ); 645 1056 } 646 $json = array(); 1057 if ( ! current_user_can( 'install_plugins' ) || ! current_user_can( 'activate_plugins' ) ) { 1058 wp_send_json_error( array( 'error' => 1, 'message' => esc_html__( 'You are not allowed to install plugins.','style-accessories' ) ) ); 1059 } 1060 $style_accessories_slug = sanitize_key( wp_unslash( $_POST['slug'] ) ); 1061 $style_accessories_json = array(); 647 1062 // send back some json we use to hit up TGM 648 $ plugins = $this->get_plugins();649 1063 $style_accessories_plugins = $this->get_plugins(); 1064 650 1065 // what are we doing with this plugin? 651 foreach ( $ plugins['activate'] as $slug => $plugin ) {652 if ( $ _POST['slug'] == $slug ) {653 $ json = array(1066 foreach ( $style_accessories_plugins['activate'] as $style_accessories_plugin_slug => $style_accessories_plugin ) { 1067 if ( $style_accessories_slug === $style_accessories_plugin_slug ) { 1068 $style_accessories_json = array( 654 1069 'url' => admin_url( $this->tgmpa_url ), 655 'plugin' => array( $s lug ),1070 'plugin' => array( $style_accessories_plugin_slug ), 656 1071 'tgmpa-page' => $this->tgmpa_menu_slug, 657 1072 'plugin_status' => 'all', … … 659 1074 'action' => 'tgmpa-bulk-activate', 660 1075 'action2' => - 1, 661 'message' => esc_html__( 'Activating Plugin','style-accessories' ),1076 'message' => esc_html__( 'Activating…','style-accessories' ), 662 1077 ); 663 1078 break; 664 1079 } 665 1080 } 666 foreach ( $ plugins['update'] as $slug => $plugin ) {667 if ( $ _POST['slug'] == $slug ) {668 $ json = array(1081 foreach ( $style_accessories_plugins['update'] as $style_accessories_plugin_slug => $style_accessories_plugin ) { 1082 if ( $style_accessories_slug === $style_accessories_plugin_slug ) { 1083 $style_accessories_json = array( 669 1084 'url' => admin_url( $this->tgmpa_url ), 670 'plugin' => array( $s lug ),1085 'plugin' => array( $style_accessories_plugin_slug ), 671 1086 'tgmpa-page' => $this->tgmpa_menu_slug, 672 1087 'plugin_status' => 'all', … … 674 1089 'action' => 'tgmpa-bulk-update', 675 1090 'action2' => - 1, 676 'message' => esc_html__( 'Updating Plugin','style-accessories' ),1091 'message' => esc_html__( 'Updating…','style-accessories' ), 677 1092 ); 678 1093 break; 679 1094 } 680 1095 } 681 foreach ( $ plugins['install'] as $slug => $plugin ) {682 if ( $ _POST['slug'] == $slug ) {683 $ json = array(1096 foreach ( $style_accessories_plugins['install'] as $style_accessories_plugin_slug => $style_accessories_plugin ) { 1097 if ( $style_accessories_slug === $style_accessories_plugin_slug ) { 1098 $style_accessories_json = array( 684 1099 'url' => admin_url( $this->tgmpa_url ), 685 'plugin' => array( $s lug ),1100 'plugin' => array( $style_accessories_plugin_slug ), 686 1101 'tgmpa-page' => $this->tgmpa_menu_slug, 687 1102 'plugin_status' => 'all', … … 689 1104 'action' => 'tgmpa-bulk-install', 690 1105 'action2' => - 1, 691 'message' => esc_html__( 'Installing Plugin','style-accessories' ),1106 'message' => esc_html__( 'Installing…','style-accessories' ), 692 1107 ); 693 1108 break; 694 1109 } 695 1110 } 696 if ( $ json ) {697 $ json['hash'] = md5( serialize( $json ) ); // used for checking if duplicates happen, move to next plugin698 wp_send_json( $ json );1111 if ( $style_accessories_json ) { 1112 $style_accessories_json['hash'] = md5( serialize( $style_accessories_json ) ); // used for checking if duplicates happen, move to next plugin 1113 wp_send_json( $style_accessories_json ); 699 1114 } else { 700 wp_send_json( array( 'done' => 1, 'message' => esc_html__( 'Success','style-accessories' ) ) ); 701 } 702 exit; 703 } 704 705 706 /** 707 * Imports the Demo Content 708 * @since 1.1.0 709 */ 710 public function setup_widgets(){ 711 712 713 exit; 1115 wp_send_json( array( 'done' => 1, 'message' => esc_html__( 'Active','style-accessories' ) ) ); 1116 } 1117 } 1118 1119 /** 1120 * Save the step the user reached so a reload resumes there. 1121 */ 1122 public function save_progress() { 1123 check_ajax_referer( 'style_accessories_getting_started', 'nonce' ); 1124 if ( ! current_user_can( 'edit_theme_options' ) ) { 1125 wp_send_json_error( null, 403 ); 1126 } 1127 $style_accessories_step = isset( $_POST['step'] ) ? sanitize_key( wp_unslash( $_POST['step'] ) ) : ''; 1128 $style_accessories_allowed = array_merge( array_keys( $this->get_steps() ), array( 'done' ) ); 1129 if ( ! in_array( $style_accessories_step, $style_accessories_allowed, true ) ) { 1130 wp_send_json_error( null, 400 ); 1131 } 1132 update_option( 'style_accessories_setup_step', $style_accessories_step, false ); 1133 wp_send_json_success( array( 'step' => $style_accessories_step ) ); 1134 } 1135 1136 /** 1137 * The popup was shown: wait STYLE_ACCESSORIES_POPUP_INTERVAL before showing it again. 1138 */ 1139 public function popup_seen() { 1140 check_ajax_referer( 'style_accessories_getting_started', 'nonce' ); 1141 if ( ! current_user_can( 'edit_theme_options' ) ) { 1142 wp_send_json_error( null, 403 ); 1143 } 1144 update_option( 'style_accessories_popup_next_show', time() + (int) STYLE_ACCESSORIES_POPUP_INTERVAL, false ); 1145 wp_send_json_success(); 1146 } 1147 1148 /** 1149 * Import the demo products (AJAX). 1150 */ 1151 public function setup_widgets() { 1152 check_ajax_referer( 'style_accessories_getting_started', 'nonce' ); 1153 if ( ! current_user_can( 'edit_theme_options' ) || ! current_user_can( 'upload_files' ) ) { 1154 wp_send_json_error( null, 403 ); 1155 } 1156 if ( ! class_exists( 'WC_Product_Simple' ) || ! taxonomy_exists( 'product_cat' ) ) { 1157 wp_send_json_error( array( 'message' => __( 'Please install and activate WooCommerce in step 1, then import the products.', 'style-accessories' ) ) ); 1158 } 1159 1160 // Importing images can take a while; keep stray output out of the JSON reply. 1161 if ( function_exists( 'set_time_limit' ) ) { 1162 @set_time_limit( 300 ); 1163 } 1164 ob_start(); 1165 require_once ABSPATH . 'wp-admin/includes/image.php'; 1166 1167 try { 1168 foreach ( $this->get_demo_products() as $style_accessories_category => $style_accessories_products ) { 1169 $style_accessories_term = term_exists( $style_accessories_category, 'product_cat' ); 1170 if ( ! $style_accessories_term ) { 1171 $style_accessories_term = wp_insert_term( $style_accessories_category, 'product_cat' ); 1172 } 1173 $style_accessories_term_id = is_wp_error( $style_accessories_term ) ? 0 : (int) $style_accessories_term['term_id']; 1174 1175 foreach ( $style_accessories_products as $style_accessories_item ) { 1176 $style_accessories_existing = get_posts( 1177 array( 1178 'post_type' => 'product', 1179 'post_status' => 'any', 1180 'title' => $style_accessories_item['title'], 1181 'numberposts' => 1, 1182 'fields' => 'ids', 1183 ) 1184 ); 1185 if ( $style_accessories_existing ) { 1186 continue; 1187 } 1188 1189 $style_accessories_product = new WC_Product_Simple(); 1190 $style_accessories_product->set_name( $style_accessories_item['title'] ); 1191 $style_accessories_product->set_status( 'publish' ); 1192 $style_accessories_product->set_short_description( __( 'A sample product added by the demo import. Replace it with your own.', 'style-accessories' ) ); 1193 $style_accessories_product->set_regular_price( $style_accessories_item['regular'] ); 1194 $style_accessories_product->set_sale_price( $style_accessories_item['sale'] ); 1195 if ( $style_accessories_term_id ) { 1196 $style_accessories_product->set_category_ids( array( $style_accessories_term_id ) ); 1197 } 1198 $style_accessories_image_id = $this->import_image( $style_accessories_item['image'] ); 1199 if ( $style_accessories_image_id ) { 1200 $style_accessories_product->set_image_id( $style_accessories_image_id ); 1201 } 1202 $style_accessories_product->save(); 1203 } 1204 } 1205 } catch ( Throwable $style_accessories_error ) { 1206 ob_end_clean(); 1207 wp_send_json_error( array( 'message' => $style_accessories_error->getMessage() ) ); 1208 } 1209 1210 update_option( 'style_accessories_demo_imported', true, false ); 1211 ob_end_clean(); 1212 wp_send_json_success(); 1213 } 1214 1215 /** 1216 * Copy an image from the theme's images folder into the media library. 1217 * 1218 * @param string $style_accessories_file File name inside /images. 1219 * @return int Attachment ID, or 0 on failure. 1220 */ 1221 protected function import_image( $style_accessories_file ) { 1222 $style_accessories_path = get_template_directory() . '/images/' . $style_accessories_file; 1223 if ( ! file_exists( $style_accessories_path ) ) { 1224 return 0; 1225 } 1226 $style_accessories_upload = wp_upload_bits( $style_accessories_file, null, file_get_contents( $style_accessories_path ) ); 1227 if ( ! empty( $style_accessories_upload['error'] ) ) { 1228 return 0; 1229 } 1230 $style_accessories_type = wp_check_filetype( $style_accessories_upload['file'] ); 1231 $style_accessories_id = wp_insert_attachment( 1232 array( 1233 'post_mime_type' => $style_accessories_type['type'], 1234 'post_title' => sanitize_file_name( pathinfo( $style_accessories_file, PATHINFO_FILENAME ) ), 1235 'post_status' => 'inherit', 1236 ), 1237 $style_accessories_upload['file'] 1238 ); 1239 if ( ! $style_accessories_id || is_wp_error( $style_accessories_id ) ) { 1240 return 0; 1241 } 1242 wp_update_attachment_metadata( $style_accessories_id, wp_generate_attachment_metadata( $style_accessories_id, $style_accessories_upload['file'] ) ); 1243 return (int) $style_accessories_id; 1244 } 1245 1246 /** 1247 * Demo products grouped by category. 1248 * 1249 * @return array 1250 */ 1251 protected function get_demo_products() { 1252 return array( 1253 'Bridal' => array( 1254 array( 'title' => 'Gold Bridal Set', 'image' => 'bridal1.png', 'regular' => '120', 'sale' => '99' ), 1255 array( 'title' => 'Kundan Bridal Set', 'image' => 'bridal2.png', 'regular' => '140', 'sale' => '115' ), 1256 array( 'title' => 'Pearl Bridal Set', 'image' => 'bridal3.png', 'regular' => '110', 'sale' => '89' ), 1257 array( 'title' => 'Diamond Bridal Set', 'image' => 'bridal4.png', 'regular' => '180', 'sale' => '149' ), 1258 ), 1259 'Earrings' => array( 1260 array( 'title' => 'Gold Drop Earrings', 'image' => 'earings1.png', 'regular' => '40', 'sale' => '32' ), 1261 array( 'title' => 'Pearl Stud Earrings', 'image' => 'earings2.png', 'regular' => '30', 'sale' => '24' ), 1262 array( 'title' => 'Crystal Hoop Earrings', 'image' => 'earings3.png', 'regular' => '35', 'sale' => '28' ), 1263 array( 'title' => 'Silver Jhumka Earrings', 'image' => 'earings4.png', 'regular' => '45', 'sale' => '36' ), 1264 ), 1265 'Necklaces' => array( 1266 array( 'title' => 'Gold Chain Necklace', 'image' => 'neckless1.png', 'regular' => '90', 'sale' => '75' ), 1267 array( 'title' => 'Pearl Necklace', 'image' => 'neckless2.png', 'regular' => '80', 'sale' => '65' ), 1268 array( 'title' => 'Diamond Pendant Necklace', 'image' => 'neckless3.png', 'regular' => '150', 'sale' => '125' ), 1269 array( 'title' => 'Choker Necklace', 'image' => 'neckless4.png', 'regular' => '70', 'sale' => '58' ), 1270 ), 1271 'Rings' => array( 1272 array( 'title' => 'Solitaire Ring', 'image' => 'ring1.png', 'regular' => '95', 'sale' => '79' ), 1273 array( 'title' => 'Gold Band Ring', 'image' => 'ring2.png', 'regular' => '60', 'sale' => '49' ), 1274 array( 'title' => 'Ruby Ring', 'image' => 'ring3.png', 'regular' => '85', 'sale' => '69' ), 1275 array( 'title' => 'Twisted Silver Ring', 'image' => 'ring4.png', 'regular' => '40', 'sale' => '32' ), 1276 ), 1277 ); 714 1278 } 715 1279 } -
style-accessories/1.2.9/inc/get-started/demo-import-settings.php
r326799 r356251 1 1 <?php 2 2 /** 3 * Settings for demo import3 * Settings for the Getting Started wizard 4 4 * 5 5 */ … … 13 13 // Load the Whizzie class and other dependencies 14 14 require trailingslashit( WHIZZIE_DIR ) . 'demo-import-contents.php'; 15 // Gets the theme object16 $style_accessories_current_theme = wp_get_theme();17 $style_accessories_theme_title = $style_accessories_current_theme->get( 'Name' );18 19 15 20 16 /** … … 22 18 **/ 23 19 24 // Change the title and slug of your wizard page 25 $config['style_accessories_page_slug'] = 'style-accessories'; 26 $config['style_accessories_page_title'] = 'Theme Information'; 20 // Change the title of your wizard page 21 $style_accessories_config['style_accessories_page_title'] = __( 'Getting Started', 'style-accessories' ); 27 22 28 23 // You can remove elements here as required 29 24 // Don't rename the IDs - nothing will break but your changes won't get carried through 30 $config['steps'] = array( 31 'intro' => array( 32 'id' => 'intro', // ID for section - don't rename 33 'title' => __( 'Welcome to ', 'style-accessories' ) . $style_accessories_theme_title, // Section title 34 'icon' => 'dashboard', // Uses Dashicons 35 'button_text' => __( 'Start Now', 'style-accessories' ), // Button text 36 'can_skip' => false // Show a skip button? 25 $style_accessories_config['steps'] = array( 26 'plugins' => array( 27 'id' => 'plugins', 28 'title' => __( 'Install plugins', 'style-accessories' ), 29 'duration' => __( 'About 1 min', 'style-accessories' ), 37 30 ), 38 'plugins' => array( 39 'id' => 'plugins', 40 'title' => __( 'Plugins', 'style-accessories' ), 41 'icon' => 'admin-plugins', 42 'button_text' => __( 'Install Plugins', 'style-accessories' ), 43 'can_skip' => true 31 'import' => array( 32 'id' => 'import', 33 'title' => __( 'Import products', 'style-accessories' ), 34 'duration' => __( 'About 1 min', 'style-accessories' ), 44 35 ), 45 'widgets' => array( 46 'id' => 'widgets', 47 'title' => __( 'Demo Importer', 'style-accessories' ), 48 'icon' => 'welcome-widgets-menus', 49 'button_text' => __( 'Import Demo Content', 'style-accessories' ), 50 'can_skip' => true 36 'customize' => array( 37 'id' => 'customize', 38 'title' => __( 'Customize & launch', 'style-accessories' ), 39 'duration' => __( 'About 2 min', 'style-accessories' ), 51 40 ), 52 'done' => array(53 'id' => 'done',54 'title' => __( 'All Done', 'style-accessories' ),55 'icon' => 'yes',56 )57 41 ); 58 42 … … 60 44 * This kicks off the wizard 61 45 **/ 62 if ( class_exists( 'Whizzie' ) ) {63 $ Whizzie = new Whizzie( $config );46 if ( class_exists( 'Whizzie' ) ) { 47 $style_accessories_Whizzie = new Whizzie( $style_accessories_config ); 64 48 } -
style-accessories/1.2.9/inc/get-started/tgm/tgm.php
r326799 r356251 1 1 <?php 2 2 3 require get_template_directory() . '/inc/get-started/tgm/class-tgm-plugin-activation.php';3 require_once get_template_directory() . '/inc/get-started/tgm/class-tgm-plugin-activation.php'; 4 4 /** 5 5 * Recommended plugins. 6 6 */ 7 7 function style_accessories_register_recommended_plugins() { 8 $ plugins = array(8 $style_accessories_plugins = array( 9 9 array( 10 'name' => __( 'FAQly – Ultimate FAQ', 'style-accessories' ), 11 'slug' => 'faqly-ultimate-faq', 10 'name' => __( 'WooCommerce', 'style-accessories' ), 11 'slug' => 'woocommerce', 12 'description' => __( 'Runs the shop, cart and checkout.', 'style-accessories' ), 12 13 'required' => false, 13 14 'force_activation' => false, 14 15 ), 15 16 array( 16 'name' => __( 'WooCommerce', 'style-accessories' ), 17 'slug' => 'woocommerce', 17 'name' => __( 'FAQly – Ultimate FAQ', 'style-accessories' ), 18 'slug' => 'faqly-ultimate-faq', 19 'description' => __( 'Adds ready-made FAQ blocks for common customer questions.', 'style-accessories' ), 18 20 'required' => false, 19 21 'force_activation' => false, … … 22 24 'name' => __( 'YITH WooCommerce Wishlist', 'style-accessories' ), 23 25 'slug' => 'yith-woocommerce-wishlist', 26 'description' => __( 'Lets shoppers save products to a wishlist.', 'style-accessories' ), 24 27 'required' => false, 25 28 'force_activation' => false, 26 29 ), 27 30 ); 28 $ config = array();29 tgmpa( $ plugins, $config );31 $style_accessories_config = array(); 32 tgmpa( $style_accessories_plugins, $style_accessories_config ); 30 33 } 31 34 add_action( 'tgmpa_register', 'style_accessories_register_recommended_plugins' ); -
style-accessories/1.2.9/languages/style-accessories.pot
r353396 r356251 4 4 msgstr "" 5 5 "Project-Id-Version: Style Accessories 1.3\n" 6 "Report-Msgid-Bugs-To: https:// wordpress.org/support/theme/style-accessories\n"6 "Report-Msgid-Bugs-To: https://WordPress.org/support/theme/style-accessories\n" 7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 8 8 "Language-Team: LANGUAGE <LL@li.org>\n" -
style-accessories/1.2.9/readme.txt
r353396 r356251 62 62 = 1.2.8 = 63 63 * Improved Theme Performance. 64 65 = 1.2.9 = 66 * Improved Theme Structure. 64 67 == Copyright == 65 68 66 * Based on Twenty Twenty-Two WordPress Theme, (C) 2021 wordpress.org. Twenty Twenty-Two is distributed under the terms of the GNU GPL.69 * Based on Twenty Twenty-Two WordPress Theme, (C) 2021 WordPress.org. Twenty Twenty-Two is distributed under the terms of the GNU GPL. 67 70 * normalize.css https://necolas.github.io/normalize.css/, (C) 2012-2018 Nicolas Gallagher and Jonathan Neal, [MIT](https://opensource.org/licenses/MIT) 68 71 … … 241 244 License: CC0 1.0 Universal (CC0 1.0) 242 245 License URI: https://creativecommons.org/publicdomain/zero/1.0/ 243 Stable tag: 1.2. 8246 Stable tag: 1.2.9 -
style-accessories/1.2.9/style.css
r353396 r356251 6 6 Author URI: https://www.seothemesexpert.com/ 7 7 Description: Style Accessories is a clean and thoughtfully designed theme tailored for fashion accessory websites, boutiques, and lifestyle-focused collections. It showcases a balanced layout that prominently features items like handbags, jewelry, watches, sunglasses, belts, and scarves while ensuring a minimal and organized structure. The design seamlessly adapts across various screen sizes, providing a consistent browsing experience on desktops, tablets, and mobile devices. With flexible layout options and straightforward customization settings, it supports a clear visual hierarchy to effectively organize content. Emphasizing readability, performance, and accessibility, the theme offers a smooth and distraction-free experience for visitors. Style Accessories prioritizes simplicity and clarity, making it ideal for presenting curated collections of trendy fashion and luxury accessories while maintaining a refined, modern aesthetic. 8 Version: 1.2. 88 Version: 1.2.9 9 9 Requires at least: 5.9 10 10 Tested up to: 7.1 … … 18 18 Use it to make something cool, have fun, and share what you've learned. 19 19 20 Style Accessories is based on Twenty Twenty-Two WordPress Theme, (C) 2021 wordpress.org20 Style Accessories is based on Twenty Twenty-Two WordPress Theme, (C) 2021 WordPress.org 21 21 Twenty Twenty-Two is distributed under the terms of the GNU GPL. 22 22
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)