Version Description
Download this release
Release Info
Developer | bmarshall511 |
Plugin | WordPress Zero Spam |
Version | 5.4.0 |
Comparing to | |
See all releases |
Code changes from version 5.3.9 to 5.4.0
- assets/blacklist.txt +2467 -237
- assets/css/admin.css +618 -244
- assets/css/admin.css.map +1 -0
- assets/img/icon-blocked.svg +30 -0
- assets/img/icon-bug.svg +86 -0
- assets/img/icon-edit.svg +9 -0
- assets/img/icon-email.svg +49 -0
- assets/img/icon-error.svg +56 -0
- assets/img/icon-export.svg +3 -0
- assets/img/icon-google.svg +1 -0
- assets/img/icon-honeypot.svg +1 -0
- assets/img/icon-info.svg +11 -0
- assets/img/icon-ipinfo.svg +9 -0
- assets/img/icon-ipstack.svg +23 -0
- assets/img/icon-location.svg +1 -0
- assets/img/icon-log.svg +60 -0
- assets/img/icon-reports.svg +45 -0
- assets/img/icon-settings.svg +1 -0
- assets/img/icon-stop-forum-spam.png +0 -0
- assets/img/icon-success.svg +9 -0
- assets/img/icon-trash.svg +12 -0
- assets/img/icon-words.svg +59 -0
- assets/img/icon-x.svg +11 -0
- assets/img/icon.svg +1 -1
- assets/img/logo-flat.svg +21 -0
- assets/img/text-zero-spam.svg +34 -0
- assets/js/admin.js +85 -101
- assets/src/scss/admin.scss +930 -0
- core/admin/class-admin.php +6 -6
- core/admin/class-dashboard.php +178 -221
- core/admin/class-settings.php +351 -167
- core/admin/tables/class-blockedlocations.php +13 -4
- core/admin/tables/class-blockedtable.php +14 -8
- core/admin/tables/class-logtable.php +15 -7
- core/class-access.php +7 -4
- core/class-settings.php +84 -32
- core/class-utilities.php +29 -9
- includes/class-db.php +2 -2
- includes/class-plugin.php +11 -0
- includes/class-updates.php +54 -0
- includes/templates/admin-block-ip.php +64 -59
- includes/templates/admin-callout.php +0 -130
- includes/templates/admin-header.php +100 -0
- includes/templates/admin-ips.php +10 -9
- includes/templates/admin-modal-details.php +38 -40
- includes/templates/settings/errors.php +0 -21
- includes/templates/settings/export.php +0 -56
- includes/templates/settings/settings.php +0 -22
- modules/class-debug.php +10 -6
- modules/class-google.php +7 -4
- modules/class-ipinfomodule.php +10 -6
- modules/class-ipstack.php +15 -4
- modules/class-projecthoneypot.php +12 -9
- modules/class-security.php +30 -0
- modules/class-stopforumspam.php +10 -4
- modules/class-zerospam.php +26 -145
- modules/comments/class-comments.php +39 -13
- modules/contactform7/class-contactform7.php +30 -13
- {assets/img → modules/contactform7}/icon-cf7.png +0 -0
- modules/davidwalsh/assets/js/davidwalsh.js +2 -2
- modules/davidwalsh/class-davidwalsh.php +9 -9
- modules/davidwalsh/icon-david-walsh.png +0 -0
- modules/fluentforms/class-fluentforms.php +21 -14
- modules/fluentforms/icon-fluent-forms.svg +18 -0
- modules/formidable/class-formidable.php +21 -10
- modules/formidable/icon-formidable.png +0 -0
- modules/give/class-give.php +63 -11
- {assets/img → modules/give}/icon-givewp.png +0 -0
- modules/gravityforms/class-gravityforms.php +236 -0
- modules/gravityforms/icon-gravity-forms.svg +13 -0
- modules/login/class-login.php +22 -10
- modules/mailchimpforwp/class-mailchimpforwp.php +13 -4
- modules/memberpress/class-memberpress.php +18 -4
- modules/registration/class-registration.php +28 -10
- modules/woocommerce/class-woocommerce.php +31 -11
- {assets/img → modules/woocommerce}/icon-woocommerce.svg +0 -0
- modules/wpforms/class-wpforms.php +60 -13
- {assets/img → modules/wpforms}/icon-wpforms.svg +0 -0
- readme.txt +31 -10
- uninstall.php +12 -0
- wordpress-zero-spam.php +2 -2
assets/blacklist.txt
CHANGED
@@ -1,3 +1,7 @@
|
|
|
|
|
|
|
|
|
|
1 |
_abercrom
|
2 |
_adidas
|
3 |
_adsense
|
@@ -65,6 +69,7 @@ _latisse
|
|
65 |
_lesbian
|
66 |
_litecoin
|
67 |
_longchamp
|
|
|
68 |
_loubou
|
69 |
_lululemon
|
70 |
_marijuana
|
@@ -225,6 +230,9 @@ _zapat
|
|
225 |
-1.ru
|
226 |
-1.su
|
227 |
-1.za
|
|
|
|
|
|
|
228 |
-2.co
|
229 |
-2.in
|
230 |
-2.ro
|
@@ -537,6 +545,7 @@ _zapat
|
|
537 |
-coin/
|
538 |
-coins.
|
539 |
-coins/
|
|
|
540 |
-comfort-
|
541 |
-computer-recycle.
|
542 |
-computer-recycling.
|
@@ -672,6 +681,9 @@ _zapat
|
|
672 |
-femdom-
|
673 |
-femdom.
|
674 |
-femdom/
|
|
|
|
|
|
|
675 |
-filmi
|
676 |
-filmy
|
677 |
-filosov-
|
@@ -879,6 +891,8 @@ _zapat
|
|
879 |
-law-firm-
|
880 |
-law-firm.
|
881 |
-law-firm/
|
|
|
|
|
882 |
-le-pliage
|
883 |
-lesbian-
|
884 |
-lesbian.
|
@@ -1053,6 +1067,12 @@ _zapat
|
|
1053 |
-phexin-
|
1054 |
-phexin.
|
1055 |
-phexin/
|
|
|
|
|
|
|
|
|
|
|
|
|
1056 |
-picload-
|
1057 |
-picload.
|
1058 |
-picload/
|
@@ -1205,6 +1225,7 @@ _zapat
|
|
1205 |
-salvia-
|
1206 |
-scarpe-
|
1207 |
-search-engine
|
|
|
1208 |
-searchengine
|
1209 |
-secret-
|
1210 |
-secret.
|
@@ -1275,6 +1296,9 @@ _zapat
|
|
1275 |
-somehack.
|
1276 |
-somehack/
|
1277 |
-speed-up-
|
|
|
|
|
|
|
1278 |
-sport.site
|
1279 |
-store.
|
1280 |
-store/
|
@@ -1333,7 +1357,7 @@ _zapat
|
|
1333 |
-tatuagens-
|
1334 |
-tatuagens.
|
1335 |
-tatuagens/
|
1336 |
-
-tax-
|
1337 |
-tax-relief
|
1338 |
-tax-settlement
|
1339 |
-teen-in-
|
@@ -1578,6 +1602,9 @@ _zapat
|
|
1578 |
.1-pack.
|
1579 |
.1-pack/
|
1580 |
.1com
|
|
|
|
|
|
|
1581 |
.2com
|
1582 |
.2u4.us
|
1583 |
.7x.cz
|
@@ -1767,6 +1794,8 @@ _zapat
|
|
1767 |
.com illegal
|
1768 |
.com wild
|
1769 |
.com,
|
|
|
|
|
1770 |
.com/,
|
1771 |
.com/%
|
1772 |
.com/1-
|
@@ -1852,6 +1881,8 @@ _zapat
|
|
1852 |
.femdom-
|
1853 |
.femdom.
|
1854 |
.femdom/
|
|
|
|
|
1855 |
.filmi-
|
1856 |
.filmy-
|
1857 |
.filosov-
|
@@ -2117,6 +2148,12 @@ _zapat
|
|
2117 |
.phexin-
|
2118 |
.phexin.
|
2119 |
.phexin/
|
|
|
|
|
|
|
|
|
|
|
|
|
2120 |
.picload-
|
2121 |
.picload.
|
2122 |
.picload/
|
@@ -2304,6 +2341,8 @@ _zapat
|
|
2304 |
.rusex/
|
2305 |
.s.a.k
|
2306 |
.sallow.co
|
|
|
|
|
2307 |
.secret-
|
2308 |
.secrets-
|
2309 |
.selebriti-
|
@@ -2342,6 +2381,9 @@ _zapat
|
|
2342 |
.space/femme
|
2343 |
.space/free
|
2344 |
.space/homme
|
|
|
|
|
|
|
2345 |
.spruz.
|
2346 |
.stream/wiki
|
2347 |
.su,
|
@@ -2501,6 +2543,8 @@ _zapat
|
|
2501 |
.zybbs.
|
2502 |
.zzz.
|
2503 |
。com
|
|
|
|
|
2504 |
" dildo
|
2505 |
«link»
|
2506 |
«комбо»
|
@@ -2660,6 +2704,9 @@ _zapat
|
|
2660 |
/01.php
|
2661 |
/1.php
|
2662 |
/1i1.me
|
|
|
|
|
|
|
2663 |
/02.asp
|
2664 |
/2.asp
|
2665 |
/02.cfm
|
@@ -2803,6 +2850,7 @@ _zapat
|
|
2803 |
/activity-
|
2804 |
/activity.
|
2805 |
/adclick?
|
|
|
2806 |
/adclick.asp?
|
2807 |
/adclick.aspx?
|
2808 |
/adclick.cfm?
|
@@ -2909,6 +2957,7 @@ _zapat
|
|
2909 |
/avto-
|
2910 |
/avto.
|
2911 |
/away?
|
|
|
2912 |
/away.asp?
|
2913 |
/away.aspx?
|
2914 |
/away.cfm?
|
@@ -2928,6 +2977,7 @@ _zapat
|
|
2928 |
/bags/
|
2929 |
/baidu.
|
2930 |
/banner?
|
|
|
2931 |
/banner.asp?
|
2932 |
/banner.aspx?
|
2933 |
/banner.cfm?
|
@@ -2939,6 +2989,7 @@ _zapat
|
|
2939 |
/banner.php?
|
2940 |
/banner/?
|
2941 |
/banners?
|
|
|
2942 |
/banners.asp?
|
2943 |
/banners.aspx?
|
2944 |
/banners.cfm?
|
@@ -3049,6 +3100,7 @@ _zapat
|
|
3049 |
/bvlgari-
|
3050 |
/bvlgari.
|
3051 |
/bye?
|
|
|
3052 |
/bye.asp?
|
3053 |
/bye.aspx?
|
3054 |
/bye.cfm?
|
@@ -3166,16 +3218,18 @@ _zapat
|
|
3166 |
/cl-
|
3167 |
/cl.
|
3168 |
/cl/
|
3169 |
-
/clck.
|
3170 |
/cld-
|
3171 |
/cld.
|
3172 |
/clearance/
|
3173 |
/cli.re
|
|
|
3174 |
/click-
|
3175 |
/click?
|
3176 |
/click.
|
3177 |
/click/
|
3178 |
-
/clickfrm.
|
|
|
3179 |
/clit-
|
3180 |
/clit.
|
3181 |
/clk?
|
@@ -3232,6 +3286,7 @@ _zapat
|
|
3232 |
/crimea-
|
3233 |
/crwl.it
|
3234 |
/cs?
|
|
|
3235 |
/cs.asp?
|
3236 |
/cs.aspx?
|
3237 |
/cs.cfm?
|
@@ -3284,6 +3339,7 @@ _zapat
|
|
3284 |
/dieta.
|
3285 |
/dior.
|
3286 |
/director?
|
|
|
3287 |
/director.asp?
|
3288 |
/director.aspx?
|
3289 |
/director.cfm?
|
@@ -3379,6 +3435,7 @@ _zapat
|
|
3379 |
/event.
|
3380 |
/executive-
|
3381 |
/exit?
|
|
|
3382 |
/exit.asp?
|
3383 |
/exit.aspx?
|
3384 |
/exit.cfm?
|
@@ -3412,6 +3469,9 @@ _zapat
|
|
3412 |
/fendi.
|
3413 |
/ferragamo-
|
3414 |
/ferragamo.
|
|
|
|
|
|
|
3415 |
/file/
|
3416 |
/files/
|
3417 |
/filmi
|
@@ -3439,6 +3499,7 @@ _zapat
|
|
3439 |
/forum0
|
3440 |
/forum1
|
3441 |
/forwarder?
|
|
|
3442 |
/forwarder.asp?
|
3443 |
/forwarder.aspx?
|
3444 |
/forwarder.cfm?
|
@@ -3453,6 +3514,7 @@ _zapat
|
|
3453 |
/foto.
|
3454 |
/fpdb/
|
3455 |
/frame?
|
|
|
3456 |
/frame.asp?
|
3457 |
/frame.aspx?
|
3458 |
/frame.cfm?
|
@@ -3499,6 +3561,7 @@ _zapat
|
|
3499 |
/gh1/
|
3500 |
/glowna.
|
3501 |
/go_url?
|
|
|
3502 |
/go_url.asp?
|
3503 |
/go_url.aspx?
|
3504 |
/go_url.cfm?
|
@@ -3510,6 +3573,7 @@ _zapat
|
|
3510 |
/go_url.php?
|
3511 |
/go_url/?
|
3512 |
/go?
|
|
|
3513 |
/go.asp?
|
3514 |
/go.aspx?
|
3515 |
/go.cfm?
|
@@ -3529,6 +3593,7 @@ _zapat
|
|
3529 |
/goose/
|
3530 |
/got.by
|
3531 |
/goto_url?
|
|
|
3532 |
/goto_url.asp?
|
3533 |
/goto_url.aspx?
|
3534 |
/goto_url.cfm?
|
@@ -3540,6 +3605,7 @@ _zapat
|
|
3540 |
/goto_url.php?
|
3541 |
/goto_url/?
|
3542 |
/goto?
|
|
|
3543 |
/goto.asp?
|
3544 |
/goto.aspx?
|
3545 |
/goto.cfm?
|
@@ -3551,6 +3617,7 @@ _zapat
|
|
3551 |
/goto.php?
|
3552 |
/goto/?
|
3553 |
/gotourl?
|
|
|
3554 |
/gotourl.asp?
|
3555 |
/gotourl.aspx?
|
3556 |
/gotourl.cfm?
|
@@ -3562,6 +3629,7 @@ _zapat
|
|
3562 |
/gotourl.php?
|
3563 |
/gotourl/?
|
3564 |
/gourl?
|
|
|
3565 |
/gourl.asp?
|
3566 |
/gourl.aspx?
|
3567 |
/gourl.cfm?
|
@@ -3632,11 +3700,13 @@ _zapat
|
|
3632 |
/homepage.
|
3633 |
/homepage/
|
3634 |
/hop?
|
|
|
3635 |
/hop.asp?
|
3636 |
/hop.aspx?
|
3637 |
/hop.cfm?
|
3638 |
/hop.cgi?
|
3639 |
/hop.ctr?
|
|
|
3640 |
/hop.htm?
|
3641 |
/hop.html?
|
3642 |
/hop.jsp?
|
@@ -3686,6 +3756,7 @@ _zapat
|
|
3686 |
/index-3
|
3687 |
/index-4
|
3688 |
/index-5
|
|
|
3689 |
/index.asp?/
|
3690 |
/index.aspx?/
|
3691 |
/index.cfm?/
|
@@ -3710,6 +3781,8 @@ _zapat
|
|
3710 |
/insurance-
|
3711 |
/insurance.
|
3712 |
/internal/
|
|
|
|
|
3713 |
/ip/
|
3714 |
/iphone-s-
|
3715 |
/iphone-s.
|
@@ -3732,6 +3805,7 @@ _zapat
|
|
3732 |
/jersey.
|
3733 |
/jerseys-
|
3734 |
/jerseys.
|
|
|
3735 |
/job.
|
3736 |
/join.
|
3737 |
/joj.
|
@@ -3747,6 +3821,7 @@ _zapat
|
|
3747 |
/js.
|
3748 |
/js/
|
3749 |
/jump?
|
|
|
3750 |
/jump.asp?
|
3751 |
/jump.aspx?
|
3752 |
/jump.cfm?
|
@@ -3758,6 +3833,7 @@ _zapat
|
|
3758 |
/jump.php?
|
3759 |
/jump/?
|
3760 |
/jumplink?
|
|
|
3761 |
/jumplink.asp?
|
3762 |
/jumplink.aspx?
|
3763 |
/jumplink.cfm?
|
@@ -3793,6 +3869,7 @@ _zapat
|
|
3793 |
/kitchenknives-
|
3794 |
/kitchenknives.
|
3795 |
/klik?
|
|
|
3796 |
/klik.asp?
|
3797 |
/klik.aspx?
|
3798 |
/klik.cfm?
|
@@ -3817,6 +3894,7 @@ _zapat
|
|
3817 |
/law-firm-
|
3818 |
/law-firm.
|
3819 |
/law-firm/
|
|
|
3820 |
/layout1/
|
3821 |
/layout2/
|
3822 |
/legal/
|
@@ -3845,6 +3923,7 @@ _zapat
|
|
3845 |
/lingerie.
|
3846 |
/link-
|
3847 |
/link?
|
|
|
3848 |
/link.asp?
|
3849 |
/link.aspx?
|
3850 |
/link.cfm?
|
@@ -3869,6 +3948,7 @@ _zapat
|
|
3869 |
/litecoin.
|
3870 |
/litecoin/
|
3871 |
/lnkcnt?
|
|
|
3872 |
/lnkcnt.asp?
|
3873 |
/lnkcnt.aspx?
|
3874 |
/lnkcnt.cfm?
|
@@ -3881,6 +3961,7 @@ _zapat
|
|
3881 |
/lnkcnt/?
|
3882 |
/loans
|
3883 |
/logout?
|
|
|
3884 |
/logout.asp?
|
3885 |
/logout.aspx?
|
3886 |
/logout.cfm?
|
@@ -3915,6 +3996,7 @@ _zapat
|
|
3915 |
/lv/
|
3916 |
/lvl.vn
|
3917 |
/m?
|
|
|
3918 |
/m.asp?
|
3919 |
/m.aspx?
|
3920 |
/m.cfm?
|
@@ -3933,6 +4015,7 @@ _zapat
|
|
3933 |
/maillot.
|
3934 |
/maillot/
|
3935 |
/mainframe?
|
|
|
3936 |
/mainframe.asp?
|
3937 |
/mainframe.aspx?
|
3938 |
/mainframe.cfm?
|
@@ -4071,6 +4154,7 @@ _zapat
|
|
4071 |
/openlink.
|
4072 |
/openlink/
|
4073 |
/optout?
|
|
|
4074 |
/optout.asp?
|
4075 |
/optout.aspx?
|
4076 |
/optout.cfm?
|
@@ -4085,6 +4169,7 @@ _zapat
|
|
4085 |
/orgasm
|
4086 |
/oulu
|
4087 |
/out?
|
|
|
4088 |
/out.asp?
|
4089 |
/out.aspx?
|
4090 |
/out.cfm?
|
@@ -4099,6 +4184,7 @@ _zapat
|
|
4099 |
/outlet/
|
4100 |
/outlink-
|
4101 |
/outlink?
|
|
|
4102 |
/outlink.asp?
|
4103 |
/outlink.aspx?
|
4104 |
/outlink.cfm?
|
@@ -4110,11 +4196,13 @@ _zapat
|
|
4110 |
/outlink.php?
|
4111 |
/outlink/
|
4112 |
/outlink/?
|
|
|
4113 |
/ow.ly
|
4114 |
/owl.li
|
4115 |
/owtf.co.uk
|
4116 |
/p-laid-
|
4117 |
/p?
|
|
|
4118 |
/p.asp?
|
4119 |
/p.aspx?
|
4120 |
/p.cfm?
|
@@ -4147,6 +4235,7 @@ _zapat
|
|
4147 |
/parafon/
|
4148 |
/party-boat-
|
4149 |
/past.is
|
|
|
4150 |
/phan-biet-
|
4151 |
/phan-biet.
|
4152 |
/phan-biet/
|
@@ -4156,6 +4245,12 @@ _zapat
|
|
4156 |
/phexin-
|
4157 |
/phexin.
|
4158 |
/phexin/
|
|
|
|
|
|
|
|
|
|
|
|
|
4159 |
/php.
|
4160 |
/picload-
|
4161 |
/picload.
|
@@ -4262,6 +4357,7 @@ _zapat
|
|
4262 |
/qsymia.
|
4263 |
/qsymia/
|
4264 |
/r?
|
|
|
4265 |
/r.asp?
|
4266 |
/r.aspx?
|
4267 |
/r.cfm?
|
@@ -4282,6 +4378,7 @@ _zapat
|
|
4282 |
/ralphlauren.
|
4283 |
/ralphlauren/
|
4284 |
/rank?
|
|
|
4285 |
/rank.asp?
|
4286 |
/rank.aspx?
|
4287 |
/rank.cfm?
|
@@ -4299,6 +4396,7 @@ _zapat
|
|
4299 |
/rayban.
|
4300 |
/rayban/
|
4301 |
/rdr?
|
|
|
4302 |
/rdr.asp?
|
4303 |
/rdr.aspx?
|
4304 |
/rdr.cfm?
|
@@ -4314,6 +4412,7 @@ _zapat
|
|
4314 |
/readme.
|
4315 |
/readnews.
|
4316 |
/reauexit?
|
|
|
4317 |
/reauexit.asp?
|
4318 |
/reauexit.aspx?
|
4319 |
/reauexit.cfm?
|
@@ -4370,6 +4469,7 @@ _zapat
|
|
4370 |
/ri.ms
|
4371 |
/rih.co
|
4372 |
/rk?
|
|
|
4373 |
/rk.asp?
|
4374 |
/rk.aspx?
|
4375 |
/rk.cfm?
|
@@ -4405,6 +4505,8 @@ _zapat
|
|
4405 |
/sconfig/
|
4406 |
/scripts-
|
4407 |
/scripts/
|
|
|
|
|
4408 |
/secret-
|
4409 |
/secrets-
|
4410 |
/secure/
|
@@ -4420,6 +4522,7 @@ _zapat
|
|
4420 |
/seo.
|
4421 |
/seo/
|
4422 |
/share?
|
|
|
4423 |
/share.asp?
|
4424 |
/share.aspx?
|
4425 |
/share.cfm?
|
@@ -4494,6 +4597,9 @@ _zapat
|
|
4494 |
/specialprojects.
|
4495 |
/specials-
|
4496 |
/specials.
|
|
|
|
|
|
|
4497 |
/stan.to
|
4498 |
/start.
|
4499 |
/stats/
|
@@ -4524,6 +4630,7 @@ _zapat
|
|
4524 |
/supreme-
|
4525 |
/supreme.
|
4526 |
/supreme/
|
|
|
4527 |
/swf/
|
4528 |
/swish.st
|
4529 |
/syaneru
|
@@ -4534,6 +4641,7 @@ _zapat
|
|
4534 |
/tafil.
|
4535 |
/tafil/
|
4536 |
/tagged/
|
|
|
4537 |
/tattoo-
|
4538 |
/tattoo.
|
4539 |
/tattoo/
|
@@ -4549,7 +4657,7 @@ _zapat
|
|
4549 |
/tatuagens-
|
4550 |
/tatuagens.
|
4551 |
/tatuagens/
|
4552 |
-
/tax-
|
4553 |
/telecharger-
|
4554 |
/telecharger.
|
4555 |
/temp/
|
@@ -4614,6 +4722,7 @@ _zapat
|
|
4614 |
/tr.im
|
4615 |
/trac/ticket/
|
4616 |
/trace?
|
|
|
4617 |
/trace.asp?
|
4618 |
/trace.aspx?
|
4619 |
/trace.cfm?
|
@@ -4625,6 +4734,7 @@ _zapat
|
|
4625 |
/trace.php?
|
4626 |
/trace/?
|
4627 |
/track?
|
|
|
4628 |
/track.asp?
|
4629 |
/track.aspx?
|
4630 |
/track.cfm?
|
@@ -4642,6 +4752,18 @@ _zapat
|
|
4642 |
/transexuelle-
|
4643 |
/transexuelle.
|
4644 |
/transexuelle/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4645 |
/trx/
|
4646 |
/twilight-
|
4647 |
/txt/
|
@@ -4663,6 +4785,7 @@ _zapat
|
|
4663 |
/uploads.
|
4664 |
/uploads/
|
4665 |
/url?
|
|
|
4666 |
/url.asp?
|
4667 |
/url.aspx?
|
4668 |
/url.cfm?
|
@@ -4671,6 +4794,7 @@ _zapat
|
|
4671 |
/url.htm?
|
4672 |
/url.html?
|
4673 |
/url.jsp?
|
|
|
4674 |
/url.php?
|
4675 |
/url/
|
4676 |
/url/?
|
@@ -4703,6 +4827,7 @@ _zapat
|
|
4703 |
/viewstory
|
4704 |
/vip.
|
4705 |
/visit?
|
|
|
4706 |
/visit.asp?
|
4707 |
/visit.aspx?
|
4708 |
/visit.cfm?
|
@@ -5030,10 +5155,13 @@ _zapat
|
|
5030 |
| online
|
5031 |
| year
|
5032 |
||
|
|
|
5033 |
|chi
|
5034 |
|dal
|
5035 |
|det
|
5036 |
|for
|
|
|
|
|
5037 |
|per
|
5038 |
|porn
|
5039 |
|year
|
@@ -5151,32 +5279,54 @@ $sixty
|
|
5151 |
1@2
|
5152 |
1@3
|
5153 |
1@seo
|
|
|
|
|
|
|
5154 |
1big
|
5155 |
-
|
5156 |
1c.in
|
5157 |
-
|
5158 |
-
|
5159 |
-
|
5160 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5161 |
1hand
|
5162 |
-
|
5163 |
-
|
|
|
|
|
5164 |
1mil email
|
5165 |
-
|
|
|
5166 |
1ping
|
5167 |
-
|
|
|
|
|
5168 |
1st comment
|
5169 |
1st-best
|
5170 |
1stbest
|
|
|
5171 |
1stop
|
5172 |
-
|
5173 |
1test
|
5174 |
1the best
|
5175 |
1the-best
|
5176 |
-
|
5177 |
1to1
|
|
|
|
|
|
|
|
|
|
|
5178 |
1xbet
|
5179 |
1you
|
|
|
5180 |
2 appli
|
5181 |
2 casino
|
5182 |
2 into $
|
@@ -5207,32 +5357,53 @@ $sixty
|
|
5207 |
2@seo
|
5208 |
2a aplicacao
|
5209 |
2a-aplicacao
|
|
|
|
|
|
|
5210 |
2bj.ru
|
5211 |
2buy
|
5212 |
2c.in
|
5213 |
-
|
5214 |
-
|
5215 |
-
|
5216 |
-
|
5217 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5218 |
2hand
|
5219 |
-
|
|
|
5220 |
2itb
|
5221 |
2k20 vc
|
5222 |
2k20-vc
|
5223 |
2k20vc
|
|
|
5224 |
2mil email
|
5225 |
-
|
|
|
5226 |
2ping
|
5227 |
-
|
|
|
|
|
5228 |
2sale
|
5229 |
-
|
|
|
5230 |
2test
|
5231 |
2the best
|
5232 |
2the-best
|
5233 |
-
|
|
|
|
|
5234 |
2u.org
|
|
|
|
|
5235 |
2you
|
|
|
5236 |
3 casino
|
5237 |
3 into $
|
5238 |
3 jailbreak
|
@@ -5250,24 +5421,45 @@ $sixty
|
|
5250 |
3@2
|
5251 |
3@3
|
5252 |
3@seo
|
5253 |
-
|
5254 |
-
|
5255 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5256 |
3hand
|
5257 |
-
|
|
|
5258 |
3j3j3
|
|
|
5259 |
3mil email
|
5260 |
3minut
|
|
|
5261 |
3ping
|
5262 |
-
|
5263 |
-
|
|
|
|
|
|
|
5264 |
3test
|
5265 |
3the best
|
5266 |
3the-best
|
5267 |
-
|
5268 |
-
|
5269 |
-
|
|
|
|
|
|
|
|
|
5270 |
3you
|
|
|
5271 |
4 cash
|
5272 |
4 casino
|
5273 |
4 cheap
|
@@ -5765,21 +5957,12 @@ $sixty
|
|
5765 |
1337 seo
|
5766 |
1337-seo
|
5767 |
1337seo
|
5768 |
-
|
5769 |
-
2019 popular
|
5770 |
-
2019 prospect
|
5771 |
-
2019 seo
|
5772 |
-
2019-longchamp
|
5773 |
-
2019-popular
|
5774 |
-
2019-prospect
|
5775 |
-
2019-seo
|
5776 |
-
2019baby
|
5777 |
-
2019longchamp
|
5778 |
-
2019x.
|
5779 |
2020 longchamp
|
5780 |
2020 popular
|
5781 |
2020 prospect
|
5782 |
2020 seo
|
|
|
5783 |
2020-longchamp
|
5784 |
2020-popular
|
5785 |
2020-prospect
|
@@ -5787,10 +5970,12 @@ $sixty
|
|
5787 |
2020baby
|
5788 |
2020longchamp
|
5789 |
2020x.
|
|
|
5790 |
2021 longchamp
|
5791 |
2021 popular
|
5792 |
2021 prospect
|
5793 |
2021 seo
|
|
|
5794 |
2021-longchamp
|
5795 |
2021-popular
|
5796 |
2021-prospect
|
@@ -5798,9 +5983,23 @@ $sixty
|
|
5798 |
2021baby
|
5799 |
2021longchamp
|
5800 |
2021x.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5801 |
10000$
|
5802 |
100000$
|
5803 |
1000000$
|
|
|
5804 |
123456789
|
5805 |
a aaa
|
5806 |
a article author
|
@@ -5991,6 +6190,7 @@ a9.jsp
|
|
5991 |
a09.php
|
5992 |
a9.php
|
5993 |
ã¹
|
|
|
5994 |
ã²
|
5995 |
ãª
|
5996 |
aaa replic
|
@@ -6014,6 +6214,7 @@ aare also
|
|
6014 |
aare feel
|
6015 |
aare king
|
6016 |
aare you
|
|
|
6017 |
aat least
|
6018 |
aat the
|
6019 |
aat this
|
@@ -6063,6 +6264,8 @@ abonnez like
|
|
6063 |
abonnez partage
|
6064 |
about blog
|
6065 |
about home is
|
|
|
|
|
6066 |
about marijuana
|
6067 |
about on the blog
|
6068 |
about on the internet
|
@@ -6089,6 +6292,7 @@ abrir uma empresa
|
|
6089 |
abrir-uma-empresa
|
6090 |
absleutoly
|
6091 |
absolutely indited
|
|
|
6092 |
abssice 360
|
6093 |
abssice-360
|
6094 |
abssice360
|
@@ -6107,11 +6311,11 @@ acai-
|
|
6107 |
acai-diet
|
6108 |
acai.diet
|
6109 |
acaiberry
|
6110 |
-
accident
|
6111 |
accident lawyer
|
6112 |
-
accident-
|
6113 |
accident-lawyer
|
6114 |
-
|
6115 |
accidentlawyer
|
6116 |
according you
|
6117 |
according-you
|
@@ -6144,6 +6348,7 @@ accupril
|
|
6144 |
accutane
|
6145 |
ace 33
|
6146 |
ace-33
|
|
|
6147 |
acel google
|
6148 |
acel-google
|
6149 |
acellphone
|
@@ -6186,6 +6391,9 @@ acneprescript
|
|
6186 |
acnetreatment
|
6187 |
acompanhante anunci
|
6188 |
acompanhantes anunci
|
|
|
|
|
|
|
6189 |
acomplia
|
6190 |
acquire me vip
|
6191 |
acros thee
|
@@ -6196,7 +6404,11 @@ across-thiss
|
|
6196 |
act as versatile
|
6197 |
actions you desire
|
6198 |
activation code
|
|
|
|
|
|
|
6199 |
activity/p/
|
|
|
6200 |
actonel
|
6201 |
actu star
|
6202 |
actual celebrity
|
@@ -6249,6 +6461,7 @@ ad-crack
|
|
6249 |
ad-flag
|
6250 |
ad-listing
|
6251 |
ad-live
|
|
|
6252 |
ad-sage
|
6253 |
ad-wiki
|
6254 |
adbeat distrib
|
@@ -6366,12 +6579,17 @@ admin.htm
|
|
6366 |
admin.jsp
|
6367 |
admin.php
|
6368 |
admin5
|
|
|
|
|
|
|
6369 |
adopt curcumin
|
6370 |
adopt-curcumin
|
6371 |
adore foregathering
|
6372 |
ados populaire
|
6373 |
ados-populaire
|
6374 |
adospopulaire
|
|
|
|
|
6375 |
adremus viral
|
6376 |
adremus-viral
|
6377 |
adremusviral
|
@@ -6419,6 +6637,7 @@ adult girl
|
|
6419 |
adult gyrl
|
6420 |
adult hub
|
6421 |
adult personal
|
|
|
6422 |
adult sex
|
6423 |
adult story
|
6424 |
adult toy
|
@@ -6438,6 +6657,7 @@ adult-gyrl
|
|
6438 |
adult-hub
|
6439 |
adult-net
|
6440 |
adult-personal
|
|
|
6441 |
adult-sex
|
6442 |
adult-story
|
6443 |
adult-toy
|
@@ -6458,6 +6678,7 @@ adultgirl
|
|
6458 |
adultgyrl
|
6459 |
adulthub
|
6460 |
adultpersonal
|
|
|
6461 |
adults friend
|
6462 |
adults-friend
|
6463 |
adultsex
|
@@ -6465,6 +6686,15 @@ adultsfriend
|
|
6465 |
adultstory
|
6466 |
adulttoy
|
6467 |
adultweb
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6468 |
advanced hemp
|
6469 |
advanced raw begin
|
6470 |
advanced-hemp
|
@@ -6482,6 +6712,7 @@ advert market
|
|
6482 |
advert on this
|
6483 |
advert on your
|
6484 |
advert research
|
|
|
6485 |
advert_
|
6486 |
advert-crack
|
6487 |
advert-flag
|
@@ -6490,6 +6721,7 @@ advert-live
|
|
6490 |
advert-market
|
6491 |
advert-research
|
6492 |
advert-sage
|
|
|
6493 |
advert-wiki
|
6494 |
advertise market
|
6495 |
advertise on this
|
@@ -6557,6 +6789,7 @@ adverts-flag
|
|
6557 |
adverts-live
|
6558 |
adverts-sage
|
6559 |
adverts-wiki
|
|
|
6560 |
advice for this topic
|
6561 |
advice on this topic
|
6562 |
advice online
|
@@ -6825,6 +7058,7 @@ alive hack
|
|
6825 |
alive-cheat
|
6826 |
alive-hack
|
6827 |
alışveriş sepetiniz
|
|
|
6828 |
alkotla
|
6829 |
all ahout
|
6830 |
all automobile, auto
|
@@ -6942,7 +7176,9 @@ amazing-sex
|
|
6942 |
amazing-videos
|
6943 |
amazingsex
|
6944 |
amazn.co
|
|
|
6945 |
amazon lider
|
|
|
6946 |
amazon-lider
|
6947 |
amazon.asp
|
6948 |
amazon.cfm
|
@@ -6951,6 +7187,7 @@ amazon.ctr
|
|
6951 |
amazon.htm
|
6952 |
amazon.jsp
|
6953 |
amazon.php
|
|
|
6954 |
amazone lider
|
6955 |
amazone-lider
|
6956 |
ambalaje cofetar
|
@@ -7162,18 +7399,29 @@ animated-porn
|
|
7162 |
animatedporn
|
7163 |
anime boy
|
7164 |
anime cloth
|
|
|
7165 |
anime girl
|
7166 |
anime indo
|
|
|
7167 |
anime music vid
|
|
|
|
|
7168 |
anime-boy
|
7169 |
anime-cloth
|
|
|
7170 |
anime-girl
|
7171 |
anime-indo
|
|
|
7172 |
anime-music-vid
|
|
|
|
|
7173 |
animeboy
|
7174 |
animecloth
|
7175 |
animegirl
|
7176 |
animeindo
|
|
|
|
|
|
|
7177 |
ankara transfer
|
7178 |
ankara-transfer
|
7179 |
ankaratransfer
|
@@ -7282,6 +7530,10 @@ apk-ucretsiz
|
|
7282 |
apkdeponuz
|
7283 |
apkucretsiz
|
7284 |
aplicacin
|
|
|
|
|
|
|
|
|
7285 |
app full download
|
7286 |
app growth education
|
7287 |
app hacked
|
@@ -7317,6 +7569,7 @@ appears like site
|
|
7317 |
appears like web
|
7318 |
appendage enter
|
7319 |
appendages enter
|
|
|
7320 |
apple really …
|
7321 |
apple wedding
|
7322 |
apple-unlock
|
@@ -7353,6 +7606,16 @@ appreciate your content
|
|
7353 |
appreciate your post
|
7354 |
appreciate your site
|
7355 |
appreciate your web
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7356 |
appreckate
|
7357 |
appro-chait
|
7358 |
approaching article
|
@@ -7452,6 +7715,7 @@ artesanal kit
|
|
7452 |
artesanal marca
|
7453 |
artesanal-kit
|
7454 |
artesanal-marca
|
|
|
7455 |
article at this site
|
7456 |
article blog
|
7457 |
article buzz
|
@@ -7467,7 +7731,9 @@ article is fastidious
|
|
7467 |
article is genuine
|
7468 |
article is perfect
|
7469 |
article is pleasant
|
|
|
7470 |
article is priceless
|
|
|
7471 |
article is truly
|
7472 |
article it is defin
|
7473 |
article many
|
@@ -7484,6 +7750,7 @@ article suggest
|
|
7484 |
article tag
|
7485 |
article to rank
|
7486 |
article to your life
|
|
|
7487 |
article writing
|
7488 |
article you write
|
7489 |
article-blog
|
@@ -7504,8 +7771,10 @@ article-snatch
|
|
7504 |
article-sub
|
7505 |
article-suggest
|
7506 |
article-tag
|
|
|
7507 |
article-writing
|
7508 |
article-you-write
|
|
|
7509 |
article,i
|
7510 |
article?.
|
7511 |
article.many
|
@@ -7564,6 +7833,8 @@ articlessub
|
|
7564 |
articlestag
|
7565 |
articlesub
|
7566 |
articletag
|
|
|
|
|
7567 |
artiicle
|
7568 |
artikel
|
7569 |
artiklar snart
|
@@ -7787,11 +8058,11 @@ auspicious web
|
|
7787 |
auspicious writ
|
7788 |
australia boot
|
7789 |
australia clearance
|
7790 |
-
australia
|
7791 |
australia out
|
7792 |
australia-boot
|
7793 |
australia-clearance
|
7794 |
-
australia-
|
7795 |
australiaboot
|
7796 |
australiaclearance
|
7797 |
australian chilling
|
@@ -7864,8 +8135,10 @@ authority of a blog
|
|
7864 |
authority of a page
|
7865 |
authority of a post
|
7866 |
auto brand
|
|
|
7867 |
auto-approve-list
|
7868 |
auto-brand
|
|
|
7869 |
auto.brand
|
7870 |
autoapprove
|
7871 |
autobrand
|
@@ -7877,9 +8150,11 @@ automatic-swimming
|
|
7877 |
automatic+swimming
|
7878 |
automaticpay
|
7879 |
automaticswimming
|
|
|
7880 |
automobile profit
|
7881 |
automobile proper
|
7882 |
automobile-profit
|
|
|
7883 |
autopilot income
|
7884 |
autopilot-income
|
7885 |
autopost unlimit
|
@@ -7915,6 +8190,9 @@ avatar therapy
|
|
7915 |
avatar trimoxazole
|
7916 |
avatar-live
|
7917 |
avatar-therapy
|
|
|
|
|
|
|
7918 |
avental indispensavel
|
7919 |
avental indispensável
|
7920 |
avental-indispensavel
|
@@ -7960,6 +8238,10 @@ awesoome
|
|
7960 |
awokehim
|
7961 |
awordpress.
|
7962 |
awsome
|
|
|
|
|
|
|
|
|
7963 |
az
|
7964 |
azria out
|
7965 |
azria-out
|
@@ -7971,6 +8253,7 @@ aг
|
|
7971 |
aԁ
|
7972 |
aѕ
|
7973 |
aі
|
|
|
7974 |
aҟ
|
7975 |
aу
|
7976 |
aү
|
@@ -8148,6 +8431,10 @@ bactrim ds
|
|
8148 |
bactrim generic
|
8149 |
bactrim use
|
8150 |
bactrim-coverage
|
|
|
|
|
|
|
|
|
8151 |
bad credit
|
8152 |
bad-credit
|
8153 |
badcredit
|
@@ -8225,6 +8512,14 @@ baguebulgar
|
|
8225 |
baguebvlgar
|
8226 |
bahaya lemak
|
8227 |
bahaya-lemak
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8228 |
baikal extreme
|
8229 |
baikal rest
|
8230 |
baikal-extreme
|
@@ -8261,6 +8556,7 @@ ban aviat
|
|
8261 |
ban barata
|
8262 |
ban barato
|
8263 |
bán đạm
|
|
|
8264 |
ban handle
|
8265 |
ban händle
|
8266 |
bán hàng đơn giản
|
@@ -8281,6 +8577,7 @@ ban wayfare
|
|
8281 |
ban-barata
|
8282 |
ban-barato
|
8283 |
ban-dam
|
|
|
8284 |
ban-hang-don-gian
|
8285 |
ban-jack
|
8286 |
ban-mirror
|
@@ -8335,7 +8632,13 @@ banprezzo
|
|
8335 |
banque parrainage
|
8336 |
banque-parrainage
|
8337 |
bansunglass
|
|
|
|
|
|
|
|
|
|
|
8338 |
banyaknya situs
|
|
|
8339 |
banyaknya-situs
|
8340 |
báo giá máy
|
8341 |
bảo hiểm
|
@@ -8464,7 +8767,10 @@ bất động sản
|
|
8464 |
bat-dong-san
|
8465 |
bat-pro
|
8466 |
batdongsan
|
|
|
|
|
8467 |
bathroom look
|
|
|
8468 |
bathroom-look
|
8469 |
batt-kupon
|
8470 |
battkupon
|
@@ -8545,6 +8851,7 @@ be sure to really
|
|
8545 |
be tiny needle
|
8546 |
be tthe
|
8547 |
be tthis
|
|
|
8548 |
be what happens you
|
8549 |
be-on-instagram
|
8550 |
beamten
|
@@ -8614,6 +8921,7 @@ become buying
|
|
8614 |
become bytecoin
|
8615 |
become litecoin
|
8616 |
become our consumer
|
|
|
8617 |
become-a-success
|
8618 |
become-an-expert
|
8619 |
become-bitcoin
|
@@ -8636,8 +8944,15 @@ before-purchas
|
|
8636 |
begeni hilesi
|
8637 |
begeni-hilesi
|
8638 |
beggun
|
|
|
|
|
|
|
8639 |
beginner blog
|
|
|
8640 |
beginner-blog
|
|
|
|
|
|
|
8641 |
behavioral-interview-question
|
8642 |
behaviour-driven
|
8643 |
behelfen sich die medien
|
@@ -8704,8 +9019,12 @@ beneficial software
|
|
8704 |
beneficios de la
|
8705 |
beneficios-de-la
|
8706 |
benefit coupon
|
|
|
|
|
8707 |
benefit-coupon
|
8708 |
benefits coupon
|
|
|
|
|
8709 |
benefits-coupon
|
8710 |
bengals merch
|
8711 |
bengals store
|
@@ -8737,7 +9056,14 @@ bermutu-ting
|
|
8737 |
berracom.ph
|
8738 |
besstet
|
8739 |
best anal
|
|
|
|
|
|
|
|
|
|
|
|
|
8740 |
best blogging
|
|
|
8741 |
best bodycon
|
8742 |
best booster
|
8743 |
best cartier
|
@@ -8762,21 +9088,28 @@ best mcm
|
|
8762 |
best nautical decor
|
8763 |
best nautical home
|
8764 |
best online
|
|
|
8765 |
best pant
|
|
|
8766 |
best payment
|
8767 |
best places botox
|
8768 |
best porn
|
8769 |
best priced
|
|
|
8770 |
best prostate
|
8771 |
best sandal
|
8772 |
best sex
|
8773 |
best shapewear
|
8774 |
best shoe price
|
|
|
|
|
|
|
|
|
8775 |
best suppl
|
8776 |
best tummy
|
8777 |
best vape
|
8778 |
best vpn service
|
8779 |
-
best web
|
8780 |
best webmaster
|
8781 |
best wordpress
|
8782 |
best writing comp
|
@@ -8784,7 +9117,9 @@ best writing serv
|
|
8784 |
best you can see
|
8785 |
best_small_
|
8786 |
best-anal
|
|
|
8787 |
best-blogging
|
|
|
8788 |
best-bodycon
|
8789 |
best-booster
|
8790 |
best-cartier
|
@@ -8817,6 +9152,7 @@ best-places-botox
|
|
8817 |
best-porn
|
8818 |
best-priced
|
8819 |
best-probiotic
|
|
|
8820 |
best-prostate
|
8821 |
best-real
|
8822 |
best-sandal
|
@@ -8826,7 +9162,10 @@ best-sex
|
|
8826 |
best-shapewear
|
8827 |
best-shoe-price
|
8828 |
best-shop
|
|
|
8829 |
best-small-
|
|
|
|
|
8830 |
best-software-for
|
8831 |
best-suppl
|
8832 |
best-tummy
|
@@ -8843,6 +9182,8 @@ best4
|
|
8843 |
bestad.
|
8844 |
bestads.
|
8845 |
bestairjordan
|
|
|
|
|
8846 |
bestbut
|
8847 |
bestcartier
|
8848 |
bestcase
|
@@ -8887,6 +9228,7 @@ bestphone
|
|
8887 |
bestpricebuy
|
8888 |
bestpricesbuy
|
8889 |
bestprobiotic
|
|
|
8890 |
bestreal
|
8891 |
bestsalesell
|
8892 |
bestsellerbag
|
@@ -8894,11 +9236,15 @@ bestsellersbag
|
|
8894 |
bestsex
|
8895 |
bestshop
|
8896 |
bestsmart
|
|
|
8897 |
bestsuppl
|
8898 |
besttummy
|
8899 |
bestvape
|
8900 |
bestvpn
|
8901 |
bestweb
|
|
|
|
|
|
|
8902 |
bet-88
|
8903 |
bet-guru
|
8904 |
bet-khong
|
@@ -8927,9 +9273,16 @@ betor.ru
|
|
8927 |
betrueger dreck
|
8928 |
betrueger-dreck
|
8929 |
betruegerdreck
|
|
|
|
|
|
|
|
|
|
|
8930 |
betscript
|
|
|
8931 |
better essay writ
|
8932 |
better handling driving
|
|
|
8933 |
better-essay-writ
|
8934 |
better-service
|
8935 |
betterjudg
|
@@ -8938,12 +9291,14 @@ betting article
|
|
8938 |
betting news
|
8939 |
betting on mlb
|
8940 |
betting online
|
|
|
8941 |
betting script
|
8942 |
betting site
|
8943 |
betting website
|
8944 |
betting-article
|
8945 |
betting-news
|
8946 |
betting-online
|
|
|
8947 |
betting-script
|
8948 |
betting-site
|
8949 |
betting-website
|
@@ -8951,6 +9306,7 @@ bettingscript
|
|
8951 |
bettor than
|
8952 |
between tthe
|
8953 |
betweenex
|
|
|
8954 |
bezpieczne leczenie
|
8955 |
bezpieczne-leczenie
|
8956 |
bhilt
|
@@ -9058,6 +9414,9 @@ binary-crypto
|
|
9058 |
binary-option
|
9059 |
binarycrypto
|
9060 |
binaryoption
|
|
|
|
|
|
|
9061 |
bio bronz
|
9062 |
bio skin
|
9063 |
bio-bronz
|
@@ -9118,6 +9477,8 @@ bitcoin + crypto
|
|
9118 |
bitcoin $
|
9119 |
bitcoin acc
|
9120 |
bitcoin add
|
|
|
|
|
9121 |
bitcoin bot
|
9122 |
bitcoin buy
|
9123 |
bitcoin casino
|
@@ -9131,6 +9492,7 @@ bitcoin from $
|
|
9131 |
bitcoin million
|
9132 |
bitcoin mine
|
9133 |
bitcoin mining
|
|
|
9134 |
bitcoin per day
|
9135 |
bitcoin per week
|
9136 |
bitcoin rush
|
@@ -9139,6 +9501,8 @@ bitcoin wallet
|
|
9139 |
bitcoin_
|
9140 |
bitcoin-acc
|
9141 |
bitcoin-add
|
|
|
|
|
9142 |
bitcoin-buy
|
9143 |
bitcoin-casino
|
9144 |
bitcoin-code
|
@@ -9150,6 +9514,7 @@ bitcoin-dump
|
|
9150 |
bitcoin-million
|
9151 |
bitcoin-mine
|
9152 |
bitcoin-mining
|
|
|
9153 |
bitcoin-per-day
|
9154 |
bitcoin-per-week
|
9155 |
bitcoin-rush
|
@@ -9157,6 +9522,9 @@ bitcoin-talk
|
|
9157 |
bitcoin-wallet
|
9158 |
bitcoinacc
|
9159 |
bitcoinadd
|
|
|
|
|
|
|
9160 |
bitcoinbuy
|
9161 |
bitcoincas
|
9162 |
bitcoincode
|
@@ -9166,6 +9534,7 @@ bitcoindepos
|
|
9166 |
bitcoindonat
|
9167 |
bitcoindump
|
9168 |
bitcoinmillion
|
|
|
9169 |
bitcoinrush
|
9170 |
bitcoins
|
9171 |
bitcointalk
|
@@ -9214,6 +9583,7 @@ black magic love
|
|
9214 |
black magic removal
|
9215 |
black magic spell
|
9216 |
black magic wealth
|
|
|
9217 |
black tight
|
9218 |
black tits
|
9219 |
black ugg
|
@@ -9225,12 +9595,15 @@ black-magic-love
|
|
9225 |
black-magic-removal
|
9226 |
black-magic-spell
|
9227 |
black-magic-wealth
|
|
|
9228 |
black-tight
|
9229 |
black-tits
|
9230 |
black-ugg
|
9231 |
black-www
|
9232 |
blackfriday
|
9233 |
blackgay
|
|
|
|
|
9234 |
blackjack pit
|
9235 |
blackjack slot
|
9236 |
blackjack terbaik
|
@@ -9282,10 +9655,11 @@ blocker-preço
|
|
9282 |
blocker-queda
|
9283 |
blog _
|
9284 |
blog ::
|
9285 |
-
blog ..
|
9286 |
-
blog …
|
9287 |
blog (wordpress
|
9288 |
blog a menudo
|
|
|
|
|
|
|
9289 |
blog article
|
9290 |
blog based
|
9291 |
blog beast
|
@@ -9310,15 +9684,19 @@ blog fully about
|
|
9310 |
blog give pleasant
|
9311 |
blog gives pleasant
|
9312 |
blog glance
|
|
|
9313 |
blog here
|
9314 |
blog if you
|
9315 |
blog is a center
|
9316 |
blog is a centre
|
9317 |
blog is actually
|
|
|
9318 |
blog is fastidious
|
9319 |
blog is invaluable
|
9320 |
blog is loading
|
|
|
9321 |
blog is priceless
|
|
|
9322 |
blog is truly
|
9323 |
blog it help
|
9324 |
blog it is
|
@@ -9331,11 +9709,14 @@ blog load
|
|
9331 |
blog loading
|
9332 |
blog look
|
9333 |
blog mark
|
|
|
9334 |
blog moze
|
9335 |
blog może
|
9336 |
blog occasion
|
9337 |
blog on regular
|
9338 |
blog on the web
|
|
|
|
|
9339 |
blog platform
|
9340 |
blog post
|
9341 |
blog projet
|
@@ -9360,8 +9741,11 @@ blog various
|
|
9360 |
blog vid
|
9361 |
blog viewer
|
9362 |
blog visit
|
|
|
|
|
9363 |
blog was how
|
9364 |
blog was..
|
|
|
9365 |
blog web
|
9366 |
blog which content
|
9367 |
blog wiki
|
@@ -9376,6 +9760,7 @@ blog_comente
|
|
9376 |
blog-0
|
9377 |
blog-1
|
9378 |
blog-2
|
|
|
9379 |
blog-based
|
9380 |
blog-beast
|
9381 |
blog-before
|
@@ -9396,6 +9781,7 @@ blog-forest
|
|
9396 |
blog-format
|
9397 |
blog-frequently
|
9398 |
blog-glance
|
|
|
9399 |
blog-here
|
9400 |
blog-is-loading
|
9401 |
blog-it-help
|
@@ -9407,7 +9793,10 @@ blog-load
|
|
9407 |
blog-loading
|
9408 |
blog-look
|
9409 |
blog-mark
|
|
|
9410 |
blog-occasion
|
|
|
|
|
9411 |
blog-platform
|
9412 |
blog-post
|
9413 |
blog-projet
|
@@ -9438,8 +9827,6 @@ blog:quan
|
|
9438 |
blog:quần
|
9439 |
blog.;
|
9440 |
blog.:
|
9441 |
-
blog..
|
9442 |
-
blog…
|
9443 |
blog.best
|
9444 |
blog.real
|
9445 |
blog.thank
|
@@ -9461,6 +9848,7 @@ blog/web
|
|
9461 |
blog0
|
9462 |
blog1
|
9463 |
blog2
|
|
|
9464 |
blogbased
|
9465 |
blogbeast
|
9466 |
blogblog
|
@@ -9511,6 +9899,7 @@ blogging-service
|
|
9511 |
blogging-visit
|
9512 |
bloggingg
|
9513 |
blogginglook
|
|
|
9514 |
bloggybest
|
9515 |
bloghome
|
9516 |
blogid
|
@@ -9522,12 +9911,15 @@ blogload
|
|
9522 |
bloglook
|
9523 |
bloglove
|
9524 |
blogmark
|
|
|
|
|
9525 |
blogow
|
9526 |
blogów
|
9527 |
blogplatform
|
9528 |
blogprodesign
|
9529 |
blogprojet
|
9530 |
blogrtui.ru
|
|
|
9531 |
blogs article
|
9532 |
blogs if you
|
9533 |
blogs like every
|
@@ -9570,6 +9962,7 @@ blogspothave
|
|
9570 |
blogspotprov
|
9571 |
blogsys
|
9572 |
blogtitle
|
|
|
9573 |
blogue0
|
9574 |
blogue1
|
9575 |
blogue2
|
@@ -9650,11 +10043,13 @@ body goods
|
|
9650 |
body hormone
|
9651 |
body massage in
|
9652 |
body shapewear
|
|
|
9653 |
body-erotic
|
9654 |
body-goods
|
9655 |
body-hormone
|
9656 |
body-massage-in
|
9657 |
body-shapewear
|
|
|
9658 |
bodycon bandage
|
9659 |
bodycon dress
|
9660 |
bodycon home
|
@@ -9678,6 +10073,21 @@ boilers-ireland
|
|
9678 |
boilers-spare
|
9679 |
boilerspare
|
9680 |
boilersspare
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9681 |
bokkmark
|
9682 |
bokserki
|
9683 |
bola online
|
@@ -9694,11 +10104,19 @@ bollywood-moi
|
|
9694 |
bolsos marc
|
9695 |
bolsos-marc
|
9696 |
bolsosmarc
|
|
|
|
|
|
|
|
|
|
|
|
|
9697 |
bon copie
|
9698 |
bon-copie
|
9699 |
boncopie
|
9700 |
bone wellness
|
9701 |
bone-wellness
|
|
|
|
|
9702 |
bonerz
|
9703 |
bong 88
|
9704 |
bong online
|
@@ -9795,7 +10213,14 @@ bookmarked-you
|
|
9795 |
bookmarked!
|
9796 |
bookmarking and checking
|
9797 |
bookmarking it
|
|
|
|
|
|
|
|
|
|
|
|
|
9798 |
bookmarkingland
|
|
|
9799 |
bookmarks thank
|
9800 |
bookmarks web
|
9801 |
bookmarks-thank
|
@@ -9984,6 +10409,12 @@ botulinumtoxin
|
|
9984 |
bought mme
|
9985 |
boulder boulder
|
9986 |
boulder-boulder
|
|
|
|
|
|
|
|
|
|
|
|
|
9987 |
boundless online
|
9988 |
bountiful with
|
9989 |
bountiful-with
|
@@ -10160,6 +10591,7 @@ brittanybattle
|
|
10160 |
brittny-battle
|
10161 |
brittnybattle
|
10162 |
bro thank you
|
|
|
10163 |
broker blueprint
|
10164 |
broker dealer
|
10165 |
broker forex
|
@@ -10177,8 +10609,8 @@ broncosjers
|
|
10177 |
broncosoffic
|
10178 |
brothershit
|
10179 |
brought agreeable
|
10180 |
-
browns
|
10181 |
-
browns-
|
10182 |
browse around this blog
|
10183 |
browse around this site
|
10184 |
browse around this web
|
@@ -10457,10 +10889,15 @@ bursamasoz
|
|
10457 |
bursasite
|
10458 |
bursatransfer
|
10459 |
bursted out laugh
|
|
|
|
|
|
|
|
|
10460 |
busca sexo
|
10461 |
busca-sexo
|
10462 |
buscando soluções
|
10463 |
busienss
|
|
|
10464 |
business catalyst
|
10465 |
business collect
|
10466 |
business empire
|
@@ -10469,46 +10906,43 @@ business know
|
|
10469 |
business online world
|
10470 |
business seo
|
10471 |
business setup
|
|
|
10472 |
business train
|
|
|
10473 |
business-a2review
|
|
|
10474 |
business-boss
|
10475 |
business-catalyst
|
10476 |
business-collect
|
10477 |
business-daily
|
10478 |
business-empire
|
10479 |
-
business-finder
|
10480 |
business-first
|
10481 |
business-formation
|
10482 |
business-in
|
10483 |
business-intel
|
10484 |
business-know
|
10485 |
business-loan
|
10486 |
-
business-market
|
10487 |
-
business-net
|
10488 |
-
business-network
|
10489 |
-
business-profile
|
10490 |
business-seo
|
10491 |
business-setup
|
|
|
10492 |
business-train
|
|
|
10493 |
business’ status
|
10494 |
business’s status
|
|
|
10495 |
businessboss
|
10496 |
businesscatalyst
|
10497 |
businesscollect
|
10498 |
businessdaily
|
10499 |
businesses status
|
10500 |
businesses-status
|
10501 |
-
businessfinder
|
10502 |
businessfirst
|
10503 |
businessintel
|
10504 |
businessknow
|
|
|
10505 |
businessloan
|
10506 |
-
businessmarket
|
10507 |
-
businessnetwork
|
10508 |
-
businessprofile
|
10509 |
businessseo
|
10510 |
businesstogoogle
|
10511 |
-
businesstrain
|
10512 |
busiunes
|
10513 |
buspirone
|
10514 |
busquemail
|
@@ -10530,9 +10964,12 @@ buy acrylic
|
|
10530 |
buy ageless
|
10531 |
buy albenda
|
10532 |
buy albenza
|
|
|
|
|
10533 |
buy black magic
|
10534 |
buy blade
|
10535 |
buy canadagoose
|
|
|
10536 |
buy cetirizine
|
10537 |
buy cheap
|
10538 |
buy crypto
|
@@ -10589,6 +11026,7 @@ buy snapchat
|
|
10589 |
buy soccer
|
10590 |
buy social account
|
10591 |
buy targeted
|
|
|
10592 |
buy thesis
|
10593 |
buy tiktok
|
10594 |
buy toms
|
@@ -10606,9 +11044,12 @@ buy youtube
|
|
10606 |
buy-acrylic
|
10607 |
buy-albenda
|
10608 |
buy-albenza
|
|
|
|
|
10609 |
buy-black-magic
|
10610 |
buy-blade
|
10611 |
buy-canadagoose
|
|
|
10612 |
buy-cetirizine
|
10613 |
buy-cheap
|
10614 |
buy-cig
|
@@ -10671,6 +11112,7 @@ buy-soccer
|
|
10671 |
buy-social-account
|
10672 |
buy-soma
|
10673 |
buy-targeted
|
|
|
10674 |
buy-thesis
|
10675 |
buy-tiktok
|
10676 |
buy-toms
|
@@ -10691,7 +11133,9 @@ buy.cheap
|
|
10691 |
buy.cock
|
10692 |
buy.top
|
10693 |
buyalbenza
|
|
|
10694 |
buycanada
|
|
|
10695 |
buycetirizine
|
10696 |
buycheap
|
10697 |
buycig
|
@@ -10711,6 +11155,8 @@ buyhover
|
|
10711 |
buying and selling system
|
10712 |
buying face
|
10713 |
buying fifa
|
|
|
|
|
10714 |
buying insta
|
10715 |
buying likes
|
10716 |
buying married
|
@@ -10719,6 +11165,8 @@ buying traff
|
|
10719 |
buying-a-car
|
10720 |
buying-face
|
10721 |
buying-fifa
|
|
|
|
|
10722 |
buying-insta
|
10723 |
buying-likes
|
10724 |
buying-papers-online
|
@@ -10726,6 +11174,8 @@ buying-rune
|
|
10726 |
buying-traff
|
10727 |
buyingface
|
10728 |
buyingfifa
|
|
|
|
|
10729 |
buyinginsta
|
10730 |
buyinglikes
|
10731 |
buyingrune
|
@@ -10897,14 +11347,21 @@ california-adult
|
|
10897 |
california-date
|
10898 |
california-dating
|
10899 |
californiaadult
|
|
|
|
|
|
|
10900 |
calitate super
|
10901 |
calitate-super
|
10902 |
call center outsourc
|
10903 |
call centre outsourc
|
10904 |
call futurity
|
|
|
|
|
10905 |
call-center-outsourc
|
10906 |
call-centre-outsourc
|
10907 |
call-futurity
|
|
|
|
|
10908 |
callerid
|
10909 |
callgirl
|
10910 |
callgyrl
|
@@ -10974,6 +11431,28 @@ camisetas-personalizada
|
|
10974 |
camisetas-polo
|
10975 |
camisetashollis
|
10976 |
camisetaspolo
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10977 |
campervanhire
|
10978 |
camsex
|
10979 |
can assist you have
|
@@ -11021,20 +11500,25 @@ canadaloan
|
|
11021 |
canadaout
|
11022 |
canadian drug
|
11023 |
canadian hgh
|
|
|
11024 |
canadian loan
|
11025 |
canadian pharm
|
11026 |
canadian-drug
|
11027 |
canadian-hgh
|
|
|
11028 |
canadian-loan
|
11029 |
canadian-pharm
|
11030 |
canadiandrug
|
11031 |
canadianhgh
|
|
|
11032 |
canadianloan
|
11033 |
candy crash
|
11034 |
candy-crash
|
11035 |
candy-crush
|
11036 |
candycrash
|
11037 |
candycrush
|
|
|
|
|
11038 |
cann also
|
11039 |
cann't
|
11040 |
cann’t
|
@@ -11070,6 +11554,7 @@ cập website
|
|
11070 |
capabilities also
|
11071 |
capabilities-also
|
11072 |
capable of effortless
|
|
|
11073 |
capable to provide
|
11074 |
capacidad produccion
|
11075 |
capacidad producción
|
@@ -11102,6 +11587,9 @@ card-cheat
|
|
11102 |
card-debt
|
11103 |
card-dump
|
11104 |
card-financial
|
|
|
|
|
|
|
11105 |
cardcheat
|
11106 |
carder board
|
11107 |
carder-board
|
@@ -11138,6 +11626,7 @@ cars-game
|
|
11138 |
cars-insur
|
11139 |
carsgame
|
11140 |
carsinsur
|
|
|
11141 |
cartier anelli
|
11142 |
cartier bracelet
|
11143 |
cartier fidanza
|
@@ -11204,6 +11693,7 @@ cash-progress
|
|
11204 |
cash-team
|
11205 |
cash.com.
|
11206 |
cash.xyz
|
|
|
11207 |
cash4
|
11208 |
cashadvance
|
11209 |
cashbuzz
|
@@ -11217,6 +11707,9 @@ cashforgold
|
|
11217 |
cashforsilver
|
11218 |
cashfuck
|
11219 |
cashgenerat
|
|
|
|
|
|
|
11220 |
cashloan
|
11221 |
cashnow
|
11222 |
cashout
|
@@ -11224,6 +11717,7 @@ cashteam
|
|
11224 |
casier judiciaire
|
11225 |
casier-judiciaire
|
11226 |
casino account
|
|
|
11227 |
casino bonus
|
11228 |
casino enligne
|
11229 |
casino fish
|
@@ -11236,15 +11730,19 @@ casino online
|
|
11236 |
casino only
|
11237 |
casino partic
|
11238 |
casino phish
|
|
|
11239 |
casino script
|
11240 |
casino site
|
11241 |
casino slot
|
|
|
|
|
11242 |
casino today
|
11243 |
casino view
|
11244 |
casino_
|
11245 |
casino-1
|
11246 |
casino-24
|
11247 |
casino-account
|
|
|
11248 |
casino-bonus
|
11249 |
casino-enligne
|
11250 |
casino-fish
|
@@ -11258,6 +11756,7 @@ casino-online
|
|
11258 |
casino-only
|
11259 |
casino-partic
|
11260 |
casino-phish
|
|
|
11261 |
casino-script
|
11262 |
casino-site
|
11263 |
casino-slot
|
@@ -11268,6 +11767,7 @@ casino.co
|
|
11268 |
casino1
|
11269 |
casino24
|
11270 |
casinoaccount
|
|
|
11271 |
casinobonus
|
11272 |
casinoenligne
|
11273 |
casinoer
|
@@ -11378,6 +11878,9 @@ cc shop
|
|
11378 |
cc-shop
|
11379 |
ccan visit
|
11380 |
ccheap
|
|
|
|
|
|
|
11381 |
ccshop
|
11382 |
cctv dahua
|
11383 |
cctv distrib
|
@@ -11390,6 +11893,8 @@ ccv-shop
|
|
11390 |
ccvshop
|
11391 |
ce billet
|
11392 |
ce-billet
|
|
|
|
|
11393 |
celeb diet
|
11394 |
celeb hair
|
11395 |
celeb nude
|
@@ -11401,6 +11906,7 @@ celebhair
|
|
11401 |
celebnude
|
11402 |
celebrate blogging
|
11403 |
celebrate-blogging
|
|
|
11404 |
celebrex
|
11405 |
celebrities diet
|
11406 |
celebrities hair
|
@@ -11413,11 +11919,14 @@ celebritieshair
|
|
11413 |
celebritiesnude
|
11414 |
celebrity diet
|
11415 |
celebrity hair
|
|
|
11416 |
celebrity-diet
|
11417 |
celebrity-hair
|
|
|
11418 |
celebrity-nude
|
11419 |
celebritydiet
|
11420 |
celebrityhair
|
|
|
11421 |
celebritynude
|
11422 |
celebs diet
|
11423 |
celebs hair
|
@@ -11572,6 +12081,8 @@ chaacterist
|
|
11572 |
chachurbat
|
11573 |
chack-tip
|
11574 |
chacktip
|
|
|
|
|
11575 |
chanclas hollis
|
11576 |
chanclas-hollis
|
11577 |
chanclashollis
|
@@ -11663,14 +12174,18 @@ charms-thomas
|
|
11663 |
charmsthomas
|
11664 |
chat met vrouwen
|
11665 |
chat porn
|
|
|
11666 |
chat support office
|
11667 |
chat tarot
|
|
|
11668 |
chat-bait
|
11669 |
chat-bate
|
11670 |
chat-chat
|
11671 |
chat-met-vrouwen
|
11672 |
chat-porn
|
|
|
11673 |
chat-tarot
|
|
|
11674 |
chatburt
|
11675 |
chatchat
|
11676 |
chaterba
|
@@ -11693,6 +12208,7 @@ chatourbat
|
|
11693 |
chatporn
|
11694 |
chatr-bat
|
11695 |
chatrbat
|
|
|
11696 |
chattburt
|
11697 |
chatte-bat
|
11698 |
chattebat
|
@@ -11710,6 +12226,7 @@ chatur-bat
|
|
11710 |
chaturbat
|
11711 |
chaturbbat
|
11712 |
chaturrbat
|
|
|
11713 |
chaussres boutique
|
11714 |
chaussres pascher
|
11715 |
chaussres-boutique
|
@@ -11799,6 +12316,7 @@ chce rozwodu
|
|
11799 |
chce-rozwodu
|
11800 |
chcoin.co
|
11801 |
cheap |
|
|
|
11802 |
cheap afl
|
11803 |
cheap air
|
11804 |
cheap anti
|
@@ -11856,6 +12374,7 @@ cheap lebron
|
|
11856 |
cheap longchamp
|
11857 |
cheap loubou
|
11858 |
cheap louis
|
|
|
11859 |
cheap mackage
|
11860 |
cheap mbt
|
11861 |
cheap michael
|
@@ -11885,6 +12404,7 @@ cheap sexy
|
|
11885 |
cheap sherr
|
11886 |
cheap shoe
|
11887 |
cheap silver
|
|
|
11888 |
cheap soccer
|
11889 |
cheap stephen
|
11890 |
cheap sunglass
|
@@ -11907,6 +12427,7 @@ cheap yoga
|
|
11907 |
cheap youth
|
11908 |
cheap_
|
11909 |
cheap-adobe
|
|
|
11910 |
cheap-afl
|
11911 |
cheap-atlanta
|
11912 |
cheap-autentic
|
@@ -11961,6 +12482,7 @@ cheap-jord
|
|
11961 |
cheap-kobe
|
11962 |
cheap-lebron
|
11963 |
cheap-loubou
|
|
|
11964 |
cheap-mackage
|
11965 |
cheap-mbt
|
11966 |
cheap-michael
|
@@ -11991,6 +12513,7 @@ cheap-sexy
|
|
11991 |
cheap-sherr
|
11992 |
cheap-shoe
|
11993 |
cheap-silver
|
|
|
11994 |
cheap-soccer
|
11995 |
cheap-stephen
|
11996 |
cheap-sunglass
|
@@ -12015,6 +12538,7 @@ cheap-yoga
|
|
12015 |
cheap-youth
|
12016 |
cheap+
|
12017 |
cheapadobe
|
|
|
12018 |
cheapafl
|
12019 |
cheapatlanta
|
12020 |
cheapautentic
|
@@ -12045,15 +12569,18 @@ cheapest lowest
|
|
12045 |
cheapest pokemon
|
12046 |
cheapest price
|
12047 |
cheapest ray
|
|
|
12048 |
cheapest-hockey
|
12049 |
cheapest-lowest
|
12050 |
cheapest-pokemon
|
12051 |
cheapest-price
|
12052 |
cheapest-ray
|
|
|
12053 |
cheapest.co
|
12054 |
cheapesthockey
|
12055 |
cheapestlow
|
12056 |
cheapestprice
|
|
|
12057 |
cheapferrag
|
12058 |
cheapflowergirl
|
12059 |
cheapfootbal
|
@@ -12073,6 +12600,7 @@ cheapkobe
|
|
12073 |
cheaplebron
|
12074 |
cheaploubou
|
12075 |
cheaplouis
|
|
|
12076 |
cheapmackage
|
12077 |
cheapmbt
|
12078 |
cheapmichael
|
@@ -12100,6 +12628,7 @@ cheapseo
|
|
12100 |
cheapsex
|
12101 |
cheapshoe
|
12102 |
cheapsilver
|
|
|
12103 |
cheapstephen
|
12104 |
cheapsugg
|
12105 |
cheapsunglass
|
@@ -12176,13 +12705,18 @@ check out my sitte
|
|
12176 |
check out my web
|
12177 |
check out new post
|
12178 |
check out the blog
|
|
|
12179 |
check out the page
|
12180 |
check out the site
|
12181 |
check out the sitte
|
12182 |
check out the web
|
|
|
|
|
12183 |
check the ideas
|
|
|
12184 |
check this ideas
|
12185 |
check this link
|
|
|
12186 |
check this video
|
12187 |
check us out guy
|
12188 |
check weblog
|
@@ -12195,7 +12729,13 @@ check-caller
|
|
12195 |
check-out out
|
12196 |
check-out-new-post
|
12197 |
check-out-out
|
|
|
|
|
|
|
|
|
|
|
12198 |
check-this-link
|
|
|
12199 |
check-this-video
|
12200 |
check-weblog
|
12201 |
check-who-call
|
@@ -12631,9 +13171,13 @@ click comp
|
|
12631 |
click for more
|
12632 |
click fraud
|
12633 |
click here
|
|
|
|
|
|
|
12634 |
click now
|
12635 |
click on secure
|
12636 |
click over here
|
|
|
12637 |
click the blog
|
12638 |
click the last site
|
12639 |
click the link
|
@@ -12683,6 +13227,9 @@ clickcount
|
|
12683 |
clickforu
|
12684 |
clickfraud
|
12685 |
clicking it
|
|
|
|
|
|
|
12686 |
clicking world
|
12687 |
clicking-world
|
12688 |
clicknow
|
@@ -12800,6 +13347,7 @@ coach suto
|
|
12800 |
coach syoppu
|
12801 |
coach thai
|
12802 |
coach tokyo
|
|
|
12803 |
coach wallet
|
12804 |
coach wrist
|
12805 |
coach ya
|
@@ -12834,6 +13382,7 @@ coach-suto
|
|
12834 |
coach-syoppu
|
12835 |
coach-thai
|
12836 |
coach-tokyo
|
|
|
12837 |
coach-wallet
|
12838 |
coach-wrist
|
12839 |
coach-ya
|
@@ -12957,6 +13506,7 @@ coin master free
|
|
12957 |
coin master hack
|
12958 |
coin offering
|
12959 |
coin xbox
|
|
|
12960 |
coin-cheat
|
12961 |
coin-cloud
|
12962 |
coin-foot
|
@@ -12969,6 +13519,7 @@ coin-master-free
|
|
12969 |
coin-master-hack
|
12970 |
coin-offering
|
12971 |
coin-xbox
|
|
|
12972 |
coincheat
|
12973 |
coincloud
|
12974 |
coinfoot
|
@@ -13003,8 +13554,11 @@ coinss
|
|
13003 |
coinsxbox
|
13004 |
coinvest
|
13005 |
coinxbox
|
|
|
13006 |
cokment
|
13007 |
colastrina
|
|
|
|
|
13008 |
collectif abssice
|
13009 |
collectif celine
|
13010 |
collectif moncler
|
@@ -13028,10 +13582,14 @@ collectionmoncler
|
|
13028 |
collections-shops
|
13029 |
collections-supply
|
13030 |
collegasintekst
|
|
|
13031 |
college persuasive
|
|
|
13032 |
college-essay
|
|
|
13033 |
college-loan
|
13034 |
college-persuasive
|
|
|
13035 |
collegeessay
|
13036 |
collegeloan
|
13037 |
collezione celine
|
@@ -13210,8 +13768,20 @@ commercemoney
|
|
13210 |
commerceretail
|
13211 |
commercesale
|
13212 |
commercewhole
|
|
|
|
|
|
|
|
|
13213 |
commercial office move
|
|
|
|
|
|
|
|
|
|
|
|
|
13214 |
commercial-office-move
|
|
|
|
|
13215 |
commerical lender
|
13216 |
commerical-lender
|
13217 |
commericallender
|
@@ -13228,11 +13798,13 @@ communal authent
|
|
13228 |
communal-authent
|
13229 |
community.atom
|
13230 |
commutee
|
|
|
13231 |
como facebook
|
13232 |
como ganhar
|
13233 |
como maquiar
|
13234 |
como reconquista
|
13235 |
como trabalhar
|
|
|
13236 |
como-facebook
|
13237 |
como-ganhar
|
13238 |
como-maquiar
|
@@ -13362,7 +13934,9 @@ considerably this blog
|
|
13362 |
considerably this page
|
13363 |
considerably this site
|
13364 |
considerably this web
|
|
|
13365 |
consideration-prior-to
|
|
|
13366 |
considerations-prior-to
|
13367 |
considering-innovation
|
13368 |
consolidation loan
|
@@ -13375,11 +13949,11 @@ construct chicken
|
|
13375 |
construct-chicken
|
13376 |
constructionn
|
13377 |
construtor
|
13378 |
-
consultation
|
13379 |
consultation lawyer
|
13380 |
-
consultation-
|
13381 |
consultation-lawyer
|
13382 |
-
|
13383 |
consultationlawyer
|
13384 |
consulte nuestro servicio
|
13385 |
consumer buzz
|
@@ -13392,6 +13966,8 @@ contactos mujeres
|
|
13392 |
contactos-chico
|
13393 |
contactos-mujeres
|
13394 |
contactus/contact
|
|
|
|
|
13395 |
contemporize the
|
13396 |
contemporizes the
|
13397 |
content ,
|
@@ -13407,6 +13983,10 @@ content-material
|
|
13407 |
content?.
|
13408 |
contents are masterpiece
|
13409 |
contents?.
|
|
|
|
|
|
|
|
|
13410 |
continually have got
|
13411 |
continue assim
|
13412 |
continue-assim
|
@@ -13419,6 +13999,8 @@ contoh plakat
|
|
13419 |
contoh-plakat
|
13420 |
contohplakat
|
13421 |
contratacin
|
|
|
|
|
13422 |
control diet
|
13423 |
control-diet
|
13424 |
controldiet
|
@@ -13454,6 +14036,8 @@ conydot
|
|
13454 |
cooker ninja
|
13455 |
cooker-ninja
|
13456 |
cookerninja
|
|
|
|
|
13457 |
cool article
|
13458 |
cool blog
|
13459 |
cool post
|
@@ -13574,6 +14158,7 @@ costume mari
|
|
13574 |
costume medi
|
13575 |
costume tendance
|
13576 |
costume versace
|
|
|
13577 |
costume- aged
|
13578 |
costume-ermen
|
13579 |
costume-homme
|
@@ -13668,6 +14253,8 @@ couponsense
|
|
13668 |
couponspriv
|
13669 |
courses casino
|
13670 |
courses-casino
|
|
|
|
|
13671 |
couture avec
|
13672 |
couture-avec
|
13673 |
couyld
|
@@ -13792,13 +14379,16 @@ createtee
|
|
13792 |
creating short article
|
13793 |
creation will run
|
13794 |
credit direct
|
|
|
13795 |
credit repair
|
13796 |
credit report
|
13797 |
credit score
|
13798 |
credit_
|
13799 |
credit-card
|
|
|
13800 |
credit-direct
|
13801 |
credit-format
|
|
|
13802 |
credit-repair
|
13803 |
credit-report
|
13804 |
credit-score
|
@@ -13808,6 +14398,54 @@ creditcard.org
|
|
13808 |
creditcard.us
|
13809 |
creditdirect
|
13810 |
creditformat
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13811 |
creditrepair
|
13812 |
creditreport
|
13813 |
creditscore
|
@@ -13846,33 +14484,46 @@ cryp.trade
|
|
13846 |
crypto + bitcoin
|
13847 |
crypto + btc
|
13848 |
crypto + forex
|
|
|
13849 |
crypto bitcoin
|
13850 |
crypto btc
|
13851 |
crypto curren
|
|
|
13852 |
crypto hack
|
13853 |
crypto moneda
|
13854 |
crypto script
|
|
|
13855 |
crypto tab
|
|
|
13856 |
crypto_
|
|
|
13857 |
crypto-bitcoin
|
13858 |
crypto-btc
|
13859 |
crypto-curren
|
|
|
13860 |
crypto-hack
|
13861 |
crypto-moneda
|
13862 |
crypto-script
|
|
|
13863 |
crypto-tab
|
|
|
13864 |
crypto/btc
|
|
|
13865 |
cryptobtc
|
13866 |
cryptocurrency coin
|
|
|
13867 |
cryptocurrency news
|
13868 |
cryptocurrency strat
|
13869 |
cryptocurrency-coin
|
|
|
13870 |
cryptocurrency-news
|
13871 |
cryptocurrency-strat
|
13872 |
cryptohack
|
13873 |
cryptomoneda
|
13874 |
cryptoscript
|
|
|
13875 |
cryptotab
|
|
|
13876 |
crystal hack
|
13877 |
crystal-hack
|
13878 |
crystalhack
|
@@ -14014,9 +14665,15 @@ cuz this
|
|
14014 |
cuz-this
|
14015 |
cv meaning
|
14016 |
cv-meaning
|
|
|
14017 |
cvv shop
|
|
|
|
|
14018 |
cvv-shop
|
|
|
|
|
14019 |
cvvshop
|
|
|
14020 |
çý
|
14021 |
cyber jeunesse
|
14022 |
cyber monday
|
@@ -14070,13 +14727,19 @@ daddy-site
|
|
14070 |
daddy-sitte
|
14071 |
dafeult
|
14072 |
daftar agen
|
|
|
14073 |
daftar harg
|
14074 |
daftar judi
|
14075 |
daftar poke
|
|
|
|
|
14076 |
daftar-agen
|
|
|
14077 |
daftar-harg
|
14078 |
daftar-judi
|
14079 |
daftar-poke
|
|
|
|
|
14080 |
daftaragen
|
14081 |
daftarharg
|
14082 |
daftarjudi
|
@@ -14269,6 +14932,7 @@ day-bountiful
|
|
14269 |
day-diet
|
14270 |
day-lengthy
|
14271 |
day-loubou
|
|
|
14272 |
day. bye
|
14273 |
day.did
|
14274 |
dayloubou
|
@@ -14293,6 +14957,8 @@ de-site
|
|
14293 |
de-tivi
|
14294 |
dead composed subject
|
14295 |
deal benefit
|
|
|
|
|
14296 |
deal of problem
|
14297 |
deal this blog
|
14298 |
deal this page
|
@@ -14302,11 +14968,13 @@ deal-4-u
|
|
14302 |
deal-4u
|
14303 |
deal-benefit
|
14304 |
deal-eu
|
|
|
14305 |
deal-uk
|
14306 |
deal-us
|
14307 |
deal.bl
|
14308 |
deal4u
|
14309 |
dealeu
|
|
|
14310 |
dealongamento
|
14311 |
dealonline
|
14312 |
deals-4-u
|
@@ -14324,9 +14992,9 @@ dealuk
|
|
14324 |
dealus
|
14325 |
dear-lover
|
14326 |
dearlover
|
14327 |
-
death
|
14328 |
death erotic
|
14329 |
-
death-
|
14330 |
death-erotic
|
14331 |
deatherotic
|
14332 |
debt money
|
@@ -14375,6 +15043,7 @@ deficitfight
|
|
14375 |
definate
|
14376 |
definetely
|
14377 |
definitelly
|
|
|
14378 |
degree expert
|
14379 |
degree twenty
|
14380 |
degree-expert
|
@@ -14389,6 +15058,8 @@ dejtingtips
|
|
14389 |
dekorativno prikladno
|
14390 |
dekorativno-prikladno
|
14391 |
del sitio web
|
|
|
|
|
14392 |
deliver noticeable result
|
14393 |
deliver overtly
|
14394 |
deliver result
|
@@ -14399,8 +15070,14 @@ deliverresult
|
|
14399 |
delivers result
|
14400 |
delivers-result
|
14401 |
deliversresult
|
14402 |
-
delivery
|
14403 |
-
delivery
|
|
|
|
|
|
|
|
|
|
|
|
|
14404 |
delta-marketing
|
14405 |
deltamarketing
|
14406 |
deltasone
|
@@ -14414,6 +15091,7 @@ dem-gay
|
|
14414 |
dem-kauf-eines
|
14415 |
dem-tien
|
14416 |
đếm-tiền
|
|
|
14417 |
demo0
|
14418 |
demo1
|
14419 |
demo2
|
@@ -14435,6 +15113,7 @@ deneme icerik
|
|
14435 |
deneme mal
|
14436 |
deneme-icerik
|
14437 |
deneme-mal
|
|
|
14438 |
denschlaf
|
14439 |
dental chat room
|
14440 |
dental guru
|
@@ -14464,14 +15143,37 @@ depart your page
|
|
14464 |
depart your site
|
14465 |
depart your web
|
14466 |
depnhat
|
|
|
|
|
|
|
|
|
14467 |
depoimentos reais
|
14468 |
depoimentos-reais
|
14469 |
deposit casino
|
|
|
14470 |
deposit-casino
|
|
|
14471 |
depositbank
|
14472 |
depositcasino
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14473 |
depression-symptom
|
14474 |
-
depressionsymptom
|
14475 |
derm exclus
|
14476 |
derm-exclus
|
14477 |
dermexclus
|
@@ -14479,7 +15181,6 @@ derniers modele
|
|
14479 |
derniers modèle
|
14480 |
derniers-modele
|
14481 |
derniers-modèle
|
14482 |
-
derniersmodele
|
14483 |
derogatory circum
|
14484 |
derogatory item
|
14485 |
derun escort
|
@@ -14493,6 +15194,9 @@ des-services-web
|
|
14493 |
desconto
|
14494 |
describes feasible
|
14495 |
describes-feasible
|
|
|
|
|
|
|
14496 |
descriptive article
|
14497 |
descriptive blog
|
14498 |
descriptive post
|
@@ -14521,6 +15225,7 @@ design-industrial-design
|
|
14521 |
design-own
|
14522 |
design-product-design
|
14523 |
designcheap
|
|
|
14524 |
designed to me
|
14525 |
designed-to-me
|
14526 |
designeed
|
@@ -14592,6 +15297,8 @@ detskie diskotek
|
|
14592 |
detskie-diskotek
|
14593 |
deutschland-online
|
14594 |
deutschlandonline
|
|
|
|
|
14595 |
development an app
|
14596 |
devenir trade
|
14597 |
devenir-trade
|
@@ -14604,6 +15311,7 @@ devlindesign
|
|
14604 |
dewapoker
|
14605 |
dewelop
|
14606 |
df!
|
|
|
14607 |
dfy suite
|
14608 |
dfy-suite
|
14609 |
dfysuite
|
@@ -14636,6 +15344,7 @@ did yoou
|
|
14636 |
didnít
|
14637 |
didrex online
|
14638 |
didrex-online
|
|
|
14639 |
die kuhlbox
|
14640 |
die kühlbox
|
14641 |
die-kühlbox
|
@@ -14690,10 +15399,20 @@ diet.ctr
|
|
14690 |
diet.htm
|
14691 |
diet.jsp
|
14692 |
diet.php
|
|
|
14693 |
dieta detox
|
|
|
|
|
|
|
14694 |
dieta sofrida
|
|
|
|
|
14695 |
dieta-detox
|
|
|
|
|
|
|
14696 |
dieta-sofrida
|
|
|
14697 |
dietary advice
|
14698 |
dietary advise
|
14699 |
dietary status
|
@@ -14744,6 +15463,9 @@ digicam move
|
|
14744 |
diiclfuf
|
14745 |
diid yoou
|
14746 |
diid you
|
|
|
|
|
|
|
14747 |
dili optim
|
14748 |
dili-optim
|
14749 |
dilioptim
|
@@ -14783,6 +15505,7 @@ disco innovador para
|
|
14783 |
discount afl
|
14784 |
discount anta
|
14785 |
discount bag
|
|
|
14786 |
discount jord
|
14787 |
discount kratom
|
14788 |
discount mbt
|
@@ -14798,6 +15521,7 @@ discount-
|
|
14798 |
discount-afl
|
14799 |
discount-anta
|
14800 |
discount-bag
|
|
|
14801 |
discount-cig
|
14802 |
discount-jord
|
14803 |
discount-kratom
|
@@ -14827,6 +15551,7 @@ discounts-coupon
|
|
14827 |
discountt
|
14828 |
discountugg
|
14829 |
discountwheel
|
|
|
14830 |
discover sociable site
|
14831 |
discover web design
|
14832 |
discovered this blog
|
@@ -14866,6 +15591,11 @@ disfuncao eretil
|
|
14866 |
disfunçăo erétil
|
14867 |
disfuncao-eretil
|
14868 |
disfunçăo-erétil
|
|
|
|
|
|
|
|
|
|
|
14869 |
disney se pega
|
14870 |
disorder quiz
|
14871 |
disorder-quiz
|
@@ -14900,6 +15630,7 @@ divorces-simplif
|
|
14900 |
divulgaemail
|
14901 |
diy divorce
|
14902 |
diy-divorce
|
|
|
14903 |
djstool
|
14904 |
djtool
|
14905 |
đľđ
|
@@ -15056,9 +15787,12 @@ dondash
|
|
15056 |
done a formidable
|
15057 |
done formidable
|
15058 |
done grateful
|
|
|
|
|
15059 |
dong phuc dep
|
15060 |
đồng phục đẹp
|
15061 |
dong-max
|
|
|
15062 |
dong-phuc-dep
|
15063 |
dongmax
|
15064 |
dongphucdep
|
@@ -15079,6 +15813,7 @@ dooes not
|
|
15079 |
dooes-not
|
15080 |
door-blog
|
15081 |
dopamine
|
|
|
15082 |
dora-scrum
|
15083 |
dorascrum
|
15084 |
dos-seios
|
@@ -15180,6 +15915,7 @@ downloadsfree
|
|
15180 |
downloadsonline
|
15181 |
downlowd
|
15182 |
downlown
|
|
|
15183 |
doxycycline
|
15184 |
dr prescription
|
15185 |
dr visit online
|
@@ -15281,6 +16017,7 @@ drivel of an page
|
|
15281 |
drivel of an site
|
15282 |
drivel of an web
|
15283 |
drivewayservice
|
|
|
15284 |
drmarten jap
|
15285 |
drmarten jp
|
15286 |
drmarten uk
|
@@ -15313,7 +16050,6 @@ drop me a mail
|
|
15313 |
drop your premium
|
15314 |
drop,dehy
|
15315 |
drop.dehy
|
15316 |
-
dropshipping winning
|
15317 |
drug buy
|
15318 |
drug cheap
|
15319 |
drug-buy
|
@@ -15324,10 +16060,16 @@ drugcheap
|
|
15324 |
druggz
|
15325 |
drugs buy
|
15326 |
drugs cheap
|
|
|
15327 |
drugs info
|
|
|
|
|
15328 |
drugs-buy
|
15329 |
drugs-cheap
|
|
|
15330 |
drugs-info
|
|
|
|
|
15331 |
drugs. regard
|
15332 |
drugs4u
|
15333 |
drugsbuy
|
@@ -15389,6 +16131,10 @@ duchesssatin
|
|
15389 |
dude.de
|
15390 |
dudes.de
|
15391 |
dugg some
|
|
|
|
|
|
|
|
|
15392 |
dulichtrongoi
|
15393 |
dulichtuxu
|
15394 |
dummytest
|
@@ -15433,8 +16179,8 @@ dvd-asphyx
|
|
15433 |
dvd-erotic
|
15434 |
dvdbox
|
15435 |
dvdrip
|
15436 |
-
dwi-
|
15437 |
-
|
15438 |
dwn.linksind.
|
15439 |
dylongfa
|
15440 |
dynamic advert
|
@@ -15489,6 +16235,7 @@ e| p
|
|
15489 |
e| t
|
15490 |
e2by.in
|
15491 |
eâcute
|
|
|
15492 |
eagerly wiggling
|
15493 |
eagerly-wiggling
|
15494 |
eaglefight.eaglefight
|
@@ -15517,14 +16264,24 @@ ease.in
|
|
15517 |
easier consume
|
15518 |
easier to available
|
15519 |
easily one tight
|
|
|
|
|
15520 |
easy consume
|
15521 |
easy naked
|
|
|
|
|
15522 |
easy with your present
|
|
|
|
|
15523 |
easy-naked
|
|
|
|
|
15524 |
easy.in
|
|
|
15525 |
easyloan
|
15526 |
easynaked
|
15527 |
easyrent
|
|
|
15528 |
eating hemp
|
15529 |
eating-hemp
|
15530 |
eatinghemp
|
@@ -15551,6 +16308,9 @@ ecent yeas
|
|
15551 |
ecig review
|
15552 |
ecig-review
|
15553 |
ecigreview
|
|
|
|
|
|
|
15554 |
ecom email
|
15555 |
ecom success
|
15556 |
ecom-email
|
@@ -15609,6 +16369,7 @@ egypt-jers
|
|
15609 |
egyptjers
|
15610 |
ehttp
|
15611 |
eight %
|
|
|
15612 |
eine seite widmen
|
15613 |
einkommen
|
15614 |
ejaculate help
|
@@ -15635,6 +16396,9 @@ ejuicereview
|
|
15635 |
ekologiczne logo
|
15636 |
ekologiczne-logo
|
15637 |
ekorting
|
|
|
|
|
|
|
15638 |
ekskluzywne zestaw
|
15639 |
ekskluzywne-zestaw
|
15640 |
ekspedisi murah
|
@@ -15661,6 +16425,8 @@ elegant-bodycon
|
|
15661 |
elektrik malzeme
|
15662 |
elektrik-malzeme
|
15663 |
elektrikmalzeme
|
|
|
|
|
15664 |
elementary entry
|
15665 |
elementary-entry
|
15666 |
eli online
|
@@ -15693,6 +16459,7 @@ elitesample
|
|
15693 |
elitescort
|
15694 |
eliteskort
|
15695 |
elitewom
|
|
|
15696 |
eloans
|
15697 |
elsa-dress
|
15698 |
elveda canimin
|
@@ -15700,8 +16467,25 @@ elveda-canimin
|
|
15700 |
elway jers
|
15701 |
elway-jers
|
15702 |
elwayjers
|
|
|
|
|
|
|
|
|
|
|
15703 |
emagrecer podem
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15704 |
emagrecer-podem
|
|
|
|
|
|
|
15705 |
email academy
|
15706 |
email advertis
|
15707 |
email advertiz
|
@@ -15760,8 +16544,12 @@ empower-network
|
|
15760 |
empowernetwork
|
15761 |
empreendedor
|
15762 |
empresa de referencia
|
|
|
|
|
15763 |
empresa familiar nacida
|
15764 |
empresa grande
|
|
|
|
|
15765 |
empresa-grande
|
15766 |
empresas grande
|
15767 |
empresas-grande
|
@@ -15790,9 +16578,17 @@ encouirag
|
|
15790 |
endlaved
|
15791 |
endocrinol meta
|
15792 |
endocrinol-meta
|
|
|
|
|
|
|
|
|
|
|
15793 |
energetic article
|
15794 |
energetic blog
|
|
|
15795 |
energetic post
|
|
|
|
|
15796 |
energetic-article
|
15797 |
energetic-blog
|
15798 |
energetic-post
|
@@ -15815,6 +16611,7 @@ eng/private
|
|
15815 |
engagementring
|
15816 |
engagermate
|
15817 |
engagge
|
|
|
15818 |
engine account
|
15819 |
engine online
|
15820 |
engine optim
|
@@ -15857,11 +16654,13 @@ enhancementpill
|
|
15857 |
enhancepill
|
15858 |
enhanceyou
|
15859 |
enhttp
|
|
|
15860 |
enjoy your blog
|
15861 |
enjoy your page
|
15862 |
enjoy your post
|
15863 |
enjoy your site
|
15864 |
enjoy your web
|
|
|
15865 |
enjoy-more
|
15866 |
enjoying by these
|
15867 |
enjoying by this
|
@@ -15939,6 +16738,7 @@ equipement manufact
|
|
15939 |
equipement-manufact
|
15940 |
equipment manufact
|
15941 |
equipment-manufact
|
|
|
15942 |
equivalentt
|
15943 |
era afl
|
15944 |
era mlb
|
@@ -16029,6 +16829,8 @@ erotik
|
|
16029 |
erotischer reife
|
16030 |
erotischer-reife
|
16031 |
erotyczna
|
|
|
|
|
16032 |
eryaman escort
|
16033 |
eryaman eskort
|
16034 |
eryaman-escort
|
@@ -16341,7 +17143,7 @@ every info
|
|
16341 |
every stuff
|
16342 |
every wearer
|
16343 |
every-advert
|
16344 |
-
every-great-
|
16345 |
every-info
|
16346 |
every-leg
|
16347 |
every-light
|
@@ -16360,7 +17162,10 @@ everyone furthermore
|
|
16360 |
everyone-furthermore
|
16361 |
everypant
|
16362 |
everysock
|
|
|
|
|
16363 |
everything-dental
|
|
|
16364 |
everythingdental
|
16365 |
everythink
|
16366 |
everytight
|
@@ -16382,6 +17187,7 @@ excelent
|
|
16382 |
excellent article
|
16383 |
excellent blog
|
16384 |
excellent content
|
|
|
16385 |
excellent gift for
|
16386 |
excellent gifts for
|
16387 |
excellent movie clip
|
@@ -16432,9 +17238,7 @@ excessively skill
|
|
16432 |
excessively-skill
|
16433 |
exchange buying and selling
|
16434 |
exchange link
|
16435 |
-
exchange paysafecard
|
16436 |
exchange-link
|
16437 |
-
exchange-paysafecard
|
16438 |
exchangelink
|
16439 |
exchanging link
|
16440 |
exchanging-link
|
@@ -16456,6 +17260,12 @@ executivecoach
|
|
16456 |
exelon
|
16457 |
exercice
|
16458 |
exgirlfriend
|
|
|
|
|
|
|
|
|
|
|
|
|
16459 |
exists lots
|
16460 |
exit.asp
|
16461 |
exmo.co
|
@@ -16471,11 +17281,14 @@ experience boat
|
|
16471 |
experience simply
|
16472 |
experience-boat
|
16473 |
experience-simply
|
16474 |
-
experienced
|
16475 |
-
experienced
|
|
|
|
|
16476 |
experiencia en el sector
|
16477 |
expert presence
|
16478 |
expert suggestion
|
|
|
16479 |
expert writing
|
16480 |
expert-presence
|
16481 |
expert-suggestion
|
@@ -16533,6 +17346,7 @@ externer-link
|
|
16533 |
extra 10 discount
|
16534 |
extra 20 discount
|
16535 |
extra gry
|
|
|
16536 |
extract cbd
|
16537 |
extract pill
|
16538 |
extract-cbd
|
@@ -16543,10 +17357,13 @@ extremely ample
|
|
16543 |
extremely broad for
|
16544 |
extremely much
|
16545 |
extremely superb
|
|
|
16546 |
extremely valid point
|
|
|
16547 |
extremely-ample
|
16548 |
extremely-much
|
16549 |
extremely-superb
|
|
|
16550 |
extremely}
|
16551 |
extremley
|
16552 |
extremrly
|
@@ -16791,10 +17608,13 @@ familiarity daily
|
|
16791 |
family motor vehicle
|
16792 |
family-motor-vehicle
|
16793 |
famous blog
|
|
|
16794 |
famous palmist
|
16795 |
-
famous social
|
16796 |
famous-blog
|
|
|
16797 |
famous-palmist
|
|
|
16798 |
fan hack
|
16799 |
fan-hack
|
16800 |
fanalert
|
@@ -16903,6 +17723,7 @@ fashion comp
|
|
16903 |
fashion hair
|
16904 |
fashion list
|
16905 |
fashion men
|
|
|
16906 |
fashion store
|
16907 |
fashion trend
|
16908 |
fashion web
|
@@ -16914,6 +17735,7 @@ fashion-compan
|
|
16914 |
fashion-hair
|
16915 |
fashion-list
|
16916 |
fashion-men
|
|
|
16917 |
fashion-store
|
16918 |
fashion-trend
|
16919 |
fashion-web
|
@@ -16992,7 +17814,7 @@ fastidious post
|
|
16992 |
fastidious repl
|
16993 |
fastidious respo
|
16994 |
fastidious site
|
16995 |
-
fastidious
|
16996 |
fastidious thou
|
16997 |
fastidious under
|
16998 |
fastidious urg
|
@@ -17015,7 +17837,7 @@ fastidious-post
|
|
17015 |
fastidious-repl
|
17016 |
fastidious-respo
|
17017 |
fastidious-site
|
17018 |
-
fastidious-
|
17019 |
fastidious-thou
|
17020 |
fastidious-under
|
17021 |
fastidious-urg
|
@@ -17023,6 +17845,7 @@ fastidious-web
|
|
17023 |
fastidious-writ
|
17024 |
fastidious, my
|
17025 |
fastidious=
|
|
|
17026 |
fastlink.run
|
17027 |
fastloan
|
17028 |
fastmoney
|
@@ -17295,6 +18118,8 @@ fetishman
|
|
17295 |
fetishmen
|
17296 |
fetishsex
|
17297 |
fetishwom
|
|
|
|
|
17298 |
few web log
|
17299 |
few web page
|
17300 |
few web site
|
@@ -17364,6 +18189,7 @@ filenamedat
|
|
17364 |
filenamesdat
|
17365 |
files/new
|
17366 |
filestube
|
|
|
17367 |
film erotic
|
17368 |
film it would also
|
17369 |
film izle
|
@@ -17374,6 +18200,7 @@ film semi
|
|
17374 |
film song download
|
17375 |
film streaming complet
|
17376 |
film x
|
|
|
17377 |
film-erotic
|
17378 |
film-izle
|
17379 |
film-kovasi
|
@@ -17387,6 +18214,7 @@ filmakinesi
|
|
17387 |
filmerotic
|
17388 |
filmizle
|
17389 |
filmkovasi
|
|
|
17390 |
filmmodu
|
17391 |
filmporn
|
17392 |
films enables
|
@@ -17420,6 +18248,7 @@ finance blog
|
|
17420 |
finance cash
|
17421 |
finance debt
|
17422 |
finance emerg
|
|
|
17423 |
finance service
|
17424 |
finance solution
|
17425 |
finance-
|
@@ -17428,6 +18257,7 @@ finance-cash
|
|
17428 |
finance-debt
|
17429 |
finance-emerg
|
17430 |
finance-pak
|
|
|
17431 |
finance-service
|
17432 |
finance-solution
|
17433 |
financeblog
|
@@ -17518,6 +18348,12 @@ finite-instant
|
|
17518 |
finiteinstant
|
17519 |
finnd out
|
17520 |
fioricet
|
|
|
|
|
|
|
|
|
|
|
|
|
17521 |
firefox-setting
|
17522 |
firefoxik
|
17523 |
firefoxsetting
|
@@ -17579,8 +18415,10 @@ fiverr
|
|
17579 |
fiverseller
|
17580 |
fivestardoll
|
17581 |
fix credit
|
|
|
17582 |
fix-credit
|
17583 |
fix-iphone
|
|
|
17584 |
fixcredit
|
17585 |
fixed credit
|
17586 |
fixed footbal
|
@@ -17597,6 +18435,7 @@ fixing credit
|
|
17597 |
fixing-credit
|
17598 |
fixingcredit
|
17599 |
fixiphone
|
|
|
17600 |
fj.o.g.a
|
17601 |
fj.o.ga
|
17602 |
fj.og.a
|
@@ -17621,6 +18460,10 @@ flashy fancy
|
|
17621 |
flat belly tonic
|
17622 |
flat-belly-tonic
|
17623 |
flats.web
|
|
|
|
|
|
|
|
|
17624 |
fler artiklar
|
17625 |
fler-artiklar
|
17626 |
flex-global
|
@@ -17641,8 +18484,16 @@ flo-wiki
|
|
17641 |
floating-board
|
17642 |
floatingboard
|
17643 |
floridaflee
|
|
|
|
|
|
|
|
|
|
|
|
|
17644 |
flowers-on-line
|
17645 |
flowers-online
|
|
|
|
|
17646 |
floxacin
|
17647 |
fluccun
|
17648 |
fluconazole
|
@@ -17745,6 +18596,7 @@ footwearjord
|
|
17745 |
footwearmbt
|
17746 |
footwears
|
17747 |
for a article
|
|
|
17748 |
for black mans
|
17749 |
for black mens
|
17750 |
for black womans
|
@@ -17921,7 +18773,10 @@ forteinfo
|
|
17921 |
fortemuscle
|
17922 |
forteparafon
|
17923 |
forthcoming post
|
|
|
17924 |
forthcoming-post
|
|
|
|
|
17925 |
fortnite aimbot
|
17926 |
fortnite cheat
|
17927 |
fortnite hack
|
@@ -17950,6 +18805,7 @@ forumcoach
|
|
17950 |
forumizmit
|
17951 |
forums.real
|
17952 |
forums.thank
|
|
|
17953 |
forwarding-parcel-forward
|
17954 |
forwholesale
|
17955 |
forwindows8
|
@@ -18036,6 +18892,7 @@ free crypto
|
|
18036 |
free csgo
|
18037 |
free diamond
|
18038 |
free download
|
|
|
18039 |
free escort
|
18040 |
free eskort
|
18041 |
free facebook
|
@@ -18045,7 +18902,9 @@ free flyer make
|
|
18045 |
free gay
|
18046 |
free hack
|
18047 |
free hip hop
|
|
|
18048 |
free if you win
|
|
|
18049 |
free instagram
|
18050 |
free internation
|
18051 |
free ios
|
@@ -18059,6 +18918,7 @@ free mobil
|
|
18059 |
free money
|
18060 |
free new year
|
18061 |
free new yr
|
|
|
18062 |
free number
|
18063 |
free on-line
|
18064 |
free online
|
@@ -18076,15 +18936,18 @@ free robux
|
|
18076 |
free sex
|
18077 |
free simple
|
18078 |
free skins
|
|
|
18079 |
free spin link
|
18080 |
free spins link
|
18081 |
free strat
|
18082 |
free super
|
18083 |
free tarot
|
|
|
18084 |
free to surf
|
18085 |
free too surf
|
18086 |
free trap ins
|
18087 |
free trial incent
|
|
|
18088 |
free v buck
|
18089 |
free visit
|
18090 |
free watch
|
@@ -18108,6 +18971,7 @@ free-crypto
|
|
18108 |
free-csgo
|
18109 |
free-diamond
|
18110 |
free-download
|
|
|
18111 |
free-escort
|
18112 |
free-eskort
|
18113 |
free-facebook
|
@@ -18120,6 +18984,8 @@ free-gold
|
|
18120 |
free-hack
|
18121 |
free-hemp
|
18122 |
free-hip-hop
|
|
|
|
|
18123 |
free-instagram
|
18124 |
free-internation
|
18125 |
free-ios
|
@@ -18138,6 +19004,7 @@ free-mods
|
|
18138 |
free-movie
|
18139 |
free-mp3
|
18140 |
free-mp4
|
|
|
18141 |
free-number
|
18142 |
free-offer
|
18143 |
free-on-line
|
@@ -18159,12 +19026,15 @@ free-service
|
|
18159 |
free-sex
|
18160 |
free-simple
|
18161 |
free-skins
|
|
|
18162 |
free-spin-link
|
18163 |
free-spins-link
|
18164 |
free-strat
|
18165 |
free-super
|
18166 |
free-tarot
|
|
|
18167 |
free-trial-incent
|
|
|
18168 |
free-v-buck
|
18169 |
free-v-bucks
|
18170 |
free-watch
|
@@ -18194,13 +19064,16 @@ freedom-review
|
|
18194 |
freedomevaluation
|
18195 |
freedomreview
|
18196 |
freedownload
|
|
|
18197 |
freeescort
|
18198 |
freeeskort
|
18199 |
freefor.co
|
18200 |
freefortnite
|
18201 |
freegay
|
18202 |
freegold
|
|
|
18203 |
freehub
|
|
|
18204 |
freeinternation
|
18205 |
freeipad
|
18206 |
freeiphone
|
@@ -18224,6 +19097,7 @@ freemovie
|
|
18224 |
freemp3
|
18225 |
freemp4
|
18226 |
freenom.link
|
|
|
18227 |
freeoffer
|
18228 |
freeonline
|
18229 |
freepokecoin
|
@@ -18274,9 +19148,9 @@ fresh-weblog
|
|
18274 |
freshreview
|
18275 |
freshseo
|
18276 |
freshwaterpearl
|
18277 |
-
friday 2019
|
18278 |
friday 2020
|
18279 |
friday 2021
|
|
|
18280 |
friday michael
|
18281 |
friday mlb
|
18282 |
friday moncler
|
@@ -18287,9 +19161,9 @@ friday nhl
|
|
18287 |
friday sale
|
18288 |
friday ugg
|
18289 |
friday watch
|
18290 |
-
friday-2019
|
18291 |
friday-2020
|
18292 |
friday-2021
|
|
|
18293 |
friday-michael
|
18294 |
friday-mlb
|
18295 |
friday-moncler
|
@@ -18300,9 +19174,9 @@ friday-nhl
|
|
18300 |
friday-sale
|
18301 |
friday-ugg
|
18302 |
friday-watch
|
18303 |
-
friday2019
|
18304 |
friday2020
|
18305 |
friday2021
|
|
|
18306 |
fridaymlb
|
18307 |
fridaymoncler
|
18308 |
fridaynba
|
@@ -18431,20 +19305,28 @@ ful-malware
|
|
18431 |
fulgor fantastic
|
18432 |
fulgor fantástic
|
18433 |
fulgor-fantastic
|
|
|
18434 |
full download page
|
18435 |
full length motion
|
18436 |
full length movie
|
18437 |
full length-motion
|
18438 |
full movie
|
18439 |
full porn
|
|
|
|
|
18440 |
full-house-for-rent
|
18441 |
full-length-movie
|
18442 |
full-movie
|
18443 |
full-porn
|
18444 |
full.com/watch
|
18445 |
full4k
|
|
|
|
|
18446 |
fullmovie
|
18447 |
fullporn
|
|
|
|
|
|
|
18448 |
fulmalware
|
18449 |
fun teaser with
|
18450 |
fun-88
|
@@ -18526,9 +19408,13 @@ further former
|
|
18526 |
further-former
|
18527 |
furworld.ru
|
18528 |
furworld.su
|
|
|
|
|
18529 |
futbol barcelona
|
|
|
18530 |
futbol-barcelona
|
18531 |
futbol/forum
|
|
|
18532 |
futbolbarcelona
|
18533 |
futuristic-market
|
18534 |
futuristicmarket
|
@@ -18627,23 +19513,30 @@ galleryworld
|
|
18627 |
gamble online
|
18628 |
gamble-online
|
18629 |
gambleonline
|
|
|
18630 |
gambling casino
|
18631 |
gambling game
|
18632 |
gambling online
|
|
|
18633 |
gambling-4-u
|
18634 |
gambling-4u
|
|
|
18635 |
gambling-casino
|
18636 |
gambling-game
|
18637 |
gambling-online
|
|
|
18638 |
gambling4u
|
18639 |
gamblingcasino
|
18640 |
gamblinggame
|
18641 |
gamblingonline
|
|
|
18642 |
game bong
|
18643 |
game casino
|
|
|
18644 |
game ionline
|
18645 |
game jers
|
18646 |
game online
|
|
|
18647 |
game status system
|
18648 |
game torrent
|
18649 |
game wiki
|
@@ -18652,10 +19545,12 @@ game-casino
|
|
18652 |
game-copy
|
18653 |
game-full-online
|
18654 |
game-game
|
|
|
18655 |
game-ionline
|
18656 |
game-jers
|
18657 |
game-money
|
18658 |
game-online
|
|
|
18659 |
game-torrent
|
18660 |
game-wiki
|
18661 |
game,arcad
|
@@ -18674,6 +19569,7 @@ gamecube-game
|
|
18674 |
gamedesigndegree
|
18675 |
gamefullonline
|
18676 |
gamegame
|
|
|
18677 |
gameionline
|
18678 |
gamejers
|
18679 |
gamemoney
|
@@ -18728,11 +19624,16 @@ ganoolq
|
|
18728 |
gaogb
|
18729 |
gaoland
|
18730 |
gapscent
|
|
|
18731 |
garantizadas por escrito
|
18732 |
garantizar la calidad
|
18733 |
garantizar product
|
18734 |
garantizar-product
|
|
|
|
|
|
|
18735 |
garcinia
|
|
|
18736 |
garena free
|
18737 |
garena-free
|
18738 |
garenafree
|
@@ -18759,6 +19660,9 @@ gathering-utile
|
|
18759 |
gau bong dore
|
18760 |
gấu bông dore
|
18761 |
gau-bong-dore
|
|
|
|
|
|
|
18762 |
gawab.com
|
18763 |
gay cartoon
|
18764 |
gay chat
|
@@ -18875,15 +19779,15 @@ generatingmoney
|
|
18875 |
generatingprofit
|
18876 |
generation algorithm
|
18877 |
generation-algorithm
|
18878 |
-
generator 2019
|
18879 |
generator 2020
|
18880 |
generator 2021
|
18881 |
-
generator
|
18882 |
generator-2020
|
18883 |
generator-2021
|
18884 |
-
|
18885 |
generator2020
|
18886 |
generator2021
|
|
|
18887 |
generatorpro
|
18888 |
generic albenda
|
18889 |
generic albenza
|
@@ -18912,6 +19816,7 @@ genuinely fruit
|
|
18912 |
genuinely good thing
|
18913 |
genuinely great info
|
18914 |
genuinely health
|
|
|
18915 |
genuinely very help
|
18916 |
genuinely-fantas
|
18917 |
genuinely-fastidious
|
@@ -18948,8 +19853,10 @@ get blog
|
|
18948 |
get bytecoin
|
18949 |
get face
|
18950 |
get fastidious
|
|
|
18951 |
get fuck
|
18952 |
get hold this
|
|
|
18953 |
get know how
|
18954 |
get know-how
|
18955 |
get litecoin
|
@@ -18967,6 +19874,7 @@ get tinder
|
|
18967 |
get tthe
|
18968 |
get tthis
|
18969 |
get v buck
|
|
|
18970 |
get yours here
|
18971 |
get_rid
|
18972 |
get_started
|
@@ -18980,6 +19888,7 @@ get-cash
|
|
18980 |
get-face
|
18981 |
get-fantastic
|
18982 |
get-fastidious
|
|
|
18983 |
get-fuck
|
18984 |
get-hermes
|
18985 |
get-know-how
|
@@ -19000,7 +19909,9 @@ get-some-cash
|
|
19000 |
get-the-answer
|
19001 |
get-tinder
|
19002 |
get-translate
|
|
|
19003 |
get-widget
|
|
|
19004 |
getaloan
|
19005 |
getastyle
|
19006 |
getbitcoin
|
@@ -19031,6 +19942,7 @@ getting-ranks
|
|
19031 |
getting-thought
|
19032 |
gettingknowledge
|
19033 |
gettranslate
|
|
|
19034 |
getwidget
|
19035 |
getyou.asp
|
19036 |
gezichtsbehand
|
@@ -19084,7 +19996,10 @@ gifts4promo
|
|
19084 |
giftsclick
|
19085 |
giftsingapore
|
19086 |
giftssingapore
|
|
|
|
|
19087 |
gigantix.co
|
|
|
19088 |
gikves
|
19089 |
gilet moncler
|
19090 |
gilet-moncler
|
@@ -19262,6 +20177,8 @@ giveaway win
|
|
19262 |
giveaway-win
|
19263 |
giveaway! win
|
19264 |
gives fastidious
|
|
|
|
|
19265 |
gives quality base
|
19266 |
gives-fastidious
|
19267 |
gkhk
|
@@ -19298,6 +20215,7 @@ globalnpn
|
|
19298 |
glubokoye glot
|
19299 |
glubokoye-glot
|
19300 |
glucophage
|
|
|
19301 |
glutamina
|
19302 |
glyburide
|
19303 |
gma1l
|
@@ -19543,6 +20461,7 @@ goodtemplate
|
|
19543 |
goog even
|
19544 |
goog luck
|
19545 |
goog-luck
|
|
|
19546 |
google bind
|
19547 |
google click
|
19548 |
google for-
|
@@ -19564,6 +20483,7 @@ google saya
|
|
19564 |
google solution
|
19565 |
google us
|
19566 |
google voice pva
|
|
|
19567 |
google-bind
|
19568 |
google-click
|
19569 |
google-fuck
|
@@ -19706,6 +20626,22 @@ gooseyork
|
|
19706 |
gooseyouth
|
19707 |
gopgle
|
19708 |
goping to
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19709 |
gorgeous elegant
|
19710 |
gorgeous escort
|
19711 |
gorgeous eskort
|
@@ -19714,6 +20650,9 @@ gorgeous-escort
|
|
19714 |
gorgeous-eskort
|
19715 |
gorgeousescort
|
19716 |
gorgeouseskort
|
|
|
|
|
|
|
19717 |
gosgov
|
19718 |
goshop.
|
19719 |
gossip posted
|
@@ -19744,6 +20683,8 @@ gotta favorite
|
|
19744 |
gotta favourite
|
19745 |
gotten the therap
|
19746 |
gotten very good thing
|
|
|
|
|
19747 |
gowatchs
|
19748 |
gown love
|
19749 |
gown online
|
@@ -19787,6 +20728,7 @@ grafik-emas
|
|
19787 |
gran calidad
|
19788 |
gran experiencia dentro
|
19789 |
gran experiencia en
|
|
|
19790 |
gran flexibilidad
|
19791 |
gran-calidad
|
19792 |
grand opening giveaway
|
@@ -19807,6 +20749,8 @@ granny porn
|
|
19807 |
granny-porn
|
19808 |
grannyporn
|
19809 |
grateest
|
|
|
|
|
19810 |
gratis coin
|
19811 |
gratis online
|
19812 |
gratis sex
|
@@ -20065,6 +21009,10 @@ growth hormone
|
|
20065 |
growth-hormone
|
20066 |
growthhormone
|
20067 |
grsentas
|
|
|
|
|
|
|
|
|
20068 |
gruppmeddelanden
|
20069 |
gruppo gucci
|
20070 |
gruppo-gucci
|
@@ -20212,6 +21160,9 @@ gung-online
|
|
20212 |
gunler bayim
|
20213 |
gunler-bayim
|
20214 |
guns for sale
|
|
|
|
|
|
|
20215 |
gunstig kaufen
|
20216 |
günstig kaufen
|
20217 |
gunstig-kaufen
|
@@ -20233,6 +21184,8 @@ guys porn
|
|
20233 |
guys-porn
|
20234 |
guysporn
|
20235 |
guyys
|
|
|
|
|
20236 |
gyslera
|
20237 |
gⲟ
|
20238 |
gо
|
@@ -20244,9 +21197,9 @@ haarige-beichte
|
|
20244 |
habitof
|
20245 |
hack $
|
20246 |
hack 123
|
20247 |
-
hack 2019
|
20248 |
hack 2020
|
20249 |
hack 2021
|
|
|
20250 |
hack android
|
20251 |
hack apk
|
20252 |
hack blog
|
@@ -20265,6 +21218,7 @@ hack gears pop
|
|
20265 |
hack generat
|
20266 |
hack get
|
20267 |
hack glitch
|
|
|
20268 |
hack instagram
|
20269 |
hack instant
|
20270 |
hack ios
|
@@ -20284,9 +21238,9 @@ hack unlimit
|
|
20284 |
hack web
|
20285 |
hack xyz
|
20286 |
hack-123
|
20287 |
-
hack-2019
|
20288 |
hack-2020
|
20289 |
hack-2021
|
|
|
20290 |
hack-android
|
20291 |
hack-apk
|
20292 |
hack-blog
|
@@ -20308,6 +21262,7 @@ hack-gem
|
|
20308 |
hack-generat
|
20309 |
hack-get
|
20310 |
hack-glitch
|
|
|
20311 |
hack-instagram
|
20312 |
hack-instant
|
20313 |
hack-ios
|
@@ -20333,9 +21288,9 @@ hack-zip
|
|
20333 |
hack.blog
|
20334 |
hack.web
|
20335 |
hack123
|
20336 |
-
hack2019
|
20337 |
hack2020
|
20338 |
hack2021
|
|
|
20339 |
hackandroid
|
20340 |
hackapk
|
20341 |
hackasphalt
|
@@ -20351,6 +21306,7 @@ hacker123
|
|
20351 |
hackface
|
20352 |
hackfb
|
20353 |
hackgem
|
|
|
20354 |
hacking 123
|
20355 |
hacking-123
|
20356 |
hacking123
|
@@ -20484,9 +21440,21 @@ hangingwithfriend
|
|
20484 |
haohao
|
20485 |
happens you are deal
|
20486 |
happy and ready
|
|
|
|
|
|
|
|
|
20487 |
happy fresh year
|
20488 |
happy tht
|
|
|
|
|
|
|
|
|
|
|
20489 |
happybirthday1
|
|
|
|
|
|
|
20490 |
happychristmasimage
|
20491 |
haraka black
|
20492 |
haraka-black
|
@@ -20502,8 +21470,10 @@ hardy-jean
|
|
20502 |
hardyhuppari
|
20503 |
hardyjean
|
20504 |
harga emas
|
|
|
20505 |
harga plakat
|
20506 |
harga-emas
|
|
|
20507 |
harga-plakat
|
20508 |
harnessedthem
|
20509 |
hartmann repeated
|
@@ -20568,6 +21538,9 @@ hawks jers
|
|
20568 |
hawks-jers
|
20569 |
hawksjers
|
20570 |
hay 100 localidad
|
|
|
|
|
|
|
20571 |
hɑ
|
20572 |
hcg boost
|
20573 |
hcg-boost
|
@@ -20600,17 +21573,18 @@ hdwallst
|
|
20600 |
hdzfilm
|
20601 |
he contact admin
|
20602 |
he is discussing online
|
|
|
20603 |
heading out throughout
|
20604 |
headphone power cord
|
20605 |
-
headset 2019
|
20606 |
headset 2020
|
20607 |
headset 2021
|
20608 |
-
headset
|
20609 |
headset-2020
|
20610 |
headset-2021
|
20611 |
-
|
20612 |
headset2020
|
20613 |
headset2021
|
|
|
20614 |
healing-article
|
20615 |
healingindu
|
20616 |
health advis
|
@@ -20644,6 +21618,11 @@ healthrecipe
|
|
20644 |
healthrelated
|
20645 |
healthstock
|
20646 |
healthsuppl
|
|
|
|
|
|
|
|
|
|
|
20647 |
heart food consult
|
20648 |
heart site
|
20649 |
heart-food-consult
|
@@ -20651,6 +21630,8 @@ heart-site
|
|
20651 |
hearted web
|
20652 |
hearted-web
|
20653 |
heartsite
|
|
|
|
|
20654 |
hedge fund
|
20655 |
hedge-fund
|
20656 |
heel ped
|
@@ -20719,7 +21700,25 @@ hello, it’s me
|
|
20719 |
hello, its good
|
20720 |
hello, its me
|
20721 |
hello, please suggest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20722 |
hello!my
|
|
|
|
|
|
|
|
|
|
|
|
|
20723 |
hello.this
|
20724 |
helloadmin
|
20725 |
hellobonus
|
@@ -20779,6 +21778,7 @@ hemp-tycoon
|
|
20779 |
hence choose
|
20780 |
hentai
|
20781 |
heook
|
|
|
20782 |
hepcinat
|
20783 |
her escort
|
20784 |
her eskort
|
@@ -20968,7 +21968,37 @@ hi, it’s good
|
|
20968 |
hi, it’s me
|
20969 |
hi, its good
|
20970 |
hi, its me
|
|
|
|
|
|
|
|
|
|
|
20971 |
hi, yup
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20972 |
hidro-ponik
|
20973 |
hidroponik
|
20974 |
hien nay
|
@@ -21250,6 +22280,12 @@ hollistertiendas
|
|
21250 |
hollisteruk
|
21251 |
hollywood-online
|
21252 |
hollywoodonline
|
|
|
|
|
|
|
|
|
|
|
|
|
21253 |
home online
|
21254 |
home-based
|
21255 |
home-loan
|
@@ -21312,6 +22348,8 @@ hoodie-cheap
|
|
21312 |
hoodiecheap
|
21313 |
hoody-cheap
|
21314 |
hoodycheap
|
|
|
|
|
21315 |
hookup0
|
21316 |
hookup1
|
21317 |
hookup2
|
@@ -21322,8 +22360,10 @@ hookup6
|
|
21322 |
hookup7
|
21323 |
hookup8
|
21324 |
hookup9
|
|
|
21325 |
hoolgain
|
21326 |
hoolz
|
|
|
21327 |
hootel
|
21328 |
hoow is
|
21329 |
hop dong kinh
|
@@ -21336,6 +22376,8 @@ hormônio masculin
|
|
21336 |
hormonio-masculin
|
21337 |
horoscopes
|
21338 |
horoskop
|
|
|
|
|
21339 |
horsesimul
|
21340 |
host seller
|
21341 |
host-file
|
@@ -21460,6 +22502,7 @@ house.cozy
|
|
21460 |
houseforsale
|
21461 |
housesforsale
|
21462 |
housing final even
|
|
|
21463 |
hover-glide
|
21464 |
hover-shop
|
21465 |
hoverboard 360
|
@@ -21506,6 +22549,8 @@ how to make $
|
|
21506 |
how would certain
|
21507 |
how_do
|
21508 |
howdy just wanted
|
|
|
|
|
21509 |
however before
|
21510 |
however good topic
|
21511 |
however great topic
|
@@ -21568,6 +22613,8 @@ https//
|
|
21568 |
httpshttp
|
21569 |
httpswww
|
21570 |
httpwww
|
|
|
|
|
21571 |
huay-today
|
21572 |
huaytoday
|
21573 |
huge 100%
|
@@ -21610,7 +22657,18 @@ husky lips
|
|
21610 |
hut,hang
|
21611 |
hut.hang
|
21612 |
hyclate
|
21613 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21614 |
hydrocodone
|
21615 |
hydroponicsys
|
21616 |
hydroxatone
|
@@ -21662,6 +22720,7 @@ i'd care to find
|
|
21662 |
i'd hump to
|
21663 |
i'll bookmark and
|
21664 |
i'm bookmarking and
|
|
|
21665 |
i'm will soon
|
21666 |
i'mnot
|
21667 |
i'v got
|
@@ -21671,6 +22730,7 @@ i’d care to find
|
|
21671 |
i’d hump to
|
21672 |
i’ll bookmark and
|
21673 |
i’m bookmarking and
|
|
|
21674 |
i’m will soon
|
21675 |
i’mn
|
21676 |
i’ts
|
@@ -21683,6 +22743,7 @@ ia€?ll
|
|
21683 |
iamimport
|
21684 |
icon/set
|
21685 |
icons/set
|
|
|
21686 |
idanmark
|
21687 |
idea for your blog
|
21688 |
idea for your page
|
@@ -21704,6 +22765,7 @@ idenfify
|
|
21704 |
idm crack
|
21705 |
idm-crack
|
21706 |
idmcrack
|
|
|
21707 |
if like it
|
21708 |
if you're.
|
21709 |
if you’re.
|
@@ -21752,6 +22814,7 @@ illusion origami
|
|
21752 |
illusion-origami
|
21753 |
im grateful
|
21754 |
im happy
|
|
|
21755 |
im looking
|
21756 |
im not
|
21757 |
im please
|
@@ -21827,6 +22890,12 @@ imoniu pardavimas
|
|
21827 |
įmonių pardavimas
|
21828 |
imoniu-pardavimas
|
21829 |
impact knowledge of
|
|
|
|
|
|
|
|
|
|
|
|
|
21830 |
implanty
|
21831 |
impoirtant
|
21832 |
imporrtant
|
@@ -21834,9 +22903,9 @@ import game off
|
|
21834 |
import games off
|
21835 |
important be know
|
21836 |
important infos
|
21837 |
-
important-in-2019
|
21838 |
important-in-2020
|
21839 |
important-in-2021
|
|
|
21840 |
important-infos
|
21841 |
impregnacji
|
21842 |
impressive article
|
@@ -21868,6 +22937,7 @@ improves reminiscence
|
|
21868 |
imptortant
|
21869 |
imqge
|
21870 |
imtmdiae
|
|
|
21871 |
in a ll
|
21872 |
in blog commenting
|
21873 |
in delicious
|
@@ -22001,9 +23071,11 @@ indited subject
|
|
22001 |
individual friendly
|
22002 |
individual pleasant
|
22003 |
individual stuffs
|
|
|
22004 |
individual-friendly
|
22005 |
individual-pleasant
|
22006 |
individual-stuffs
|
|
|
22007 |
indo blackjack
|
22008 |
indo casino
|
22009 |
indo-blackjack
|
@@ -22012,10 +23084,13 @@ indoblackjack
|
|
22012 |
indocasino
|
22013 |
indonesia blackjack
|
22014 |
indonesia casino
|
|
|
22015 |
indonesia-blackjack
|
22016 |
indonesia-casino
|
|
|
22017 |
indonesiablackjack
|
22018 |
indonesiacasino
|
|
|
22019 |
indownload
|
22020 |
indre pengemark
|
22021 |
indre-pengemark
|
@@ -22044,6 +23119,12 @@ infected-almost
|
|
22044 |
infected-crash
|
22045 |
infinity-2
|
22046 |
infinity2
|
|
|
|
|
|
|
|
|
|
|
|
|
22047 |
influenza picture
|
22048 |
info ,
|
22049 |
info !
|
@@ -22051,6 +23132,7 @@ info .
|
|
22051 |
info approximate
|
22052 |
info base
|
22053 |
info for my mission
|
|
|
22054 |
info is priceless
|
22055 |
info is worth
|
22056 |
info you
|
@@ -22068,6 +23150,7 @@ info/ratno
|
|
22068 |
info/tag
|
22069 |
info/user
|
22070 |
info/view
|
|
|
22071 |
info0.site
|
22072 |
info0site
|
22073 |
info1.site
|
@@ -22190,20 +23273,20 @@ initial traffic?
|
|
22190 |
injection fact
|
22191 |
injection-fact
|
22192 |
injectionfact
|
22193 |
-
injuries
|
22194 |
injuries insur
|
22195 |
injuries lawyer
|
22196 |
-
injuries-
|
22197 |
injuries-insur
|
22198 |
injuries-lawyer
|
22199 |
-
|
22200 |
injuriesinsur
|
22201 |
injurieslawyer
|
22202 |
-
injury
|
22203 |
injury lawyer
|
22204 |
-
injury-
|
22205 |
injury-lawyer
|
22206 |
-
|
22207 |
injurylawyer
|
22208 |
inn accordance
|
22209 |
inna cena
|
@@ -22244,6 +23327,8 @@ inscritas-cerveja
|
|
22244 |
insdier
|
22245 |
inseminacion artificial
|
22246 |
inseminacion-artificial
|
|
|
|
|
22247 |
inside an setting
|
22248 |
inside reputation
|
22249 |
inside-reputation
|
@@ -22269,6 +23354,7 @@ insta kink
|
|
22269 |
insta sex
|
22270 |
insta-appraisal
|
22271 |
insta-cheat
|
|
|
22272 |
insta-fuck
|
22273 |
insta-kink
|
22274 |
insta-sex
|
@@ -22287,6 +23373,8 @@ instagram money
|
|
22287 |
instagram privado
|
22288 |
instagram private
|
22289 |
instagram shop
|
|
|
|
|
22290 |
instagram story view
|
22291 |
instagram takipci
|
22292 |
instagram takipçi
|
@@ -22301,6 +23389,7 @@ instagram-money
|
|
22301 |
instagram-privado
|
22302 |
instagram-private
|
22303 |
instagram-shop
|
|
|
22304 |
instagram-story-view
|
22305 |
instagram-takipci
|
22306 |
instagram-trick
|
@@ -22325,7 +23414,6 @@ instant blog
|
|
22325 |
instant cash
|
22326 |
instant loan
|
22327 |
instant pay
|
22328 |
-
instant paysafecard
|
22329 |
instant traff
|
22330 |
instant web
|
22331 |
instant week
|
@@ -22334,7 +23422,6 @@ instant-blog
|
|
22334 |
instant-cash
|
22335 |
instant-loan
|
22336 |
instant-pay
|
22337 |
-
instant-paysafecard
|
22338 |
instant-traff
|
22339 |
instant-web
|
22340 |
instant-week
|
@@ -22463,6 +23550,7 @@ internetlink
|
|
22463 |
internetmarket
|
22464 |
internetmosque
|
22465 |
internetowe
|
|
|
22466 |
internetpage
|
22467 |
internetparish
|
22468 |
internetpoker
|
@@ -22580,6 +23668,8 @@ inzest
|
|
22580 |
ios dapps
|
22581 |
ios spoof
|
22582 |
ios-spoof
|
|
|
|
|
22583 |
ip.ideal
|
22584 |
ipad tablet
|
22585 |
ipad-1
|
@@ -22666,6 +23756,8 @@ ipodrepair
|
|
22666 |
ipodsuppl
|
22667 |
iporn
|
22668 |
iprofit
|
|
|
|
|
22669 |
ipアドレス
|
22670 |
iq option
|
22671 |
iq science
|
@@ -22686,6 +23778,7 @@ irresistible-site
|
|
22686 |
irresistible-web
|
22687 |
is about advert
|
22688 |
is as nicely
|
|
|
22689 |
is goping
|
22690 |
is great article
|
22691 |
is great blog
|
@@ -22696,6 +23789,7 @@ is my blog
|
|
22696 |
is my page
|
22697 |
is my web
|
22698 |
is seo
|
|
|
22699 |
is thhe
|
22700 |
is-goping
|
22701 |
is-now-available
|
@@ -22720,7 +23814,6 @@ isn’’t
|
|
22720 |
isn”t
|
22721 |
isn`t
|
22722 |
isnít
|
22723 |
-
isnt
|
22724 |
isotretinoine
|
22725 |
isseo
|
22726 |
issue with your site
|
@@ -22748,6 +23841,7 @@ it contains been
|
|
22748 |
it duvet
|
22749 |
it for posting
|
22750 |
it for the post
|
|
|
22751 |
it oakley
|
22752 |
it ordeno
|
22753 |
it ordenó
|
@@ -22843,6 +23937,7 @@ itt does
|
|
22843 |
itt is
|
22844 |
itt was
|
22845 |
itzshipd
|
|
|
22846 |
iwant2
|
22847 |
iwc brand
|
22848 |
iwc-brand
|
@@ -22886,39 +23981,39 @@ jacken-west
|
|
22886 |
jackenonline
|
22887 |
jackenwest
|
22888 |
jackeonline
|
22889 |
-
jacket 2019
|
22890 |
jacket 2020
|
22891 |
jacket 2021
|
|
|
22892 |
jacket canad
|
22893 |
jacket jap
|
22894 |
jacket jp
|
22895 |
jacket out
|
22896 |
jacket sale
|
22897 |
jacket sunglass
|
22898 |
-
jacket-2019
|
22899 |
jacket-2020
|
22900 |
jacket-2021
|
|
|
22901 |
jacket-canad
|
22902 |
jacket-jap
|
22903 |
jacket-jp
|
22904 |
jacket-out
|
22905 |
jacket-sale
|
22906 |
jacket-sunglass
|
22907 |
-
jacket2019
|
22908 |
jacket2020
|
22909 |
jacket2021
|
|
|
22910 |
jacketcanad
|
22911 |
jacketout
|
22912 |
-
jackets 2019
|
22913 |
jackets 2020
|
22914 |
jackets 2021
|
|
|
22915 |
jackets jap
|
22916 |
jackets jp
|
22917 |
jackets out
|
22918 |
jackets sale
|
22919 |
-
jackets-2019
|
22920 |
jackets-2020
|
22921 |
jackets-2021
|
|
|
22922 |
jackets-for-kids
|
22923 |
jackets-for-men
|
22924 |
jackets-for-wom
|
@@ -22926,9 +24021,9 @@ jackets-jap
|
|
22926 |
jackets-jp
|
22927 |
jackets-out
|
22928 |
jackets-sale
|
22929 |
-
jackets2019
|
22930 |
jackets2020
|
22931 |
jackets2021
|
|
|
22932 |
jacketsale
|
22933 |
jacketsforkids
|
22934 |
jacketsformen
|
@@ -22966,6 +24061,7 @@ jacobsjap
|
|
22966 |
jacobsjp
|
22967 |
jacobspurse
|
22968 |
jacobsuk
|
|
|
22969 |
jagody acai
|
22970 |
jagody-acai
|
22971 |
jagowho
|
@@ -23040,6 +24136,8 @@ japones-kumon
|
|
23040 |
japonesa tatuage
|
23041 |
japonesa-tatuage
|
23042 |
japonesatatuage
|
|
|
|
|
23043 |
jassen dames
|
23044 |
jassen neder
|
23045 |
jassen out
|
@@ -23049,6 +24147,7 @@ jassen-out
|
|
23049 |
jassendames
|
23050 |
jassenneder
|
23051 |
jassenout
|
|
|
23052 |
jazz jers
|
23053 |
jazz-jers
|
23054 |
jazzjers
|
@@ -23216,13 +24315,19 @@ job on the content
|
|
23216 |
job on the page
|
23217 |
job on the site
|
23218 |
job on the web
|
|
|
|
|
23219 |
job usa
|
23220 |
job-mom
|
|
|
|
|
23221 |
job-usa
|
23222 |
jobs mom
|
23223 |
jobs usa
|
23224 |
jobs-mom
|
23225 |
jobs-usa
|
|
|
|
|
23226 |
jogadore assiduos
|
23227 |
jogadore assíduos
|
23228 |
jogadore-assiduos
|
@@ -23250,11 +24355,16 @@ joint-pain
|
|
23250 |
jointpain
|
23251 |
jojobet
|
23252 |
joker casino
|
|
|
|
|
23253 |
joker-123
|
23254 |
joker-casino
|
|
|
|
|
23255 |
joker123
|
23256 |
jokercasino
|
23257 |
jokerfull
|
|
|
23258 |
joma jewelery
|
23259 |
joma jewellery
|
23260 |
joma jewelry
|
@@ -23308,6 +24418,7 @@ jordan4
|
|
23308 |
jordanbrand
|
23309 |
jordangamma
|
23310 |
jordangrise
|
|
|
23311 |
jordankicks
|
23312 |
jordanmilan
|
23313 |
jordannoir
|
@@ -23371,14 +24482,18 @@ juaanmartinezz
|
|
23371 |
juanjuan
|
23372 |
judi blackjack
|
23373 |
judi casino
|
|
|
23374 |
judi online
|
23375 |
judi poker
|
23376 |
judi roulette
|
|
|
23377 |
judi-blackjack
|
23378 |
judi-casino
|
|
|
23379 |
judi-online
|
23380 |
judi-poker
|
23381 |
judi-roulette
|
|
|
23382 |
judiblackjack
|
23383 |
judicasino
|
23384 |
judionline
|
@@ -23409,9 +24524,11 @@ just book mark
|
|
23409 |
just cetirizine
|
23410 |
just like hypno
|
23411 |
just saying you
|
|
|
23412 |
just wanna
|
23413 |
just-book-mark
|
23414 |
just-cetirizine
|
|
|
23415 |
just-wanna
|
23416 |
justcan do
|
23417 |
justcetirizine
|
@@ -23525,6 +24642,8 @@ kartu-poker
|
|
23525 |
karuteie
|
23526 |
kasino
|
23527 |
kassino
|
|
|
|
|
23528 |
kat.h.l.e.en
|
23529 |
kat.h.l.ee.n
|
23530 |
kat.h.l.een
|
@@ -23562,6 +24681,8 @@ kawaii-review
|
|
23562 |
kawaiireview
|
23563 |
kawastrefa
|
23564 |
kazino
|
|
|
|
|
23565 |
keen of read
|
23566 |
keep blogging!
|
23567 |
keep on blogging
|
@@ -23585,6 +24706,7 @@ kensington-parka
|
|
23585 |
kensingtonparka
|
23586 |
keo nha cai
|
23587 |
kèo-bóng
|
|
|
23588 |
kerja hotel
|
23589 |
kerja-hotel
|
23590 |
kerjahotel
|
@@ -23619,6 +24741,10 @@ khau trang
|
|
23619 |
khẩu trang
|
23620 |
khau-trang
|
23621 |
khautrang
|
|
|
|
|
|
|
|
|
23622 |
khttp
|
23623 |
khumbu north
|
23624 |
khumbu-north
|
@@ -23645,10 +24771,12 @@ kid-panty
|
|
23645 |
kidpantie
|
23646 |
kidpanty
|
23647 |
kids baby
|
|
|
23648 |
kids nike
|
23649 |
kids out
|
23650 |
kids ugg
|
23651 |
kids-baby
|
|
|
23652 |
kids-nike
|
23653 |
kids-ugg
|
23654 |
kidsnike
|
@@ -23679,10 +24807,13 @@ kindle cash
|
|
23679 |
kindle-cash
|
23680 |
kindlecash
|
23681 |
king hack
|
|
|
23682 |
king slot
|
23683 |
king-hack
|
|
|
23684 |
king-slot
|
23685 |
kinghack
|
|
|
23686 |
kinh doanh
|
23687 |
kinh-doanh
|
23688 |
kinhdoanh
|
@@ -23816,8 +24947,12 @@ kode-kupon
|
|
23816 |
kodekupon
|
23817 |
kolay bir web
|
23818 |
kolay-bir-web
|
|
|
23819 |
kollagen intensiv
|
23820 |
kollagen-intensiv
|
|
|
|
|
|
|
23821 |
kombat hack
|
23822 |
kombat x hack
|
23823 |
kombat-hack
|
@@ -23833,6 +24968,8 @@ komputer
|
|
23833 |
konforlu secenek
|
23834 |
konforlu seçenek
|
23835 |
konforlu-secenek
|
|
|
|
|
23836 |
konkurs
|
23837 |
konopiami indyjskimi
|
23838 |
konopiami-indyjskimi
|
@@ -23860,9 +24997,14 @@ koop dsqu
|
|
23860 |
koop-dsqu
|
23861 |
koopdsqu
|
23862 |
koopsted
|
|
|
|
|
|
|
23863 |
kope jassen
|
23864 |
kope-jassen
|
23865 |
kopejassen
|
|
|
|
|
23866 |
kopfhoerer
|
23867 |
kopia-zapasowa
|
23868 |
kor out
|
@@ -23982,14 +25124,29 @@ kreatif-membuat
|
|
23982 |
kreddit
|
23983 |
kreddyt
|
23984 |
kreddyyt
|
|
|
|
|
|
|
23985 |
kredit
|
|
|
23986 |
kredyt
|
23987 |
kredyyt
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23988 |
kristi longchamp
|
23989 |
kristi-longchamp
|
23990 |
kristilongchamp
|
23991 |
krossoverov
|
23992 |
ku42.
|
|
|
|
|
|
|
23993 |
kugelbahn
|
23994 |
kult und genuss
|
23995 |
kulturtasche habe
|
@@ -24013,6 +25170,8 @@ kurs yevro
|
|
24013 |
kurs-yevro
|
24014 |
kurta online
|
24015 |
kurta-online
|
|
|
|
|
24016 |
kussin hartmann
|
24017 |
kussin-hartmann
|
24018 |
kussinhartmann
|
@@ -24110,6 +25269,8 @@ landing-page
|
|
24110 |
landingpage
|
24111 |
landslagstroja
|
24112 |
landslagströja
|
|
|
|
|
24113 |
lap lap
|
24114 |
lap-lap
|
24115 |
laplap
|
@@ -24246,6 +25407,7 @@ laurentfemme
|
|
24246 |
laurentsandal
|
24247 |
laurenuk
|
24248 |
lavado de dinero
|
|
|
24249 |
lawful page
|
24250 |
lawful-page
|
24251 |
lawoffice.net
|
@@ -24265,8 +25427,8 @@ lawyers near you
|
|
24265 |
layout look great
|
24266 |
layout of your blog
|
24267 |
layout of your page
|
24268 |
-
layout of your
|
24269 |
-
layout of your
|
24270 |
layout-look-great
|
24271 |
layout...?
|
24272 |
lɑ
|
@@ -24287,9 +25449,9 @@ leadsclub
|
|
24287 |
leagle porn
|
24288 |
leagle-porn
|
24289 |
leaked1
|
24290 |
-
leaks-2019
|
24291 |
leaks-2020
|
24292 |
leaks-2021
|
|
|
24293 |
learn about keto
|
24294 |
learn about this blog
|
24295 |
learn about this issue
|
@@ -24311,6 +25473,7 @@ learn-traffic-law
|
|
24311 |
learn+health
|
24312 |
learnface
|
24313 |
learnhelp
|
|
|
24314 |
learningxchange
|
24315 |
learnpain
|
24316 |
learnpianohere
|
@@ -24327,6 +25490,8 @@ lebron shoe
|
|
24327 |
lebron-shoe
|
24328 |
lebronshoe
|
24329 |
lebronxshoe
|
|
|
|
|
24330 |
lechit narkomaniy
|
24331 |
lechit-narkomaniy
|
24332 |
led thumb
|
@@ -24343,17 +25508,26 @@ legal bud
|
|
24343 |
legal cash
|
24344 |
legal hack
|
24345 |
legal kratom
|
|
|
24346 |
legal porn
|
|
|
24347 |
legal steroid
|
|
|
24348 |
legal-bud
|
24349 |
legal-cash
|
24350 |
legal-hack
|
24351 |
legal-kratom
|
|
|
24352 |
legal-porn
|
|
|
24353 |
legal-steroid
|
|
|
24354 |
legalbud
|
24355 |
legalcash
|
24356 |
legalhack
|
|
|
|
|
|
|
24357 |
legalsteroid
|
24358 |
legend hack
|
24359 |
legend-hack
|
@@ -24377,17 +25551,17 @@ legit graph
|
|
24377 |
legit pharm
|
24378 |
legit script
|
24379 |
legit way
|
24380 |
-
legit-2019
|
24381 |
legit-2020
|
24382 |
legit-2021
|
|
|
24383 |
legit-drug
|
24384 |
legit-graph
|
24385 |
legit-pharm
|
24386 |
legit-script
|
24387 |
legit-way
|
24388 |
-
legit2019
|
24389 |
legit2020
|
24390 |
legit2021
|
|
|
24391 |
legitdrug
|
24392 |
legitgraph
|
24393 |
legitimate drug
|
@@ -24487,6 +25661,7 @@ level 50
|
|
24487 |
level market
|
24488 |
level-50
|
24489 |
level-market
|
|
|
24490 |
levelmarket
|
24491 |
levels dissertation
|
24492 |
levels-dissertation
|
@@ -24518,6 +25693,10 @@ librarys.htm
|
|
24518 |
librarys.jsp
|
24519 |
librarys.php
|
24520 |
librium
|
|
|
|
|
|
|
|
|
24521 |
licensed appliance
|
24522 |
licensed-appliance
|
24523 |
licenzija
|
@@ -24526,7 +25705,9 @@ lid pants
|
|
24526 |
lid-pants
|
24527 |
lies sound truth
|
24528 |
life sex
|
|
|
24529 |
life-sex
|
|
|
24530 |
life.acne
|
24531 |
life.cert
|
24532 |
lifeinsur
|
@@ -24547,6 +25728,7 @@ ligne medicament
|
|
24547 |
ligne médicament
|
24548 |
ligne-medicament
|
24549 |
ligne-médicament
|
|
|
24550 |
liht therap
|
24551 |
liht-therap
|
24552 |
like & share
|
@@ -24566,6 +25748,7 @@ like this web
|
|
24566 |
like your blog
|
24567 |
like your video
|
24568 |
like your web
|
|
|
24569 |
likes on facebook
|
24570 |
likes on instagram
|
24571 |
likes on snapchat
|
@@ -24585,7 +25768,9 @@ lili-porno
|
|
24585 |
liliporno
|
24586 |
limit hold'em
|
24587 |
limit hold’em
|
|
|
24588 |
limited jers
|
|
|
24589 |
limited-japan
|
24590 |
limited-jers
|
24591 |
limited-jp
|
@@ -24608,11 +25793,13 @@ link camp
|
|
24608 |
link change arrange
|
24609 |
link competence
|
24610 |
link creati
|
|
|
24611 |
link directory
|
24612 |
link download
|
24613 |
link exchang
|
24614 |
link issue
|
24615 |
link juice
|
|
|
24616 |
link market
|
24617 |
link pyramid
|
24618 |
link redirect
|
@@ -24626,17 +25813,21 @@ link to their online
|
|
24626 |
link to your online
|
24627 |
link track
|
24628 |
link vault
|
|
|
24629 |
link-bait
|
24630 |
link-build
|
24631 |
link-camp
|
24632 |
link-click
|
24633 |
link-competence
|
24634 |
link-creati
|
|
|
24635 |
link-directory
|
24636 |
link-download
|
24637 |
link-exchang
|
|
|
24638 |
link-issue
|
24639 |
link-juice
|
|
|
24640 |
link-market
|
24641 |
link-pyramid
|
24642 |
link-redirect
|
@@ -24655,6 +25846,16 @@ linkbuild
|
|
24655 |
linkcamp
|
24656 |
linkclick
|
24657 |
linkdirect
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24658 |
linkexchang
|
24659 |
linking camp
|
24660 |
linking issue
|
@@ -24671,6 +25872,7 @@ linkingseo
|
|
24671 |
linkissue
|
24672 |
linkjuice
|
24673 |
linklegend
|
|
|
24674 |
linkman
|
24675 |
linkmarket
|
24676 |
linkpyramid
|
@@ -24704,6 +25906,7 @@ lip filler
|
|
24704 |
lip-filler
|
24705 |
lipi=urn
|
24706 |
lipitor
|
|
|
24707 |
lirtle effort
|
24708 |
lisinopril
|
24709 |
lisseur-pascher
|
@@ -24718,6 +25921,7 @@ listen to youtube
|
|
24718 |
listen-news
|
24719 |
listen-to-youtube
|
24720 |
listentoyoutube
|
|
|
24721 |
listy,
|
24722 |
lite/wbb
|
24723 |
lite1/wbb
|
@@ -24749,6 +25953,10 @@ liveroulette
|
|
24749 |
livesex
|
24750 |
livesmale
|
24751 |
living by google
|
|
|
|
|
|
|
|
|
24752 |
livro advert
|
24753 |
livro marketing
|
24754 |
livro-advert
|
@@ -24785,6 +25993,7 @@ loan comp
|
|
24785 |
loan fast
|
24786 |
loan lender
|
24787 |
loan online
|
|
|
24788 |
loan-canad
|
24789 |
loan-cash
|
24790 |
loan-comp
|
@@ -24792,10 +26001,12 @@ loan-direct
|
|
24792 |
loan-fast
|
24793 |
loan-lender
|
24794 |
loan-online
|
|
|
24795 |
loan.bid
|
24796 |
loan.co
|
24797 |
loan.in
|
24798 |
loan.net
|
|
|
24799 |
loanalys
|
24800 |
loancash
|
24801 |
loancomp
|
@@ -24803,19 +26014,23 @@ loandirect
|
|
24803 |
loanfast
|
24804 |
loanlender
|
24805 |
loanonline
|
|
|
24806 |
loans canad
|
24807 |
loans compan
|
24808 |
loans fast
|
24809 |
loans online
|
|
|
24810 |
loans-canad
|
24811 |
loans-compan
|
24812 |
loans-direct
|
24813 |
loans-fast
|
24814 |
loans-online
|
|
|
24815 |
loans.co
|
24816 |
loans.in
|
24817 |
loans.net
|
24818 |
loans.xyz
|
|
|
24819 |
loans1
|
24820 |
loans2
|
24821 |
loans3
|
@@ -24825,6 +26040,7 @@ loanscompan
|
|
24825 |
loansdirect
|
24826 |
loansfast
|
24827 |
loansonline
|
|
|
24828 |
locate-cell-phone
|
24829 |
locatecellphone
|
24830 |
lociraj
|
@@ -24839,8 +26055,10 @@ log.se.
|
|
24839 |
log/?
|
24840 |
logcabins
|
24841 |
login uk
|
|
|
24842 |
login widget
|
24843 |
login-uk
|
|
|
24844 |
login-widget
|
24845 |
login.asp
|
24846 |
login.cfm
|
@@ -24915,9 +26133,9 @@ long penis
|
|
24915 |
long-lasting-duration
|
24916 |
long-penis
|
24917 |
longafter
|
24918 |
-
longchamp 2019
|
24919 |
longchamp 2020
|
24920 |
longchamp 2021
|
|
|
24921 |
longchamp aus
|
24922 |
longchamp bag
|
24923 |
longchamp doctor
|
@@ -24940,9 +26158,9 @@ longchamp tourne
|
|
24940 |
longchamp uk
|
24941 |
longchamp yama
|
24942 |
longchamp_
|
24943 |
-
longchamp-2019
|
24944 |
longchamp-2020
|
24945 |
longchamp-2021
|
|
|
24946 |
longchamp-aus
|
24947 |
longchamp-doctor
|
24948 |
longchamp-fabric
|
@@ -24969,9 +26187,9 @@ longchamp.ctr
|
|
24969 |
longchamp.htm
|
24970 |
longchamp.jsp
|
24971 |
longchamp.php
|
24972 |
-
longchamp2019
|
24973 |
longchamp2020
|
24974 |
longchamp2021
|
|
|
24975 |
longchampaus
|
24976 |
longchampbag
|
24977 |
longchampdoctor
|
@@ -25026,6 +26244,7 @@ look more blog
|
|
25026 |
look more page
|
25027 |
look more post
|
25028 |
look more web
|
|
|
25029 |
look on-line
|
25030 |
look paying homage
|
25031 |
look your article
|
@@ -25069,9 +26288,11 @@ los-beneficio
|
|
25069 |
los-replic
|
25070 |
lose at casino
|
25071 |
lose belly fat
|
|
|
25072 |
lose weight motivat
|
25073 |
lose weight simply
|
25074 |
lose-belly-fat
|
|
|
25075 |
lose-weight
|
25076 |
losers beat
|
25077 |
losers outnumbered
|
@@ -25079,6 +26300,8 @@ losers-beat
|
|
25079 |
losers-outnumbered
|
25080 |
loseweight
|
25081 |
losing maany
|
|
|
|
|
25082 |
losreplic
|
25083 |
loss weight
|
25084 |
loss-weight
|
@@ -25118,7 +26341,11 @@ lotterypro
|
|
25118 |
lottie maxi
|
25119 |
lottie-maxi
|
25120 |
lottiemaxi
|
|
|
|
|
|
|
25121 |
lotto-tip
|
|
|
25122 |
lottotip
|
25123 |
loubiton
|
25124 |
louboutin bianca
|
@@ -25193,7 +26420,11 @@ louisvitton
|
|
25193 |
louisvuit.
|
25194 |
louisvuitton
|
25195 |
louiswuitton
|
|
|
|
|
|
|
25196 |
love (:
|
|
|
25197 |
love connect
|
25198 |
love cougar
|
25199 |
love perfect
|
@@ -25277,6 +26508,7 @@ lpgn product
|
|
25277 |
lpgn-laminin
|
25278 |
lpgn-moldova
|
25279 |
lpgn-product
|
|
|
25280 |
ltongealp
|
25281 |
ltonser
|
25282 |
lub cbd
|
@@ -25286,6 +26518,7 @@ lublina.
|
|
25286 |
luck jers
|
25287 |
luck-jers
|
25288 |
luckjers
|
|
|
25289 |
lucky patcher
|
25290 |
lucky-patcher
|
25291 |
luckypatcher
|
@@ -25379,8 +26612,14 @@ lvout
|
|
25379 |
lvreplic
|
25380 |
lvsale
|
25381 |
lvuk
|
|
|
|
|
|
|
|
|
25382 |
lyrica.to
|
25383 |
lyrica4u
|
|
|
|
|
25384 |
lⲟ
|
25385 |
lі
|
25386 |
lо
|
@@ -25454,6 +26693,9 @@ magic-wealth-spell
|
|
25454 |
magicmoncler
|
25455 |
magister kesehatan
|
25456 |
magister-kesehatan
|
|
|
|
|
|
|
25457 |
magnificent article
|
25458 |
magnificent blog
|
25459 |
magnificent good
|
@@ -25568,6 +26810,7 @@ majesticriver
|
|
25568 |
make blogging
|
25569 |
make comment due
|
25570 |
make csgo
|
|
|
25571 |
make good using
|
25572 |
make hemp
|
25573 |
make may stay
|
@@ -25738,6 +26981,8 @@ manteaukaren
|
|
25738 |
many extra popular
|
25739 |
many-utilizes
|
25740 |
manyy
|
|
|
|
|
25741 |
maqnage
|
25742 |
maquiagem para
|
25743 |
maquiagem profes
|
@@ -25778,12 +27023,14 @@ mariageorig
|
|
25778 |
mariages simplif
|
25779 |
mariages-simplif
|
25780 |
marihuana
|
|
|
25781 |
marijuana bene
|
25782 |
marijuana etf
|
25783 |
marijuana fact
|
25784 |
marijuana lawyer
|
25785 |
marijuana sample
|
25786 |
marijuana strain
|
|
|
25787 |
marijuana-bene
|
25788 |
marijuana-etf
|
25789 |
marijuana-fact
|
@@ -25826,35 +27073,43 @@ market-samurai
|
|
25826 |
market-xchange
|
25827 |
market.financ
|
25828 |
marketexchang
|
|
|
25829 |
marketing blog
|
25830 |
marketing book
|
25831 |
marketing digital
|
|
|
25832 |
marketing exchang
|
25833 |
marketing funnel
|
25834 |
marketing hero
|
|
|
25835 |
marketing mark
|
25836 |
marketing monst
|
25837 |
marketing online
|
25838 |
marketing platform
|
25839 |
marketing prof
|
25840 |
marketing samu
|
|
|
25841 |
marketing service
|
25842 |
marketing software
|
25843 |
marketing specialist
|
|
|
25844 |
marketing tip
|
25845 |
marketing video clip
|
25846 |
marketing with social
|
25847 |
marketing with video
|
25848 |
marketing xchange
|
25849 |
marketing-advert
|
|
|
25850 |
marketing-and-advert
|
25851 |
marketing-approach
|
25852 |
marketing-blog
|
25853 |
marketing-book
|
25854 |
marketing-digital
|
|
|
25855 |
marketing-exchang
|
25856 |
marketing-funnel
|
25857 |
marketing-hero
|
|
|
25858 |
marketing-mark
|
25859 |
marketing-mix
|
25860 |
marketing-monst
|
@@ -25862,9 +27117,11 @@ marketing-online
|
|
25862 |
marketing-platform
|
25863 |
marketing-prof
|
25864 |
marketing-samu
|
|
|
25865 |
marketing-service
|
25866 |
marketing-software
|
25867 |
marketing-specialist
|
|
|
25868 |
marketing-tip
|
25869 |
marketing-video-clip
|
25870 |
marketing-xchange
|
@@ -25879,6 +27136,7 @@ marketingonline
|
|
25879 |
marketingplatform
|
25880 |
marketingprof
|
25881 |
marketingsamu
|
|
|
25882 |
marketingservice
|
25883 |
marketingtip
|
25884 |
marketingxchange
|
@@ -25952,7 +27210,6 @@ massage envy
|
|
25952 |
massage erotic
|
25953 |
massage massage
|
25954 |
massage velvet
|
25955 |
-
massage_
|
25956 |
massage-close
|
25957 |
massage-envy
|
25958 |
massage-erotic
|
@@ -26019,6 +27276,24 @@ mastery-plan
|
|
26019 |
mastery-series
|
26020 |
mastery-since
|
26021 |
mastery-under
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26022 |
mat luoi
|
26023 |
mặt lưỡi
|
26024 |
mat-luoi
|
@@ -26034,8 +27309,14 @@ material stylish
|
|
26034 |
material-stylish
|
26035 |
material, regards
|
26036 |
matiion
|
26037 |
-
matka
|
26038 |
-
matka
|
|
|
|
|
|
|
|
|
|
|
|
|
26039 |
matluoi
|
26040 |
matters on the web
|
26041 |
matthews jers
|
@@ -26043,6 +27324,9 @@ matthews-jers
|
|
26043 |
matthewsjers
|
26044 |
mattress clothes
|
26045 |
matural
|
|
|
|
|
|
|
26046 |
max griffey
|
26047 |
max sale
|
26048 |
max-griffey
|
@@ -26276,6 +27560,8 @@ medias sociaux
|
|
26276 |
medias-sociaux
|
26277 |
medical marijuana
|
26278 |
medical-marijuana
|
|
|
|
|
26279 |
medicarefraud
|
26280 |
medicinez
|
26281 |
medicinz
|
@@ -26363,10 +27649,28 @@ meizitang
|
|
26363 |
meja casino
|
26364 |
meja-casino
|
26365 |
mejacasino
|
|
|
|
|
|
|
|
|
|
|
26366 |
mejor servicio
|
|
|
|
|
|
|
26367 |
mejor-servicio
|
|
|
26368 |
mejores booster
|
|
|
|
|
|
|
|
|
26369 |
mejores-booster
|
|
|
|
|
|
|
|
|
|
|
26370 |
melatonin
|
26371 |
melhor preco
|
26372 |
melhor preço
|
@@ -26408,8 +27712,10 @@ membership.htm
|
|
26408 |
membership.jsp
|
26409 |
membership.php
|
26410 |
membershiphack
|
|
|
26411 |
memerangi keragu
|
26412 |
memerangi-keragu
|
|
|
26413 |
memoria javit
|
26414 |
memória javit
|
26415 |
memoria teszt
|
@@ -26458,6 +27764,10 @@ men-timber
|
|
26458 |
men's timber
|
26459 |
men’s timber
|
26460 |
men+
|
|
|
|
|
|
|
|
|
26461 |
menbarbour
|
26462 |
menboost
|
26463 |
mencheap
|
@@ -26534,17 +27844,17 @@ mercedes vip
|
|
26534 |
mercedes-vip
|
26535 |
mercedesvip
|
26536 |
mercenary.co
|
26537 |
-
mercurial 2019
|
26538 |
mercurial 2020
|
26539 |
mercurial 2021
|
|
|
26540 |
mercurial vapo
|
26541 |
-
mercurial-2019
|
26542 |
mercurial-2020
|
26543 |
mercurial-2021
|
|
|
26544 |
mercurial-vapo
|
26545 |
-
mercurial2019
|
26546 |
mercurial2020
|
26547 |
mercurial2021
|
|
|
26548 |
mercurialvapo
|
26549 |
merely extremely
|
26550 |
merely wanna
|
@@ -26555,6 +27865,8 @@ mergerhelper
|
|
26555 |
meridia
|
26556 |
mes hormone
|
26557 |
mes-hormone
|
|
|
|
|
26558 |
message all around
|
26559 |
message erotic
|
26560 |
message the agency
|
@@ -26597,6 +27909,8 @@ metro-star
|
|
26597 |
metronidazole
|
26598 |
metrostar
|
26599 |
meu teor send
|
|
|
|
|
26600 |
mezzo louis
|
26601 |
mezzo-louis
|
26602 |
mezzolouis
|
@@ -26655,10 +27969,20 @@ milanouk
|
|
26655 |
mild activ
|
26656 |
mild-activ
|
26657 |
milendress
|
|
|
|
|
26658 |
milf_
|
|
|
|
|
|
|
|
|
26659 |
milfs_
|
|
|
|
|
|
|
26660 |
military friendly
|
26661 |
military vacation
|
|
|
26662 |
military-friendly
|
26663 |
military-vacation
|
26664 |
militaryfriendly
|
@@ -26748,6 +28072,7 @@ mirapex
|
|
26748 |
mirror femme
|
26749 |
mirror-femme
|
26750 |
mirrorfemme
|
|
|
26751 |
miss hookup
|
26752 |
miss-hookup
|
26753 |
missed hookup
|
@@ -26827,6 +28152,7 @@ mlsp suit
|
|
26827 |
mlsp-suit
|
26828 |
mlspweapon
|
26829 |
mmcenter.in
|
|
|
26830 |
mmy blog
|
26831 |
mmy page
|
26832 |
mmy web
|
@@ -26919,9 +28245,9 @@ moncle sito
|
|
26919 |
moncle-site
|
26920 |
moncle-sito
|
26921 |
monclear
|
26922 |
-
moncler 2019
|
26923 |
moncler 2020
|
26924 |
moncler 2021
|
|
|
26925 |
moncler amster
|
26926 |
moncler andorra
|
26927 |
moncler barata
|
@@ -26976,9 +28302,9 @@ moncler vos
|
|
26976 |
moncler weste
|
26977 |
moncler westen
|
26978 |
moncler--
|
26979 |
-
moncler-2019
|
26980 |
moncler-2020
|
26981 |
moncler-2021
|
|
|
26982 |
moncler-amster
|
26983 |
moncler-andorra
|
26984 |
moncler-barata
|
@@ -27040,9 +28366,9 @@ moncler.htm
|
|
27040 |
moncler.jsp
|
27041 |
moncler.php
|
27042 |
moncler`
|
27043 |
-
moncler2019
|
27044 |
moncler2020
|
27045 |
moncler2021
|
|
|
27046 |
moncleramster
|
27047 |
monclerandorra
|
27048 |
monclerbarata
|
@@ -27110,9 +28436,11 @@ mondayugg
|
|
27110 |
monetize you
|
27111 |
monetize-you
|
27112 |
money adder
|
|
|
27113 |
money buzz
|
27114 |
money fast
|
27115 |
money generat
|
|
|
27116 |
money man uga
|
27117 |
money now loan
|
27118 |
money online
|
@@ -27121,6 +28449,7 @@ money prim
|
|
27121 |
money robot
|
27122 |
money vault
|
27123 |
money-adder
|
|
|
27124 |
money-buzz
|
27125 |
money-fast
|
27126 |
money-game
|
@@ -27128,6 +28457,7 @@ money-generat
|
|
27128 |
money-illusion
|
27129 |
money-loan
|
27130 |
money-mak
|
|
|
27131 |
money-now-loan
|
27132 |
money-online
|
27133 |
money-phone
|
@@ -27143,11 +28473,13 @@ money.ctr
|
|
27143 |
money.htm
|
27144 |
money.jsp
|
27145 |
money.php
|
|
|
27146 |
moneybuzz
|
27147 |
moneyfast
|
27148 |
moneygame
|
27149 |
moneygenerat
|
27150 |
moneyillusion
|
|
|
27151 |
moneyloan
|
27152 |
moneymak
|
27153 |
moneyonline
|
@@ -27256,6 +28588,7 @@ moore-about
|
|
27256 |
more clash of
|
27257 |
more effective!
|
27258 |
more eventually
|
|
|
27259 |
more of your article
|
27260 |
more of your blog
|
27261 |
more of your post
|
@@ -27271,6 +28604,7 @@ more-effective!
|
|
27271 |
more-eventually
|
27272 |
more-lv
|
27273 |
more-smartly
|
|
|
27274 |
morelv
|
27275 |
morpg
|
27276 |
morre about
|
@@ -27311,6 +28645,16 @@ motivation book
|
|
27311 |
motivation-book
|
27312 |
motor whole
|
27313 |
motor-whole
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27314 |
mount sex
|
27315 |
mount-sex
|
27316 |
mountsex
|
@@ -27323,6 +28667,7 @@ movement-part
|
|
27323 |
movementpart
|
27324 |
mover los angeles
|
27325 |
movers los angeles
|
|
|
27326 |
movie are general
|
27327 |
movie full
|
27328 |
movie game play
|
@@ -27420,6 +28765,7 @@ much-gucci
|
|
27420 |
much-important
|
27421 |
much-utile
|
27422 |
muchgucci
|
|
|
27423 |
mucho tu post
|
27424 |
mudah beli
|
27425 |
mudah-beli
|
@@ -27429,6 +28775,10 @@ muhammad christ
|
|
27429 |
muhammad-christ
|
27430 |
muhammadchrist
|
27431 |
muhst say
|
|
|
|
|
|
|
|
|
27432 |
mujer timberland
|
27433 |
mujer-timberland
|
27434 |
mujeres solteras
|
@@ -27546,19 +28896,14 @@ my apple iphone
|
|
27546 |
my apple macbook
|
27547 |
my bebo
|
27548 |
my bitcoin
|
27549 |
-
my blg -
|
27550 |
-
my blg –
|
27551 |
-
my blg —
|
27552 |
my blg ;
|
27553 |
my blg :
|
27554 |
my blg;
|
27555 |
my blg:
|
27556 |
my blo look
|
27557 |
-
my blog -
|
27558 |
-
my blog –
|
27559 |
-
my blog —
|
27560 |
my blog ;
|
27561 |
my blog :
|
|
|
27562 |
my blog …
|
27563 |
my blog audience
|
27564 |
my blog fer
|
@@ -27572,9 +28917,6 @@ my blog:
|
|
27572 |
my blog..
|
27573 |
my blog…
|
27574 |
my blopg
|
27575 |
-
my boog -
|
27576 |
-
my boog –
|
27577 |
-
my boog —
|
27578 |
my boog ;
|
27579 |
my boog :
|
27580 |
my boog ..
|
@@ -27604,9 +28946,8 @@ my online
|
|
27604 |
my own blog
|
27605 |
my own web
|
27606 |
my paage
|
27607 |
-
my page
|
27608 |
-
my page
|
27609 |
-
my page —
|
27610 |
my page ..
|
27611 |
my page …
|
27612 |
my page 24
|
@@ -27621,6 +28962,7 @@ my pagee
|
|
27621 |
my pagge
|
27622 |
my personal own
|
27623 |
my ppage
|
|
|
27624 |
my pzge
|
27625 |
my sikte
|
27626 |
my site ;
|
@@ -27630,15 +28972,13 @@ my site …
|
|
27630 |
my site looks
|
27631 |
my site read
|
27632 |
my site rolnic
|
|
|
27633 |
my site trek
|
27634 |
my site;
|
27635 |
my site:
|
27636 |
my site..
|
27637 |
my site…
|
27638 |
my sitee
|
27639 |
-
my sitte -
|
27640 |
-
my sitte –
|
27641 |
-
my sitte —
|
27642 |
my sitte ;
|
27643 |
my sitte :
|
27644 |
my sitte ..
|
@@ -27648,6 +28988,7 @@ my sitte;
|
|
27648 |
my sitte:
|
27649 |
my sitte..
|
27650 |
my sitte…
|
|
|
27651 |
my social networks
|
27652 |
my ssite
|
27653 |
my vape
|
@@ -27655,9 +28996,8 @@ my view its
|
|
27655 |
my wallet is
|
27656 |
my wblg
|
27657 |
my wblog
|
27658 |
-
my web
|
27659 |
-
my web
|
27660 |
-
my web —
|
27661 |
my web ..
|
27662 |
my web …
|
27663 |
my web blog
|
@@ -27673,16 +29013,17 @@ my web..
|
|
27673 |
my web…
|
27674 |
my webb
|
27675 |
my weblg
|
27676 |
-
my weblog
|
27677 |
-
my weblog
|
27678 |
-
my weblog
|
|
|
27679 |
my weblog goes
|
27680 |
my weblog read
|
27681 |
my weblog trek
|
27682 |
my webpage
|
27683 |
-
my website
|
27684 |
-
my website
|
27685 |
-
my website
|
27686 |
my website …
|
27687 |
my website goes
|
27688 |
my website read
|
@@ -27712,6 +29053,7 @@ my-most-favourite
|
|
27712 |
my-my
|
27713 |
my-new-ip
|
27714 |
my-online
|
|
|
27715 |
my-pzge
|
27716 |
my-sitte
|
27717 |
my-ssite
|
@@ -27754,6 +29096,7 @@ mynocine sans
|
|
27754 |
mynocine-sans
|
27755 |
myonline
|
27756 |
myowndomain
|
|
|
27757 |
myqrop
|
27758 |
myresume
|
27759 |
myreview.co
|
@@ -27866,6 +29209,7 @@ nam-nu
|
|
27866 |
nam-nữ
|
27867 |
namacalnie zalega
|
27868 |
namacalnie-zalega
|
|
|
27869 |
name on yolo
|
27870 |
name-brand
|
27871 |
name-on-yolo
|
@@ -27884,6 +29228,7 @@ nâng-mũi
|
|
27884 |
nanogold
|
27885 |
naproxen
|
27886 |
narkologicheskaya
|
|
|
27887 |
naruto hottest
|
27888 |
naruto-hottest
|
27889 |
nashivki leibly
|
@@ -27969,7 +29314,8 @@ nbshoe
|
|
27969 |
ñç
|
27970 |
nce nce
|
27971 |
near near
|
27972 |
-
|
|
|
27973 |
nearly like a clean
|
27974 |
neat article
|
27975 |
neat blog
|
@@ -27985,6 +29331,7 @@ neat-site
|
|
27985 |
neat-web
|
27986 |
neatarticle
|
27987 |
neatblog
|
|
|
27988 |
neatly favor
|
27989 |
neatly favour
|
27990 |
neatly preferred
|
@@ -28002,6 +29349,7 @@ need bitcoin
|
|
28002 |
need bytecoin
|
28003 |
need litecoin
|
28004 |
need sex
|
|
|
28005 |
need wondrous
|
28006 |
need-bitcoin
|
28007 |
need-bytecoin
|
@@ -28009,6 +29357,7 @@ need-litecoin
|
|
28009 |
need-sex
|
28010 |
needbitcoin
|
28011 |
needbytecoin
|
|
|
28012 |
needlitecoin
|
28013 |
needmoney
|
28014 |
needs wondrous
|
@@ -28079,6 +29428,7 @@ new jord
|
|
28079 |
new large
|
28080 |
new manolo
|
28081 |
new mastery
|
|
|
28082 |
new room decor
|
28083 |
new rooms decor
|
28084 |
new seo
|
@@ -28099,6 +29449,7 @@ new-large
|
|
28099 |
new-manolo
|
28100 |
new-mastery
|
28101 |
new-oakley
|
|
|
28102 |
new-proxy-list
|
28103 |
new-room-decor
|
28104 |
new-rooms-decor
|
@@ -28125,6 +29476,7 @@ newhong
|
|
28125 |
newjord
|
28126 |
newmanolo
|
28127 |
newoakley
|
|
|
28128 |
newport 100s
|
28129 |
newport-100s
|
28130 |
newport100s
|
@@ -28142,9 +29494,9 @@ newsletter-service
|
|
28142 |
newss.
|
28143 |
newvibram
|
28144 |
newwebsite
|
28145 |
-
newyear2019
|
28146 |
newyear2020
|
28147 |
newyear2021
|
|
|
28148 |
nexium.to
|
28149 |
nexium4u
|
28150 |
nexopia
|
@@ -28189,6 +29541,9 @@ nfr.ctr
|
|
28189 |
nfr.htm
|
28190 |
nfr.jsp
|
28191 |
nfr.php
|
|
|
|
|
|
|
28192 |
nghiệp google
|
28193 |
nghiep-a-z
|
28194 |
nghiệp-a-z
|
@@ -28416,6 +29771,7 @@ nnuauec
|
|
28416 |
no collateral
|
28417 |
no continu
|
28418 |
no copy right
|
|
|
28419 |
no fee apart
|
28420 |
no genuine difference
|
28421 |
no guarant
|
@@ -28427,7 +29783,6 @@ no-collateral
|
|
28427 |
no-continu
|
28428 |
no-copy-right
|
28429 |
no-credit
|
28430 |
-
no-deposit-bonus
|
28431 |
no-fuss
|
28432 |
no-guarant
|
28433 |
no-hassle
|
@@ -28448,6 +29803,7 @@ noir homme
|
|
28448 |
noir-homme
|
28449 |
noirhomme
|
28450 |
nolvadex
|
|
|
28451 |
noo wonder
|
28452 |
noot sure
|
28453 |
nordstrom moncler
|
@@ -28521,6 +29877,8 @@ nova colecao
|
|
28521 |
nova coleção
|
28522 |
nova-colecao
|
28523 |
nova-coleção
|
|
|
|
|
28524 |
novo negocio
|
28525 |
novo negócio
|
28526 |
novo-negocio
|
@@ -28831,7 +30189,10 @@ oculosfeminino
|
|
28831 |
oczyszczalnia przydomow
|
28832 |
oczyszczalnia-przydomow
|
28833 |
odchudzanie
|
|
|
28834 |
odds of affect
|
|
|
|
|
28835 |
odszkodowania
|
28836 |
oduvan4ik
|
28837 |
odziez
|
@@ -28851,6 +30212,7 @@ of entry this
|
|
28851 |
of essay writing
|
28852 |
of herpes
|
28853 |
of internet
|
|
|
28854 |
of manies
|
28855 |
of of the
|
28856 |
of on your blog
|
@@ -28944,9 +30306,11 @@ officeautopilot
|
|
28944 |
officeerror
|
28945 |
official giub
|
28946 |
official moncler
|
|
|
28947 |
official web
|
28948 |
official-giub
|
28949 |
official-moncler
|
|
|
28950 |
official-sale
|
28951 |
official-steeler
|
28952 |
official-style
|
@@ -28958,6 +30322,7 @@ officialemoncler
|
|
28958 |
officialgiub
|
28959 |
officialmailsite
|
28960 |
officialmoncler
|
|
|
28961 |
officialsale
|
28962 |
officialsteeler
|
28963 |
officialstyle
|
@@ -28981,8 +30346,11 @@ offline forum
|
|
28981 |
offline-forum
|
28982 |
ofhuman
|
28983 |
oficery
|
|
|
|
|
28984 |
oficialniy sayt
|
28985 |
oficialniy-sayt
|
|
|
28986 |
ofnews
|
28987 |
ogrodowyparasol
|
28988 |
ogrodowypokrowi
|
@@ -29010,6 +30378,8 @@ old|
|
|
29010 |
olur oturum
|
29011 |
olur-oturum
|
29012 |
omalizumab
|
|
|
|
|
29013 |
on board battery
|
29014 |
on da chia se
|
29015 |
ơn đã chia sẻ
|
@@ -29095,6 +30465,7 @@ online 24
|
|
29095 |
online albenda
|
29096 |
online albenza
|
29097 |
online bag
|
|
|
29098 |
online best
|
29099 |
online betting
|
29100 |
online boot
|
@@ -29133,17 +30504,20 @@ online games store
|
|
29133 |
online gaming play
|
29134 |
online gaming store
|
29135 |
online gefunden
|
|
|
29136 |
online grant app
|
29137 |
online gratis
|
29138 |
online gry
|
29139 |
online heel
|
29140 |
online hn
|
|
|
29141 |
online internet
|
29142 |
online journ
|
29143 |
online life coach
|
29144 |
online loan
|
29145 |
online longbow
|
29146 |
online m4a
|
|
|
29147 |
online movie
|
29148 |
online mp3
|
29149 |
online mp4
|
@@ -29154,6 +30528,7 @@ online poker
|
|
29154 |
online pokie
|
29155 |
online profit
|
29156 |
online reader
|
|
|
29157 |
online reddit
|
29158 |
online rewad
|
29159 |
online schuh
|
@@ -29161,6 +30536,8 @@ online sex
|
|
29161 |
online shoe
|
29162 |
online shop
|
29163 |
online site
|
|
|
|
|
29164 |
online store selling
|
29165 |
online success
|
29166 |
online toos
|
@@ -29172,11 +30549,11 @@ online vietnam
|
|
29172 |
online weblog
|
29173 |
online webpage
|
29174 |
online website
|
29175 |
-
online бесплатно
|
29176 |
online-24
|
29177 |
online-albenda
|
29178 |
online-albenza
|
29179 |
online-bag
|
|
|
29180 |
online-best
|
29181 |
online-betting
|
29182 |
online-blog
|
@@ -29209,12 +30586,14 @@ online-games-store
|
|
29209 |
online-gaming-play
|
29210 |
online-gaming-store
|
29211 |
online-gefunden
|
|
|
29212 |
online-grant-app
|
29213 |
online-gratis
|
29214 |
online-gry
|
29215 |
online-guide-of
|
29216 |
online-heel
|
29217 |
online-hn
|
|
|
29218 |
online-internet
|
29219 |
online-invest
|
29220 |
online-journ
|
@@ -29223,6 +30602,7 @@ online-loan
|
|
29223 |
online-longbow
|
29224 |
online-m4a
|
29225 |
online-market
|
|
|
29226 |
online-med
|
29227 |
online-money
|
29228 |
online-movie
|
@@ -29244,9 +30624,12 @@ online-sex
|
|
29244 |
online-shoe
|
29245 |
online-shop
|
29246 |
online-site
|
|
|
|
|
29247 |
online-store
|
29248 |
online-success
|
29249 |
online-toos
|
|
|
29250 |
online-unblock
|
29251 |
online-usa
|
29252 |
online-video-market
|
@@ -29254,7 +30637,6 @@ online-weblog
|
|
29254 |
online-webpage
|
29255 |
online-website
|
29256 |
online-zapatilla
|
29257 |
-
online-бесплатно
|
29258 |
online,look
|
29259 |
online,shop
|
29260 |
online:look
|
@@ -29286,12 +30668,15 @@ onlineeurax
|
|
29286 |
onlineforsale
|
29287 |
onlinefree
|
29288 |
onlinegambl
|
|
|
|
|
29289 |
onlineheel
|
29290 |
onlineinternet
|
29291 |
onlineinvest
|
29292 |
onlinejp
|
29293 |
onlineloan
|
29294 |
onlinem4a
|
|
|
29295 |
onlinemed
|
29296 |
onlinemoney
|
29297 |
onlinemp3
|
@@ -29309,7 +30694,9 @@ onlineschuh
|
|
29309 |
onlinesex
|
29310 |
onlineshoe
|
29311 |
onlineshop
|
|
|
29312 |
onlinestore
|
|
|
29313 |
onlinezapatilla
|
29314 |
onlpy
|
29315 |
only + free
|
@@ -29351,6 +30738,7 @@ ooobag
|
|
29351 |
ooobrand
|
29352 |
ooowatch
|
29353 |
openair
|
|
|
29354 |
openlink?
|
29355 |
openning
|
29356 |
operated respir
|
@@ -29416,6 +30804,8 @@ orderforte
|
|
29416 |
ordergeneric
|
29417 |
orderparafon
|
29418 |
ordersoma
|
|
|
|
|
29419 |
organic hemp
|
29420 |
organic seo
|
29421 |
organic-hemp
|
@@ -29425,6 +30815,7 @@ organizovana zlo
|
|
29425 |
organizovana-zlo
|
29426 |
organogold
|
29427 |
orgazma
|
|
|
29428 |
orghttp
|
29429 |
oriflame
|
29430 |
origami origami
|
@@ -29704,7 +31095,10 @@ oxycodone
|
|
29704 |
oxycontin
|
29705 |
oympia
|
29706 |
oyun avtomat
|
|
|
29707 |
oyun-avtomat
|
|
|
|
|
29708 |
oρ
|
29709 |
oϲ
|
29710 |
oг
|
@@ -29757,7 +31151,9 @@ page give pleasant
|
|
29757 |
page gives pleasant
|
29758 |
page is fastidious
|
29759 |
page is invaluable
|
|
|
29760 |
page is priceless
|
|
|
29761 |
page is truly
|
29762 |
page link
|
29763 |
page of search engine
|
@@ -29811,9 +31207,11 @@ página-web
|
|
29811 |
pagss
|
29812 |
paid autosurf
|
29813 |
paid google
|
|
|
29814 |
paid review
|
29815 |
paid-autosurf
|
29816 |
paid-google
|
|
|
29817 |
paid-review
|
29818 |
pain-behind
|
29819 |
pain-relief
|
@@ -30040,6 +31438,7 @@ paragraph is real
|
|
30040 |
paragraph is truly
|
30041 |
paragraph offer
|
30042 |
paragraph post
|
|
|
30043 |
paragraph writ
|
30044 |
paragraph-at-this
|
30045 |
paragraph-here
|
@@ -30156,7 +31555,9 @@ passionaqte
|
|
30156 |
passionately fond
|
30157 |
passionately-fond
|
30158 |
passive income system
|
|
|
30159 |
passive-income-system
|
|
|
30160 |
passo_a_passo
|
30161 |
passo-a-passo
|
30162 |
passprefix
|
@@ -30188,6 +31589,8 @@ past-lives-memory
|
|
30188 |
pastebin.fun
|
30189 |
patagonia-zone
|
30190 |
patagoniazone
|
|
|
|
|
30191 |
patience maxi
|
30192 |
patience-maxi
|
30193 |
patiencemaxi
|
@@ -30211,7 +31614,9 @@ paulsmithsu
|
|
30211 |
paxil
|
30212 |
pay_day
|
30213 |
pay-as-you-go
|
|
|
30214 |
payday loan
|
|
|
30215 |
payday-loan
|
30216 |
payday-on
|
30217 |
payday.co
|
@@ -30221,6 +31626,8 @@ payday.ro
|
|
30221 |
payday.ru
|
30222 |
payday.su
|
30223 |
payday.za
|
|
|
|
|
30224 |
paydayloan
|
30225 |
paydaynote
|
30226 |
paydayon
|
@@ -30247,10 +31654,7 @@ paypalcash
|
|
30247 |
paypall
|
30248 |
paypalmoney
|
30249 |
payroll-calc
|
30250 |
-
paysafecard
|
30251 |
-
paysafecard instant
|
30252 |
-
paysafecard-exchang
|
30253 |
-
paysafecard-instant
|
30254 |
pazarlayan pezevengin
|
30255 |
pazarlayan-pezevengin
|
30256 |
pbrolme
|
@@ -30317,6 +31721,10 @@ peer-you
|
|
30317 |
pefcret
|
30318 |
pen montblanc
|
30319 |
pen-montblanc
|
|
|
|
|
|
|
|
|
30320 |
penetrar uma
|
30321 |
penetrative sex
|
30322 |
penetrative-sex
|
@@ -30376,11 +31784,13 @@ pens-montblanc
|
|
30376 |
pension frankfurt
|
30377 |
pension-frankfurt
|
30378 |
pensmontblanc
|
|
|
30379 |
people about the subject
|
30380 |
people about the topic
|
30381 |
people about this subject
|
30382 |
people about this topic
|
30383 |
people can deeply
|
|
|
30384 |
people for the subject
|
30385 |
people for the topic
|
30386 |
people for this subject
|
@@ -30412,6 +31822,9 @@ pequenas-negocio
|
|
30412 |
perabot kantor
|
30413 |
perabot-kantor
|
30414 |
percocet
|
|
|
|
|
|
|
30415 |
perfect blog
|
30416 |
perfect diet
|
30417 |
perfect interest
|
@@ -30458,6 +31871,8 @@ periodt.
|
|
30458 |
perku versla
|
30459 |
perku verslą
|
30460 |
perku-versla
|
|
|
|
|
30461 |
permission allow
|
30462 |
permission-allow
|
30463 |
permonth.co
|
@@ -30465,14 +31880,17 @@ person prov
|
|
30465 |
person-prov
|
30466 |
persona attribute
|
30467 |
personal blogroll
|
|
|
30468 |
personal pc
|
30469 |
personal personal
|
30470 |
personal pupil
|
30471 |
personal silicone
|
30472 |
personal stuffs
|
|
|
30473 |
personal-blogroll
|
30474 |
personal-exper
|
30475 |
personal-injury
|
|
|
30476 |
personal-natur
|
30477 |
personal-pc
|
30478 |
personal-personal
|
@@ -30486,6 +31904,7 @@ personalised silicone
|
|
30486 |
personalised-silicone
|
30487 |
personalized silicone
|
30488 |
personalizedsilicone
|
|
|
30489 |
personalnatur
|
30490 |
personalpc
|
30491 |
personen daten
|
@@ -30493,6 +31912,8 @@ personen-daten
|
|
30493 |
personenbezogener daten
|
30494 |
personenbezogener-daten
|
30495 |
personnalis
|
|
|
|
|
30496 |
perxon
|
30497 |
pesimdesiniz
|
30498 |
peşimdesiniz
|
@@ -30525,7 +31946,9 @@ pezonesmega
|
|
30525 |
pflegeversicherung
|
30526 |
pflegezusatzversicherung
|
30527 |
pg concern
|
|
|
30528 |
pg-concern
|
|
|
30529 |
pg/blog
|
30530 |
pg/forum
|
30531 |
pg/page
|
@@ -30533,12 +31956,23 @@ pg/post
|
|
30533 |
pg/profil
|
30534 |
pg/view
|
30535 |
pgconcern
|
|
|
30536 |
phan mem quan
|
30537 |
phần mềm quản
|
30538 |
phan-mem
|
30539 |
phần-mềm
|
30540 |
phan-mem-quan
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
30541 |
pharm_
|
|
|
|
|
30542 |
pharm.
|
30543 |
pharma canad
|
30544 |
pharma euro
|
@@ -30558,6 +31992,8 @@ pharmacy canad
|
|
30558 |
pharmacy from
|
30559 |
pharmacy online
|
30560 |
pharmacy outlet
|
|
|
|
|
30561 |
pharmacy without
|
30562 |
pharmacy_
|
30563 |
pharmacy-24
|
@@ -30566,16 +32002,20 @@ pharmacy-canad
|
|
30566 |
pharmacy-from
|
30567 |
pharmacy-online
|
30568 |
pharmacy-outlet
|
|
|
|
|
30569 |
pharmacy-without
|
30570 |
pharmacy24
|
30571 |
pharmacyat
|
30572 |
pharmacyonline
|
30573 |
pharmacyoutlet
|
|
|
30574 |
pharmaeuro
|
30575 |
pharmancies_
|
30576 |
pharmaun
|
30577 |
pharmi
|
30578 |
pharmo
|
|
|
30579 |
pharms
|
30580 |
pharmz
|
30581 |
pheaemon
|
@@ -30668,28 +32108,28 @@ phpbb2
|
|
30668 |
phpinfo
|
30669 |
phpoakley
|
30670 |
phttp
|
30671 |
-
phuc 2019
|
30672 |
-
phục 2019
|
30673 |
phuc 2020
|
30674 |
phục 2020
|
30675 |
phuc 2021
|
30676 |
phục 2021
|
|
|
|
|
30677 |
phục áo phông
|
30678 |
phục áo thun
|
30679 |
phục bon mua
|
30680 |
phuc hot
|
30681 |
phuc trend
|
30682 |
-
phuc-2019
|
30683 |
phuc-2020
|
30684 |
phuc-2021
|
|
|
30685 |
phuc-ao-phong
|
30686 |
phuc-ao-thun
|
30687 |
phuc-bon-mua
|
30688 |
phuc-hot
|
30689 |
phuc-trend
|
30690 |
-
phuc2019
|
30691 |
phuc2020
|
30692 |
phuc2021
|
|
|
30693 |
phucbonmua
|
30694 |
phuchot
|
30695 |
phuctrend
|
@@ -30700,6 +32140,8 @@ physician-formula
|
|
30700 |
physician-review
|
30701 |
physicians formula
|
30702 |
physicians-formula
|
|
|
|
|
30703 |
phytoceramide
|
30704 |
pɦân phối
|
30705 |
pɦân-phối
|
@@ -30722,6 +32164,9 @@ piece chap
|
|
30722 |
piece of writing
|
30723 |
piece off writing
|
30724 |
piece-chap
|
|
|
|
|
|
|
30725 |
pignee
|
30726 |
pigus kvepalai
|
30727 |
pigus-kvepalai
|
@@ -30747,6 +32192,7 @@ pillscheap
|
|
30747 |
pillsforsale
|
30748 |
pillsonline
|
30749 |
pillz
|
|
|
30750 |
pimples free
|
30751 |
pimples-free
|
30752 |
pin dump
|
@@ -30754,6 +32200,7 @@ pin-dump
|
|
30754 |
pin, dump
|
30755 |
pine-and-onyx
|
30756 |
ping your self
|
|
|
30757 |
pink large
|
30758 |
pink-large
|
30759 |
pinklarge
|
@@ -30812,6 +32259,9 @@ pjb-pro
|
|
30812 |
pjbpro
|
30813 |
pjure breast
|
30814 |
pjure-breast
|
|
|
|
|
|
|
30815 |
pl/wiki
|
30816 |
place for naughty
|
30817 |
place-for-naughty
|
@@ -30854,20 +32304,27 @@ plated-watch
|
|
30854 |
plavix
|
30855 |
play film trailer
|
30856 |
play films trailer
|
|
|
30857 |
play hack
|
|
|
30858 |
play video review
|
30859 |
play videos review
|
|
|
30860 |
play-film-trailer
|
30861 |
play-films-trailer
|
|
|
30862 |
play-free
|
30863 |
play-hack
|
|
|
30864 |
play-online
|
30865 |
play-reel-king
|
30866 |
play-runescape
|
30867 |
play-video-review
|
30868 |
play-videos-review
|
|
|
30869 |
playedd
|
30870 |
playerblock
|
|
|
30871 |
playfree
|
30872 |
playher
|
30873 |
playing film trailer
|
@@ -30878,10 +32335,12 @@ playing-film-trailer
|
|
30878 |
playing-films-trailer
|
30879 |
playing-video-review
|
30880 |
playing-videos-review
|
|
|
30881 |
playonline
|
30882 |
playstation code
|
30883 |
playstation-code
|
30884 |
playvid
|
|
|
30885 |
plazajp
|
30886 |
pleasant article
|
30887 |
pleasant blog
|
@@ -30972,21 +32431,28 @@ pohudenie
|
|
30972 |
point ,
|
30973 |
point !
|
30974 |
point .
|
|
|
30975 |
point generat
|
|
|
|
|
30976 |
point-generat
|
|
|
30977 |
point|
|
30978 |
pointgenerat
|
|
|
30979 |
points ,
|
30980 |
points !
|
30981 |
points .
|
30982 |
points generat
|
30983 |
points in feature
|
|
|
30984 |
points-generat
|
30985 |
points-to-think
|
30986 |
pointsgenerat
|
30987 |
poished
|
30988 |
poisk-nomera-tele
|
30989 |
pojap
|
|
|
30990 |
poke amulet
|
30991 |
poke cheat
|
30992 |
poke coin
|
@@ -31043,6 +32509,7 @@ poker domino
|
|
31043 |
poker game
|
31044 |
poker machine
|
31045 |
poker match
|
|
|
31046 |
poker mistake
|
31047 |
poker money
|
31048 |
poker online
|
@@ -31050,6 +32517,7 @@ poker qq
|
|
31050 |
poker republi
|
31051 |
poker room
|
31052 |
poker site
|
|
|
31053 |
poker soda
|
31054 |
poker strat
|
31055 |
poker terp
|
@@ -31078,6 +32546,7 @@ poker-ku
|
|
31078 |
poker-machine
|
31079 |
poker-man
|
31080 |
poker-match
|
|
|
31081 |
poker-mistake
|
31082 |
poker-money
|
31083 |
poker-online
|
@@ -31085,6 +32554,7 @@ poker-qq
|
|
31085 |
poker-republi
|
31086 |
poker-room
|
31087 |
poker-site
|
|
|
31088 |
poker-soda
|
31089 |
poker-strat
|
31090 |
poker-terp
|
@@ -31115,6 +32585,7 @@ pokermoney
|
|
31115 |
pokeronline
|
31116 |
pokerqq
|
31117 |
pokerrepubli
|
|
|
31118 |
pokersoda
|
31119 |
pokerstrat
|
31120 |
pokertexas
|
@@ -31156,6 +32627,8 @@ poloshoe
|
|
31156 |
polosralph
|
31157 |
polsce pdf
|
31158 |
polsce-pdf
|
|
|
|
|
31159 |
pomyslow prezent
|
31160 |
pomysłow prezent
|
31161 |
pomyslow-prezent
|
@@ -31195,6 +32668,7 @@ porn angel
|
|
31195 |
porn app
|
31196 |
porn beer
|
31197 |
porn big
|
|
|
31198 |
porn cocuk
|
31199 |
porn comic
|
31200 |
porn dairy
|
@@ -31215,6 +32689,7 @@ porn hd
|
|
31215 |
porn hot
|
31216 |
porn hub
|
31217 |
porn izle
|
|
|
31218 |
porn lesb
|
31219 |
porn live
|
31220 |
porn lohan
|
@@ -31252,8 +32727,10 @@ porn wyna
|
|
31252 |
porn young
|
31253 |
porn_
|
31254 |
porn-
|
|
|
31255 |
porn-hd
|
31256 |
porn-izle
|
|
|
31257 |
porn-play
|
31258 |
porn-podcast
|
31259 |
porn-rape
|
@@ -31266,6 +32743,7 @@ pornangel
|
|
31266 |
pornapp
|
31267 |
pornbeer
|
31268 |
pornbig
|
|
|
31269 |
porncocuk
|
31270 |
porncomic
|
31271 |
porndairy
|
@@ -31287,6 +32765,7 @@ pornhot
|
|
31287 |
pornhub
|
31288 |
pornhud
|
31289 |
pornizle
|
|
|
31290 |
pornlesb
|
31291 |
pornlive
|
31292 |
pornlohan
|
@@ -31466,6 +32945,7 @@ portalu-multimedia
|
|
31466 |
portray & decorat
|
31467 |
portray & decorat
|
31468 |
portray and decorat
|
|
|
31469 |
positikon
|
31470 |
positive credit history
|
31471 |
positively helpful
|
@@ -31478,12 +32958,14 @@ possess
|
|
31478 |
possible kill you
|
31479 |
possibly can constant
|
31480 |
possibly kill you
|
|
|
31481 |
possui publicidade
|
31482 |
possui zero
|
31483 |
possui-publicidade
|
31484 |
possui-zero
|
31485 |
post ::
|
31486 |
post aat
|
|
|
31487 |
post at this site
|
31488 |
post como este
|
31489 |
post composing
|
@@ -31526,6 +33008,10 @@ post.pw
|
|
31526 |
post.real
|
31527 |
post.thank
|
31528 |
postcarf
|
|
|
|
|
|
|
|
|
31529 |
postfully
|
31530 |
posting comment
|
31531 |
posting movies frequent
|
@@ -31615,6 +33101,7 @@ ppvcpa
|
|
31615 |
ppvtraff
|
31616 |
pr článek
|
31617 |
pr článk
|
|
|
31618 |
pra acabar
|
31619 |
pra-acabar
|
31620 |
prac licencjackich
|
@@ -31681,10 +33168,14 @@ pradavest
|
|
31681 |
pragnanter firmen
|
31682 |
prägnanter firmen
|
31683 |
pragnanter-firmen
|
|
|
|
|
|
|
31684 |
prawnik
|
31685 |
prazer sexual
|
31686 |
prazer-sexual
|
31687 |
prazosin
|
|
|
31688 |
prdetty
|
31689 |
precios_
|
31690 |
precisely lots
|
@@ -31744,6 +33235,7 @@ premarin
|
|
31744 |
premature ejac
|
31745 |
premature-ejac
|
31746 |
prematureejac
|
|
|
31747 |
premium anti
|
31748 |
premium cig
|
31749 |
premium digit
|
@@ -31752,7 +33244,10 @@ premium free
|
|
31752 |
premium improve
|
31753 |
premium key
|
31754 |
premium out
|
|
|
|
|
31755 |
premium-account
|
|
|
31756 |
premium-anti
|
31757 |
premium-cig
|
31758 |
premium-digit
|
@@ -31760,6 +33255,8 @@ premium-dignit
|
|
31760 |
premium-free
|
31761 |
premium-key
|
31762 |
premium-out
|
|
|
|
|
31763 |
premium.ru
|
31764 |
premiumaccount
|
31765 |
premiumanti
|
@@ -31769,6 +33266,7 @@ premiumdignit
|
|
31769 |
premiumfree
|
31770 |
premiumkey
|
31771 |
premiumout
|
|
|
31772 |
prentice capital
|
31773 |
prentice-capital
|
31774 |
prenticecapital
|
@@ -31820,12 +33318,39 @@ press-web-page
|
|
31820 |
press-webpage
|
31821 |
pressuppose
|
31822 |
presta dinero
|
|
|
31823 |
presta rapidos
|
|
|
31824 |
presta-dinero
|
31825 |
presta-rapidos
|
31826 |
prestadinero
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31827 |
prestamos rapidos
|
|
|
|
|
|
|
|
|
31828 |
prestamos-rapidos
|
|
|
|
|
|
|
31829 |
prestamosrapidos
|
31830 |
prestarapidos
|
31831 |
pretty candy as
|
@@ -31844,12 +33369,16 @@ prezzi-giub
|
|
31844 |
prezzibors
|
31845 |
prezzigiub
|
31846 |
price cheap
|
|
|
31847 |
price now!
|
|
|
31848 |
price philip
|
31849 |
price replic
|
31850 |
price sunglass
|
31851 |
price-cheap
|
|
|
31852 |
price-of-gold
|
|
|
31853 |
price-philip
|
31854 |
price-replic
|
31855 |
price-sunglass
|
@@ -31903,10 +33432,12 @@ privat-proxy
|
|
31903 |
privatamateur
|
31904 |
private amateur
|
31905 |
private ftp
|
|
|
31906 |
private-amateur
|
31907 |
private-ftp
|
31908 |
private-label
|
31909 |
private-proxy
|
|
|
31910 |
privateamateur
|
31911 |
privateftp
|
31912 |
privatelabel
|
@@ -31926,11 +33457,13 @@ prix-chaus
|
|
31926 |
prix-ugg
|
31927 |
prixchaus
|
31928 |
prixugg
|
|
|
31929 |
pro key
|
31930 |
pro medical
|
31931 |
pro pip
|
31932 |
pro review
|
31933 |
pro_site
|
|
|
31934 |
pro-medical
|
31935 |
pro-pip
|
31936 |
pro-review
|
@@ -31952,6 +33485,7 @@ problemowych
|
|
31952 |
probllem
|
31953 |
proc opport
|
31954 |
proc-opport
|
|
|
31955 |
procedures-for
|
31956 |
proceed travel in
|
31957 |
proceed your writing
|
@@ -32006,31 +33540,37 @@ profesionales-cualificado
|
|
32006 |
profesionalidad y experiencia
|
32007 |
profesjonal
|
32008 |
professianal
|
32009 |
-
|
|
|
32010 |
professional 2020
|
32011 |
professional 2021
|
|
|
32012 |
professional blog
|
|
|
32013 |
professional cosmet
|
32014 |
professional essay
|
32015 |
professional hypno
|
32016 |
professional poker
|
32017 |
professional top quality
|
32018 |
professional ugg
|
32019 |
-
professional-2019
|
32020 |
professional-2020
|
32021 |
professional-2021
|
|
|
32022 |
professional-blog
|
|
|
32023 |
professional-cosmet
|
32024 |
professional-essay
|
32025 |
professional-hypno
|
32026 |
professional-poker
|
32027 |
professional-ugg
|
32028 |
-
professional2019
|
32029 |
professional2020
|
32030 |
professional2021
|
|
|
32031 |
professionalpoker
|
32032 |
professionals.co
|
32033 |
professionalugg
|
|
|
|
|
32034 |
proficiency advantage
|
32035 |
proficiency badge
|
32036 |
proficiency course
|
@@ -32093,7 +33633,9 @@ profits-stream
|
|
32093 |
profitseek
|
32094 |
profitsreview
|
32095 |
program fault you
|
|
|
32096 |
program ppc
|
|
|
32097 |
program-ppc
|
32098 |
programs on ways
|
32099 |
progress loan
|
@@ -32122,6 +33664,7 @@ prom.ru
|
|
32122 |
promo art
|
32123 |
promo artist
|
32124 |
promo bag
|
|
|
32125 |
promo marketing
|
32126 |
promo shop
|
32127 |
promo store
|
@@ -32131,16 +33674,19 @@ promo voucher
|
|
32131 |
promo-art
|
32132 |
promo-artist
|
32133 |
promo-bag
|
|
|
32134 |
promo-marketing
|
32135 |
promo-shop
|
32136 |
promo-store
|
32137 |
promo-sys
|
32138 |
promo-team
|
32139 |
promo-voucher
|
|
|
32140 |
promo+
|
32141 |
promoart
|
32142 |
promobag
|
32143 |
promocja
|
|
|
32144 |
promocode
|
32145 |
promomarketing
|
32146 |
promos code
|
@@ -32189,6 +33735,8 @@ propecia
|
|
32189 |
propeer
|
32190 |
proper blog
|
32191 |
proper-ugg
|
|
|
|
|
32192 |
propertiok
|
32193 |
property highly secure
|
32194 |
property pro
|
@@ -32196,13 +33744,18 @@ property-pro
|
|
32196 |
propertypro
|
32197 |
properugg
|
32198 |
propip
|
|
|
|
|
32199 |
propranolol
|
32200 |
proshop.ru
|
32201 |
prospects of decay
|
|
|
32202 |
prostate stimul
|
32203 |
prostate-stimul
|
32204 |
prostitutki
|
|
|
32205 |
protandim
|
|
|
32206 |
protein bene
|
32207 |
protein powder
|
32208 |
protein review
|
@@ -32214,6 +33767,7 @@ protein-review
|
|
32214 |
protein-tozu
|
32215 |
proteinbene
|
32216 |
proteindiet
|
|
|
32217 |
proteintozu
|
32218 |
prova da oab
|
32219 |
prova-da-oab
|
@@ -32223,6 +33777,9 @@ proveedores de gran
|
|
32223 |
provewhether
|
32224 |
provide in the blog
|
32225 |
provide one thing back
|
|
|
|
|
|
|
32226 |
provider proficient
|
32227 |
provider-proficient
|
32228 |
provigil
|
@@ -32339,16 +33896,29 @@ punishment upon
|
|
32339 |
pupil loan
|
32340 |
pupil-loan
|
32341 |
puppy hating dan
|
|
|
32342 |
purchase generic
|
32343 |
purchase guilt
|
|
|
32344 |
purchase pitch
|
32345 |
purchase privilege
|
|
|
|
|
32346 |
purchase tiffany
|
|
|
|
|
|
|
|
|
32347 |
purchase-generic
|
32348 |
purchase-guilt
|
|
|
32349 |
purchase-pitch
|
32350 |
purchase-privilege
|
|
|
|
|
32351 |
purchase-tiffany
|
|
|
|
|
32352 |
purchase!cock
|
32353 |
purchasegeneric
|
32354 |
purchases pitch
|
@@ -32453,12 +34023,18 @@ qatar-eskort
|
|
32453 |
qatarescort
|
32454 |
qatareskort
|
32455 |
qhttp
|
|
|
|
|
32456 |
qq blog
|
32457 |
qq online
|
|
|
|
|
32458 |
qq-blog
|
32459 |
qq-online
|
32460 |
qq.blog
|
32461 |
qq.online
|
|
|
|
|
32462 |
qqq
|
32463 |
qquality
|
32464 |
qsymia india
|
@@ -32556,6 +34132,9 @@ quincy-femme
|
|
32556 |
quincyfemme
|
32557 |
quinoa stomach
|
32558 |
quinoa-stomach
|
|
|
|
|
|
|
32559 |
quit-smok
|
32560 |
quit-smoking
|
32561 |
quit9to5
|
@@ -32609,6 +34188,8 @@ racing-hack
|
|
32609 |
racinghack
|
32610 |
radikal.ru
|
32611 |
radiocarpea
|
|
|
|
|
32612 |
rahalat maroc
|
32613 |
rahalat-maroc
|
32614 |
raiders hat
|
@@ -32616,6 +34197,7 @@ raiders-hat
|
|
32616 |
raidershat
|
32617 |
raloxifene
|
32618 |
ralph-lauren
|
|
|
32619 |
ramipril
|
32620 |
rank increase
|
32621 |
rank-build
|
@@ -32797,6 +34379,10 @@ real-estate.web
|
|
32797 |
real-lesbian
|
32798 |
real-mastery
|
32799 |
real-money
|
|
|
|
|
|
|
|
|
32800 |
realcasino
|
32801 |
realestate.co
|
32802 |
realestate.web
|
@@ -32808,10 +34394,12 @@ reallesbian
|
|
32808 |
reallky
|
32809 |
really a commonly
|
32810 |
really easy along
|
|
|
32811 |
really excellent info
|
32812 |
really fantastic info
|
32813 |
really fastidious
|
32814 |
really fruitful
|
|
|
32815 |
really good paragraph
|
32816 |
really interesting info
|
32817 |
really like this blog
|
@@ -32830,9 +34418,12 @@ reallywork.we
|
|
32830 |
realmoney
|
32831 |
realms-full
|
32832 |
realmsfull
|
|
|
32833 |
realtor promo
|
32834 |
realtor-promo
|
|
|
32835 |
reap the most effect
|
|
|
32836 |
reason your brand
|
32837 |
reason-your-brand
|
32838 |
reasonable_trendy_
|
@@ -32841,6 +34432,7 @@ reasonable, trendy
|
|
32841 |
reasonabpe
|
32842 |
reasons your brand
|
32843 |
reasons-why
|
|
|
32844 |
reasons-your-brand
|
32845 |
rebate supply
|
32846 |
rebate-supply
|
@@ -32870,6 +34462,7 @@ reborn-site
|
|
32870 |
reborn-web
|
32871 |
reccomend this
|
32872 |
reccomend-this
|
|
|
32873 |
receive carried
|
32874 |
receive-carried
|
32875 |
recent seo
|
@@ -32936,12 +34529,16 @@ reconquista perfeita
|
|
32936 |
reconquista-perfeita
|
32937 |
records-data
|
32938 |
recordsdata
|
|
|
|
|
32939 |
recovery-now
|
32940 |
recoverynow
|
32941 |
red christ
|
|
|
32942 |
red ugg
|
32943 |
red-bottom-shoe
|
32944 |
red-christ
|
|
|
32945 |
red-ugg
|
32946 |
red+bottom+shoe
|
32947 |
redact your preceding
|
@@ -32950,6 +34547,9 @@ redbottomshoe
|
|
32950 |
redchrist
|
32951 |
redeem playstation
|
32952 |
redeem-playstation
|
|
|
|
|
|
|
32953 |
redi_url
|
32954 |
redi-url
|
32955 |
redir.asp
|
@@ -32967,7 +34567,9 @@ redireccion.htm
|
|
32967 |
redireccion.jsp
|
32968 |
redireccion.php
|
32969 |
redirect_link
|
|
|
32970 |
redirect-link
|
|
|
32971 |
redirect.asp
|
32972 |
redirect.cfm
|
32973 |
redirect.cgi
|
@@ -33000,6 +34602,9 @@ redskinsjers
|
|
33000 |
redsoleshoe
|
33001 |
reductil
|
33002 |
redugg
|
|
|
|
|
|
|
33003 |
redwingjp
|
33004 |
reebok baseball
|
33005 |
reebok ital
|
@@ -33069,6 +34674,8 @@ registration-offer
|
|
33069 |
registration-paid
|
33070 |
registration-strat
|
33071 |
registrator
|
|
|
|
|
33072 |
registry-clean
|
33073 |
registry-fix
|
33074 |
registry-repair
|
@@ -33083,6 +34690,8 @@ regulados de forex
|
|
33083 |
regulados-de-forex
|
33084 |
regulate their gaming
|
33085 |
reguliatory
|
|
|
|
|
33086 |
reinigungsfirmen hab
|
33087 |
reirect
|
33088 |
rejersey.co
|
@@ -33133,6 +34742,12 @@ relogios réplica
|
|
33133 |
relogios-replic
|
33134 |
relogios-réplica
|
33135 |
relogiosreplic
|
|
|
|
|
|
|
|
|
|
|
|
|
33136 |
remarkable article
|
33137 |
remarkable blog
|
33138 |
remarkable info
|
@@ -33208,6 +34823,11 @@ rencontres-amicale
|
|
33208 |
renda extra
|
33209 |
renda-extra
|
33210 |
renewal amenit
|
|
|
|
|
|
|
|
|
|
|
33211 |
rent luxury
|
33212 |
rent_in
|
33213 |
rent-luxury
|
@@ -33232,7 +34852,27 @@ repair-virgin
|
|
33232 |
repairs near me
|
33233 |
repairs near you
|
33234 |
repairvirgin
|
33235 |
-
reparacion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33236 |
reparatii-masini-spa
|
33237 |
repeated galdi
|
33238 |
repeated-galdi
|
@@ -33420,9 +35060,21 @@ résultats-choquant
|
|
33420 |
resulthk
|
33421 |
resulthong
|
33422 |
results.htm
|
|
|
|
|
|
|
|
|
33423 |
resume expert
|
|
|
|
|
33424 |
resume-101
|
|
|
|
|
|
|
|
|
33425 |
resume-expert
|
|
|
|
|
33426 |
resume101
|
33427 |
resumeexpert
|
33428 |
resumes expert
|
@@ -33471,6 +35123,7 @@ review my site
|
|
33471 |
review my sitte
|
33472 |
review my web
|
33473 |
review online edit
|
|
|
33474 |
review site
|
33475 |
review website
|
33476 |
review you tube
|
@@ -33478,6 +35131,7 @@ review-best
|
|
33478 |
review-bonus
|
33479 |
review-discount
|
33480 |
review-on
|
|
|
33481 |
review-sale
|
33482 |
review-site
|
33483 |
review-source
|
@@ -33496,13 +35150,16 @@ reviewbest
|
|
33496 |
reviewbonus
|
33497 |
reviewdiscount
|
33498 |
reviewon
|
|
|
33499 |
reviews best
|
33500 |
reviews online
|
|
|
33501 |
reviews you tube
|
33502 |
reviews youtube
|
33503 |
reviews-best
|
33504 |
reviews-on
|
33505 |
reviews-online
|
|
|
33506 |
reviews-today
|
33507 |
reviews-you-tube
|
33508 |
reviews-youtube
|
@@ -33521,6 +35178,7 @@ reviewsbest
|
|
33521 |
reviewsite
|
33522 |
reviewson
|
33523 |
reviewsource
|
|
|
33524 |
reviewstoday
|
33525 |
reviewstv
|
33526 |
reviewthe
|
@@ -33581,7 +35239,9 @@ ripoff a consumer
|
|
33581 |
ripoff the consumer
|
33582 |
ripoff their consumer
|
33583 |
ripoffreport
|
|
|
33584 |
rise-hire
|
|
|
33585 |
risehire
|
33586 |
rizatriptan
|
33587 |
road of success
|
@@ -33645,6 +35305,7 @@ ronni1e
|
|
33645 |
ronniie
|
33646 |
roofingcontractor
|
33647 |
room by hour
|
|
|
33648 |
room-by-hour
|
33649 |
room-decorating-idea
|
33650 |
rooms by hour
|
@@ -33775,30 +35436,59 @@ ruou dep
|
|
33775 |
rượu đẹp
|
33776 |
ruou-dep
|
33777 |
ruproshop
|
|
|
|
|
|
|
|
|
33778 |
russia.ru
|
|
|
|
|
33779 |
russian mis
|
33780 |
russian mr
|
33781 |
russian ms
|
33782 |
russian mulberry
|
33783 |
russian stalker
|
|
|
33784 |
russian-army-good
|
|
|
33785 |
russian-mis
|
33786 |
russian-mr
|
33787 |
russian-ms
|
33788 |
russian-mulberry
|
33789 |
russian-stalker
|
|
|
|
|
33790 |
russianmis
|
33791 |
russianmr
|
33792 |
russianms
|
33793 |
russianmulberry
|
|
|
|
|
33794 |
russkom nacionaliz
|
33795 |
russkom-nacionaliz
|
33796 |
rusztowania
|
33797 |
ruwordpress
|
33798 |
-
rv
|
33799 |
-
rv
|
33800 |
-
rv
|
33801 |
-
rv
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33802 |
rx-pharm
|
33803 |
rxpharm
|
33804 |
rг
|
@@ -33819,6 +35509,7 @@ s top database
|
|
33819 |
s:.
|
33820 |
s!.
|
33821 |
s.@
|
|
|
33822 |
s.all
|
33823 |
s.for
|
33824 |
s.p.o.r.t
|
@@ -33852,6 +35543,9 @@ saboring
|
|
33852 |
sabosale
|
33853 |
saboshop
|
33854 |
sabouk
|
|
|
|
|
|
|
33855 |
sac celine
|
33856 |
sac chanel
|
33857 |
sac chloe
|
@@ -34084,10 +35778,13 @@ samedayloan
|
|
34084 |
samke amount
|
34085 |
samurai siege
|
34086 |
samurai-siege
|
|
|
|
|
34087 |
san pham
|
34088 |
sản phẩm
|
34089 |
san xuat
|
34090 |
sản xuất
|
|
|
34091 |
san-pham
|
34092 |
sản-phẩm
|
34093 |
san-xuat
|
@@ -34129,6 +35826,7 @@ sanders jers
|
|
34129 |
sanders-jers
|
34130 |
sandersjers
|
34131 |
sandypasch
|
|
|
34132 |
sans ordonnance
|
34133 |
sans-ordonnance
|
34134 |
sante blog
|
@@ -34148,12 +35846,21 @@ sappige-vrouw
|
|
34148 |
sapui5
|
34149 |
sarees india
|
34150 |
sarees-india
|
|
|
|
|
34151 |
satchelbag
|
34152 |
satcheldbag
|
|
|
|
|
|
|
|
|
34153 |
satisfied reading
|
34154 |
satisfied-reading
|
34155 |
satisfying existence
|
34156 |
satllite
|
|
|
|
|
|
|
34157 |
saudavel perder
|
34158 |
saudável perder
|
34159 |
saudavel-perder
|
@@ -34165,6 +35872,7 @@ save-you-time
|
|
34165 |
saved as a fave
|
34166 |
saved as a favorite
|
34167 |
saved as a favourite
|
|
|
34168 |
savor a movie
|
34169 |
sawfwaf
|
34170 |
say about this article
|
@@ -34177,8 +35885,10 @@ say this blog
|
|
34177 |
say this page
|
34178 |
say this site
|
34179 |
say this web
|
|
|
34180 |
say your blog
|
34181 |
say your page
|
|
|
34182 |
say your site
|
34183 |
say your web
|
34184 |
sayt vizitk
|
@@ -34244,6 +35954,7 @@ schoenendame
|
|
34244 |
schoenendsqu
|
34245 |
schoenenseite
|
34246 |
schoeneseite
|
|
|
34247 |
schon schon
|
34248 |
schon-schon
|
34249 |
school.a
|
@@ -34298,8 +36009,10 @@ scraper software
|
|
34298 |
scraper-free
|
34299 |
scraper-software
|
34300 |
scraperfree
|
|
|
34301 |
script-buck
|
34302 |
scriptbuck
|
|
|
34303 |
sculpting bandage
|
34304 |
sculpting-bandage
|
34305 |
sd3546a
|
@@ -34309,6 +36022,7 @@ sdelat-makijazh
|
|
34309 |
sdfasd
|
34310 |
sdfklj
|
34311 |
sdfsdf
|
|
|
34312 |
sdlkfj
|
34313 |
seaddons
|
34314 |
seahawks jers
|
@@ -34321,27 +36035,39 @@ search engine pref
|
|
34321 |
search engines list
|
34322 |
search engines posi
|
34323 |
search engines pref
|
|
|
|
|
34324 |
search ffor
|
34325 |
search gogle
|
34326 |
search master knowledge
|
34327 |
search optim
|
34328 |
search porn
|
34329 |
-
|
34330 |
-
|
34331 |
-
|
34332 |
-
search-engine-
|
34333 |
-
search-
|
34334 |
-
search-engines-
|
34335 |
-
search-engines-
|
|
|
|
|
34336 |
search-gogle
|
34337 |
search-optim
|
34338 |
search-porn
|
|
|
34339 |
searchengine.
|
|
|
|
|
|
|
|
|
34340 |
searchhing
|
34341 |
searching
|
34342 |
searchoptim
|
34343 |
searchporn
|
|
|
34344 |
seat presently
|
|
|
|
|
34345 |
seawaypab
|
34346 |
sec-leading
|
34347 |
secara free
|
@@ -34370,15 +36096,19 @@ secured-result
|
|
34370 |
secureimage
|
34371 |
securesmtp
|
34372 |
security ip camera
|
|
|
34373 |
security-for
|
34374 |
security-ip-camera
|
|
|
34375 |
see this blog
|
34376 |
see this site
|
34377 |
see this weblog
|
34378 |
see this website
|
|
|
34379 |
seek engines
|
34380 |
seek-engines
|
34381 |
seeking for info
|
|
|
34382 |
seeking prospect
|
34383 |
seeking-prospect
|
34384 |
seekingman
|
@@ -34427,9 +36157,11 @@ selecting-a-strain
|
|
34427 |
selecting-great-white
|
34428 |
self google
|
34429 |
self on instagram
|
|
|
34430 |
self-google
|
34431 |
self-help
|
34432 |
self-on-instagram
|
|
|
34433 |
selfgoogle
|
34434 |
selfiestick
|
34435 |
sell dump
|
@@ -34445,6 +36177,8 @@ selling-iphone
|
|
34445 |
selling-machine
|
34446 |
selllancel
|
34447 |
sellnow
|
|
|
|
|
34448 |
sembol clan
|
34449 |
sembol-clan
|
34450 |
send earn
|
@@ -34482,6 +36216,7 @@ seo and mark
|
|
34482 |
seo barn
|
34483 |
seo blog
|
34484 |
seo bul
|
|
|
34485 |
seo buy
|
34486 |
seo check
|
34487 |
seo cms
|
@@ -34527,6 +36262,7 @@ seo-and-mark
|
|
34527 |
seo-barn
|
34528 |
seo-blog
|
34529 |
seo-bul
|
|
|
34530 |
seo-buy
|
34531 |
seo-check
|
34532 |
seo-cms
|
@@ -34564,6 +36300,7 @@ seo-web
|
|
34564 |
seo-widget
|
34565 |
seo-wise
|
34566 |
seo-with
|
|
|
34567 |
seo,
|
34568 |
seo?
|
34569 |
seo1337
|
@@ -34572,6 +36309,7 @@ seoadvert
|
|
34572 |
seoagenc
|
34573 |
seoalgo
|
34574 |
seobarn
|
|
|
34575 |
seobuy
|
34576 |
seocheck
|
34577 |
seocms
|
@@ -34601,6 +36339,7 @@ seovps
|
|
34601 |
seowidget
|
34602 |
seowise
|
34603 |
seowith
|
|
|
34604 |
sepid-shimi
|
34605 |
sepidshimi
|
34606 |
ser aprovado no
|
@@ -34614,20 +36353,20 @@ serenity-online
|
|
34614 |
serenityfull
|
34615 |
serial numberul
|
34616 |
serial-numberul
|
34617 |
-
serie tv 2019
|
34618 |
serie tv 2020
|
34619 |
serie tv 2021
|
34620 |
-
serie
|
34621 |
serie-tv-2020
|
34622 |
serie-tv-2021
|
|
|
34623 |
series erotic
|
34624 |
-
series tv 2019
|
34625 |
series tv 2020
|
34626 |
series tv 2021
|
|
|
34627 |
series-erotic
|
34628 |
-
series-tv-2019
|
34629 |
series-tv-2020
|
34630 |
series-tv-2021
|
|
|
34631 |
serieserotic
|
34632 |
seriestv
|
34633 |
serious ad invest
|
@@ -34651,20 +36390,20 @@ serumbuy
|
|
34651 |
servantappear
|
34652 |
served bitch
|
34653 |
served-bitch
|
34654 |
-
server 2019
|
34655 |
server 2020
|
34656 |
server 2021
|
|
|
34657 |
server coaching
|
34658 |
server download
|
34659 |
-
server-2019
|
34660 |
server-2020
|
34661 |
server-2021
|
|
|
34662 |
server-coaching
|
34663 |
server-download
|
34664 |
server.download
|
34665 |
-
server2019
|
34666 |
server2020
|
34667 |
server2021
|
|
|
34668 |
service near me
|
34669 |
service near you
|
34670 |
service now!
|
@@ -34682,13 +36421,21 @@ services/ecommerce
|
|
34682 |
services/service
|
34683 |
servicii profes
|
34684 |
servicii-profes
|
|
|
|
|
|
|
34685 |
servicio postventa
|
34686 |
servicio servicio
|
34687 |
servicio tan robusto
|
|
|
|
|
34688 |
servicio tecnico madrid
|
34689 |
servicio técnico madrid
|
34690 |
servicio tecnico oficial
|
34691 |
servicio técnico oficial
|
|
|
|
|
|
|
34692 |
servicio-postventa
|
34693 |
servicio-servicio
|
34694 |
servicios los servicios
|
@@ -34697,6 +36444,7 @@ servicios servicio
|
|
34697 |
servicios-pirata
|
34698 |
servicios-servicio
|
34699 |
servicios: servicio
|
|
|
34700 |
servicos prestado
|
34701 |
serviços prestado
|
34702 |
servicos-prestado
|
@@ -34733,9 +36481,12 @@ several opportune
|
|
34733 |
several websites can
|
34734 |
several-opportune
|
34735 |
sex advice
|
|
|
34736 |
sex blog
|
34737 |
sex budd
|
34738 |
sex cam
|
|
|
|
|
34739 |
sex clermont
|
34740 |
sex club
|
34741 |
sex dat
|
@@ -34755,11 +36506,13 @@ sex indian
|
|
34755 |
sex kat
|
34756 |
sex kontakt
|
34757 |
sex live
|
|
|
34758 |
sex mama
|
34759 |
sex mount
|
34760 |
sex movie
|
34761 |
sex mp
|
34762 |
sex naked
|
|
|
34763 |
sex papa
|
34764 |
sex pc
|
34765 |
sex porn
|
@@ -34786,9 +36539,12 @@ sex wyna
|
|
34786 |
sex zit je
|
34787 |
sex_
|
34788 |
sex-advice
|
|
|
34789 |
sex-blog
|
34790 |
sex-budd
|
34791 |
sex-cam
|
|
|
|
|
34792 |
sex-clermont
|
34793 |
sex-club
|
34794 |
sex-dat
|
@@ -34809,11 +36565,13 @@ sex-indian
|
|
34809 |
sex-kat
|
34810 |
sex-kontakt
|
34811 |
sex-live
|
|
|
34812 |
sex-mama
|
34813 |
sex-mount
|
34814 |
sex-movie
|
34815 |
sex-mp
|
34816 |
sex-naked
|
|
|
34817 |
sex-papa
|
34818 |
sex-pc
|
34819 |
sex-porn
|
@@ -34844,9 +36602,12 @@ sex.php
|
|
34844 |
sex>
|
34845 |
sex2call
|
34846 |
sexadvice
|
|
|
34847 |
sexblog
|
34848 |
sexbudd
|
34849 |
sexcam
|
|
|
|
|
34850 |
sexclub
|
34851 |
sexdat
|
34852 |
sexelist
|
@@ -34864,6 +36625,7 @@ sexinyou
|
|
34864 |
sexkat
|
34865 |
sexkontakt
|
34866 |
sexlive
|
|
|
34867 |
sexmama
|
34868 |
sexmount
|
34869 |
sexmovie
|
@@ -34876,6 +36638,7 @@ sexo-amador
|
|
34876 |
sexo-brutal
|
34877 |
sexo-mon
|
34878 |
sexomon
|
|
|
34879 |
sexpapa
|
34880 |
sexpc
|
34881 |
sexporn
|
@@ -34915,6 +36678,7 @@ sexualmoment
|
|
34915 |
sexvid
|
34916 |
sexvirgin
|
34917 |
sexweb
|
|
|
34918 |
sexy blog
|
34919 |
sexy escort
|
34920 |
sexy eskort
|
@@ -34936,6 +36700,7 @@ sexy woman
|
|
34936 |
sexy women
|
34937 |
sexy_
|
34938 |
sexy-app
|
|
|
34939 |
sexy-blog
|
34940 |
sexy-escort
|
34941 |
sexy-eskort
|
@@ -34965,6 +36730,7 @@ sexy.jsp
|
|
34965 |
sexy.php
|
34966 |
sexy2call
|
34967 |
sexyapp
|
|
|
34968 |
sexyblog
|
34969 |
sexyescort
|
34970 |
sexyeskort
|
@@ -34985,6 +36751,8 @@ seznamce
|
|
34985 |
sg-launch
|
34986 |
sgames.co
|
34987 |
sglaunch
|
|
|
|
|
34988 |
shag.ru
|
34989 |
shame on google
|
34990 |
shanghai date
|
@@ -35123,10 +36891,15 @@ shemale-movie
|
|
35123 |
shemale-porn
|
35124 |
shemale-sex
|
35125 |
shemale-vid
|
|
|
|
|
|
|
35126 |
shield your self
|
35127 |
shift dress
|
35128 |
shift-dress
|
35129 |
shiftdress
|
|
|
|
|
35130 |
shirt cease
|
35131 |
shirt cheap
|
35132 |
shirt custom
|
@@ -35239,9 +37012,9 @@ shoemizuno
|
|
35239 |
shoeonline
|
35240 |
shoeout
|
35241 |
shoepromo
|
35242 |
-
shoes 2019
|
35243 |
shoes 2020
|
35244 |
shoes 2021
|
|
|
35245 |
shoes america
|
35246 |
shoes announce
|
35247 |
shoes dior
|
@@ -35258,9 +37031,9 @@ shoes uk
|
|
35258 |
shoes web store
|
35259 |
shoes woman
|
35260 |
shoes women
|
35261 |
-
shoes-2019
|
35262 |
shoes-2020
|
35263 |
shoes-2021
|
|
|
35264 |
shoes-america
|
35265 |
shoes-cheap
|
35266 |
shoes-cloth
|
@@ -35283,9 +37056,9 @@ shoes.asp
|
|
35283 |
shoes.mobi
|
35284 |
shoes.name
|
35285 |
shoes+
|
35286 |
-
shoes2019
|
35287 |
shoes2020
|
35288 |
shoes2021
|
|
|
35289 |
shoesale
|
35290 |
shoesamerica
|
35291 |
shoescloth
|
@@ -35303,6 +37076,7 @@ shoestore
|
|
35303 |
shoesuk
|
35304 |
shoesus
|
35305 |
shoeuk
|
|
|
35306 |
shoot-tequila
|
35307 |
shop bán phụ
|
35308 |
shop blog
|
@@ -35315,6 +37089,8 @@ shop jp
|
|
35315 |
shop makeup
|
35316 |
shop online
|
35317 |
shop our homecoming
|
|
|
|
|
35318 |
shop sell perfume
|
35319 |
shop sells perfume
|
35320 |
shop thai
|
@@ -35335,6 +37111,8 @@ shop-now
|
|
35335 |
shop-online
|
35336 |
shop-our-homecoming
|
35337 |
shop-pin
|
|
|
|
|
35338 |
shop-shoe
|
35339 |
shop-thai
|
35340 |
shop-to-you
|
@@ -35393,6 +37171,7 @@ short bodycon
|
|
35393 |
short ugg
|
35394 |
short-bodycon
|
35395 |
short-ugg
|
|
|
35396 |
shorttermloan
|
35397 |
shortugg
|
35398 |
shot.you
|
@@ -35437,7 +37216,20 @@ si’ve
|
|
35437 |
si#mple
|
35438 |
sia ottimo
|
35439 |
sia-ottimo
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35440 |
sibutramine
|
|
|
|
|
|
|
35441 |
sidify prog
|
35442 |
sidify-prog
|
35443 |
sieg heil
|
@@ -35562,13 +37354,11 @@ sistemas populare
|
|
35562 |
sistemas-bolsa
|
35563 |
sistemas-populare
|
35564 |
sistershit
|
35565 |
-
site -
|
35566 |
-
site ,
|
35567 |
site ::
|
35568 |
site !
|
35569 |
-
site .
|
35570 |
site (:
|
35571 |
site =)
|
|
|
35572 |
site amor
|
35573 |
site and comment
|
35574 |
site and save
|
@@ -35583,7 +37373,9 @@ site however
|
|
35583 |
site is extreme
|
35584 |
site is fastidious
|
35585 |
site is invaluable
|
|
|
35586 |
site is priceless
|
|
|
35587 |
site is truly
|
35588 |
site link
|
35589 |
site load speed
|
@@ -35593,6 +37385,7 @@ site looks weird
|
|
35593 |
site now ;)
|
35594 |
site offer
|
35595 |
site offic
|
|
|
35596 |
site owner
|
35597 |
site particular
|
35598 |
site platform
|
@@ -35601,6 +37394,8 @@ site post
|
|
35601 |
site proprietor
|
35602 |
site provid
|
35603 |
site que fale
|
|
|
|
|
35604 |
site taste
|
35605 |
site technique
|
35606 |
site theme
|
@@ -35624,6 +37419,7 @@ site-is-extreme
|
|
35624 |
site-link
|
35625 |
site-offer
|
35626 |
site-offic
|
|
|
35627 |
site-owner
|
35628 |
site-particular
|
35629 |
site-platform
|
@@ -35631,6 +37427,8 @@ site-position
|
|
35631 |
site-post
|
35632 |
site-proprietor
|
35633 |
site-provid
|
|
|
|
|
35634 |
site-taste
|
35635 |
site-technique
|
35636 |
site-theme
|
@@ -35643,8 +37441,6 @@ site-wordpress
|
|
35643 |
site:-
|
35644 |
site:)
|
35645 |
site? my web
|
35646 |
-
site.co
|
35647 |
-
site.in
|
35648 |
site.vip
|
35649 |
site/essay
|
35650 |
site24
|
@@ -35671,6 +37467,7 @@ sitemizi ziyaret
|
|
35671 |
sitemizi-siyaret
|
35672 |
sitemizi-ziyaret
|
35673 |
siteoffic
|
|
|
35674 |
sites and blogs
|
35675 |
sites luke
|
35676 |
sites on the internet
|
@@ -35680,6 +37477,7 @@ sites-and-blogs
|
|
35680 |
sites24
|
35681 |
sitesi tıkla
|
35682 |
sitesi-tıkla
|
|
|
35683 |
siteuffic
|
35684 |
sitevip
|
35685 |
siteweb
|
@@ -35697,13 +37495,20 @@ sitouffic
|
|
35697 |
sitougg
|
35698 |
situs ilegal
|
35699 |
situs judi
|
|
|
|
|
35700 |
situs poker
|
35701 |
situs qq
|
|
|
35702 |
situs togel
|
|
|
35703 |
situs-ilegal
|
35704 |
situs-judi
|
|
|
|
|
35705 |
situs-poker
|
35706 |
situs-qq
|
|
|
35707 |
situs-togel
|
35708 |
situsqq
|
35709 |
siutpd
|
@@ -35737,17 +37542,22 @@ skilled-blog
|
|
35737 |
skilledblog
|
35738 |
skillset expert
|
35739 |
skillset-expert
|
|
|
35740 |
skin club
|
|
|
35741 |
skin pigment
|
35742 |
skin_pigment
|
|
|
35743 |
skin-care-review
|
35744 |
skin-club
|
|
|
35745 |
skin-pigment
|
35746 |
skincare-review
|
35747 |
skincare-work
|
35748 |
skincarereview
|
35749 |
skincarework
|
35750 |
skinclub
|
|
|
35751 |
skinnys review
|
35752 |
skinnys-review
|
35753 |
skinnysreview
|
@@ -35774,12 +37584,14 @@ skorrea
|
|
35774 |
skortimber
|
35775 |
skup-aut
|
35776 |
skup,aut
|
35777 |
-
sky
|
35778 |
-
sky-
|
35779 |
-
|
35780 |
skyrocket you
|
35781 |
skyrocket-you
|
|
|
35782 |
sleazy lawyer
|
|
|
35783 |
sleazy-lawyer
|
35784 |
sledge baseball
|
35785 |
sledge bat
|
@@ -35804,14 +37616,44 @@ slippers-khaki
|
|
35804 |
slipperskhaki
|
35805 |
slme genuine
|
35806 |
slongchamp
|
|
|
|
|
|
|
35807 |
slot machine
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35808 |
slot-machine
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35809 |
slotmachine
|
|
|
|
|
35810 |
slots blackjack
|
35811 |
slots machine
|
|
|
35812 |
slots rtp
|
|
|
35813 |
slots-blackjack
|
35814 |
slots-machine
|
|
|
|
|
35815 |
slots-rtp
|
35816 |
slots, blackjack
|
35817 |
slotsmachine
|
@@ -35873,14 +37715,19 @@ smarketoprogram
|
|
35873 |
smarketoreview
|
35874 |
smarketosecret
|
35875 |
smarketosoftware
|
|
|
35876 |
smart hoverboard
|
35877 |
smart-balance
|
|
|
|
|
35878 |
smart-drug
|
35879 |
smart-hoverboard
|
35880 |
smart-watch-gps
|
35881 |
smartbalance
|
35882 |
smartbeting
|
35883 |
smartbets
|
|
|
|
|
35884 |
smartdrug
|
35885 |
smarthoverboard
|
35886 |
smartly written article
|
@@ -35892,6 +37739,9 @@ smith sold
|
|
35892 |
smith-sold
|
35893 |
smithsold
|
35894 |
smm pannel
|
|
|
|
|
|
|
35895 |
smnall
|
35896 |
smok priv
|
35897 |
smok-priv
|
@@ -35908,10 +37758,13 @@ smsgrupp
|
|
35908 |
smurf account
|
35909 |
smurf-account
|
35910 |
smurfaccount
|
|
|
|
|
35911 |
snapback-cap
|
35912 |
snapbacks
|
35913 |
snapchat ++
|
35914 |
snapchat intro
|
|
|
35915 |
snapchat monetiz
|
35916 |
snapchat money
|
35917 |
snapchat privado
|
@@ -35919,6 +37772,7 @@ snapchat score
|
|
35919 |
snapchat you tube
|
35920 |
snapchat youtube
|
35921 |
snapchat-intro
|
|
|
35922 |
snapchat-monetiz
|
35923 |
snapchat-money
|
35924 |
snapchat-privado
|
@@ -36000,12 +37854,15 @@ socal-tms
|
|
36000 |
socaltms
|
36001 |
soccer betting
|
36002 |
soccer jersey sale
|
|
|
36003 |
soccer-betting
|
36004 |
soccer-jersey-sale
|
|
|
36005 |
soccerbet
|
36006 |
soccerjerseyclub
|
36007 |
soccerjerseysale
|
36008 |
soccerjerseysclub
|
|
|
36009 |
sociable worker
|
36010 |
social butler
|
36011 |
social buzz
|
@@ -36054,10 +37911,12 @@ soft-secret
|
|
36054 |
softsecret
|
36055 |
software beneath
|
36056 |
software house
|
|
|
36057 |
software program operate
|
36058 |
software secret
|
36059 |
software-beneath
|
36060 |
software-house
|
|
|
36061 |
software-program-operate
|
36062 |
software-secret
|
36063 |
software.in
|
@@ -36131,6 +37990,23 @@ soleilray
|
|
36131 |
solicitar un presta
|
36132 |
solicitar-un-presta
|
36133 |
solicitous afternoon
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
36134 |
solo cheat
|
36135 |
solo-cheat
|
36136 |
solução
|
@@ -36151,6 +38027,7 @@ solutionsinc
|
|
36151 |
some %
|
36152 |
some coinage
|
36153 |
some extra ass
|
|
|
36154 |
some functionalitie
|
36155 |
some genuinely great
|
36156 |
some ideas are new
|
@@ -36160,6 +38037,7 @@ some onee
|
|
36160 |
some real interest
|
36161 |
some really interest
|
36162 |
some-coinage
|
|
|
36163 |
some-functionalitie
|
36164 |
somedias
|
36165 |
somee one
|
@@ -36183,6 +38061,9 @@ soon:-
|
|
36183 |
soon:)
|
36184 |
sosial media
|
36185 |
sosial-media
|
|
|
|
|
|
|
36186 |
sound like you know
|
36187 |
source blossom
|
36188 |
source of incomes
|
@@ -36238,6 +38119,7 @@ sparkle ugg
|
|
36238 |
sparkle-ugg
|
36239 |
sparkleugg
|
36240 |
speaking approximate
|
|
|
36241 |
special approximate
|
36242 |
special daay
|
36243 |
special-approximate
|
@@ -36248,9 +38130,12 @@ specials wood
|
|
36248 |
specials-wood
|
36249 |
specialty-transfer
|
36250 |
specialtytransfer
|
|
|
36251 |
specific gift
|
36252 |
specific-gift
|
|
|
36253 |
specifucally
|
|
|
36254 |
spedified
|
36255 |
speed proxi
|
36256 |
speed proxy
|
@@ -36281,12 +38166,18 @@ spicy bbw
|
|
36281 |
spicy-bbw
|
36282 |
spider solitaire
|
36283 |
spider-solitaire
|
|
|
|
|
|
|
|
|
|
|
|
|
36284 |
spielleiterin be
|
36285 |
spielleiterin ist
|
36286 |
spilivanie derev'yev
|
36287 |
spilivanie derev’yev
|
36288 |
-
spilivanie
|
36289 |
-
spilivanie-
|
36290 |
spip.asp
|
36291 |
spip.cfm
|
36292 |
spip.ctr
|
@@ -36394,13 +38285,15 @@ sprawdzian-pdf
|
|
36394 |
sprawdzone narzedzia
|
36395 |
sprawdzone narzędzia
|
36396 |
sprawdzone-narzedzia
|
36397 |
-
sprawdzone-narzędzia
|
36398 |
sprawdzonenarzedzia
|
36399 |
-
sprawdzonenarzędzia
|
36400 |
sprinkler tune
|
36401 |
sprinkler-tune
|
36402 |
sprinklertune
|
|
|
|
|
36403 |
sprinter repair
|
|
|
|
|
36404 |
sprinter-repair
|
36405 |
sprzataniu powier
|
36406 |
sprzataniu-powier
|
@@ -36503,6 +38396,7 @@ steroid-ripoff
|
|
36503 |
steroid-satin
|
36504 |
steroid-scam
|
36505 |
steroid-siparis
|
|
|
36506 |
steroidcounter
|
36507 |
steroidfake
|
36508 |
steroidler online
|
@@ -36529,6 +38423,8 @@ steroidsonline
|
|
36529 |
steroidsripoff
|
36530 |
steroidsscam
|
36531 |
stevewynnloan
|
|
|
|
|
36532 |
stewart furniture
|
36533 |
stewart patio
|
36534 |
stewart-furniture
|
@@ -36669,6 +38565,7 @@ strategies for increasing more
|
|
36669 |
strategies-for
|
36670 |
strategii binarny
|
36671 |
strategii-binarny
|
|
|
36672 |
strategy for increasing more
|
36673 |
strategy-for
|
36674 |
stratificat.
|
@@ -36772,14 +38669,11 @@ stumbledupon
|
|
36772 |
stumpmaster
|
36773 |
stunning blog
|
36774 |
stunning brilliance
|
36775 |
-
stunning page
|
36776 |
-
stunning
|
36777 |
-
stunning
|
36778 |
-
stunning post there
|
36779 |
-
stunning quest there
|
36780 |
stunning site
|
36781 |
-
stunning story
|
36782 |
-
stunning story there
|
36783 |
stunning web
|
36784 |
stunningq
|
36785 |
style design for you
|
@@ -36801,7 +38695,6 @@ sua página
|
|
36801 |
sua postagem
|
36802 |
sua-mulher
|
36803 |
sua-pagina
|
36804 |
-
sua-página
|
36805 |
sua-postagem
|
36806 |
sub & fav
|
36807 |
sub & like
|
@@ -36866,6 +38759,7 @@ subsequent-submit
|
|
36866 |
substance deal
|
36867 |
substance-deal
|
36868 |
substancedeal
|
|
|
36869 |
subtitle indo
|
36870 |
subtitle-indo
|
36871 |
subtitleindo
|
@@ -36897,12 +38791,14 @@ successarticle
|
|
36897 |
successblog
|
36898 |
successful article
|
36899 |
successful blog
|
|
|
36900 |
successful page
|
36901 |
successful post
|
36902 |
successful site
|
36903 |
successful web
|
36904 |
successful-article
|
36905 |
successful-blog
|
|
|
36906 |
successful-page
|
36907 |
successful-post
|
36908 |
successful-site
|
@@ -37008,6 +38904,8 @@ super-casino
|
|
37008 |
super-comp
|
37009 |
super-fortnite
|
37010 |
super-locksmith
|
|
|
|
|
37011 |
super-real
|
37012 |
superaffiliate
|
37013 |
superarticle
|
@@ -37046,6 +38944,7 @@ superior-sport
|
|
37046 |
superiorcompan
|
37047 |
superiorresourc
|
37048 |
superiorsport
|
|
|
37049 |
superlocksmith
|
37050 |
superseller
|
37051 |
superstar class
|
@@ -37173,6 +39072,10 @@ swarovski-jap
|
|
37173 |
swarovski-jp
|
37174 |
swarovskijap
|
37175 |
swarovskijp
|
|
|
|
|
|
|
|
|
37176 |
sweet article
|
37177 |
sweet blog
|
37178 |
sweet cum
|
@@ -37334,13 +39237,17 @@ takenwith
|
|
37334 |
takie poglosk
|
37335 |
takie pogłosk
|
37336 |
takie-poglosk
|
|
|
37337 |
takin note
|
37338 |
takin-note
|
37339 |
taking curcumin
|
37340 |
taking-curcumin
|
|
|
|
|
37341 |
takipci satin
|
37342 |
takipçi satın
|
37343 |
takipci_satin
|
|
|
37344 |
takipci-satin
|
37345 |
takje care
|
37346 |
takje-care
|
@@ -37471,6 +39378,9 @@ taschenleder
|
|
37471 |
taschenleerer leder
|
37472 |
taschenleerer-leder
|
37473 |
taschenlongchamp
|
|
|
|
|
|
|
37474 |
taskss
|
37475 |
tastegood.co
|
37476 |
tatoo cheap
|
@@ -37526,8 +39436,11 @@ tatuagen-feminin
|
|
37526 |
tatuagens feminin
|
37527 |
tatuagens_
|
37528 |
tatuagens-feminin
|
|
|
37529 |
tavsiye filmler izle
|
|
|
37530 |
tavsiye-filmler-izle
|
|
|
37531 |
tax book
|
37532 |
tax debt
|
37533 |
tax idea
|
@@ -37566,6 +39479,7 @@ teamwork coach
|
|
37566 |
teamwork-coach
|
37567 |
teamworkcoach
|
37568 |
technique kids
|
|
|
37569 |
techniue
|
37570 |
technolgy news
|
37571 |
technolgy-news
|
@@ -37573,10 +39487,15 @@ technological globe
|
|
37573 |
technological-globe
|
37574 |
tecnicas para voce
|
37575 |
técnicas para você
|
|
|
|
|
37576 |
tecnico y asistencia tecnica
|
37577 |
técnico y asistencia tecnica
|
37578 |
tecnico y servicio tecnica
|
37579 |
técnico y servicio tecnica
|
|
|
|
|
|
|
37580 |
teen cam
|
37581 |
teen female
|
37582 |
teen lesb
|
@@ -37607,13 +39526,16 @@ teenporn
|
|
37607 |
teenpussy
|
37608 |
teens cam
|
37609 |
teens porn
|
|
|
37610 |
teens webcam
|
37611 |
teens-cam
|
37612 |
teens-porn
|
|
|
37613 |
teens-webcam
|
37614 |
teenscam
|
37615 |
teensex
|
37616 |
teensporn
|
|
|
37617 |
teenswebcam
|
37618 |
teenvirgin
|
37619 |
teenwebcam
|
@@ -37622,19 +39544,26 @@ tees-hollis
|
|
37622 |
teeshollis
|
37623 |
teeth teeth
|
37624 |
tegs:
|
|
|
|
|
37625 |
tekhbez
|
|
|
37626 |
tele gratuit
|
37627 |
tele realite
|
37628 |
télé réalité
|
|
|
37629 |
tele-gratuit
|
37630 |
tele-realite
|
37631 |
télé-réalité
|
|
|
37632 |
telefono de informacion
|
37633 |
teléfono de información
|
37634 |
telegratuit
|
37635 |
telepon-
|
37636 |
telerealite
|
37637 |
téléréalité
|
|
|
|
|
37638 |
telhadista-em
|
37639 |
telling everything concern
|
37640 |
tem.p.test
|
@@ -37664,6 +39593,7 @@ ten-best-free
|
|
37664 |
tengo una web
|
37665 |
tennisstream
|
37666 |
tenormin
|
|
|
37667 |
terima barang
|
37668 |
terima-barang
|
37669 |
term dinner
|
@@ -37695,6 +39625,7 @@ test.ca
|
|
37695 |
test.in
|
37696 |
test.tumblr
|
37697 |
test1.
|
|
|
37698 |
testimonail
|
37699 |
testosterona
|
37700 |
testosterone-boost
|
@@ -37804,7 +39735,6 @@ that will uses
|
|
37804 |
that youre
|
37805 |
that-gia-re
|
37806 |
that-i-may-subscribe
|
37807 |
-
that-isnt
|
37808 |
that, great article
|
37809 |
that, great blog
|
37810 |
that, great page
|
@@ -37956,7 +39886,9 @@ them.the
|
|
37956 |
theme for blog
|
37957 |
theme generat
|
37958 |
theme of your blog
|
|
|
37959 |
theme of your site
|
|
|
37960 |
theme sale
|
37961 |
theme-basic
|
37962 |
theme-generat
|
@@ -38005,6 +39937,7 @@ thetopdog
|
|
38005 |
thetwo
|
38006 |
theuniversity
|
38007 |
they are discussing online
|
|
|
38008 |
they loophole
|
38009 |
they the t
|
38010 |
they-loophole
|
@@ -38087,6 +40020,7 @@ this blog;
|
|
38087 |
this blog:
|
38088 |
this blog's post
|
38089 |
this blog’s post
|
|
|
38090 |
this complete blog
|
38091 |
this complete page
|
38092 |
this complete post
|
@@ -38131,6 +40065,11 @@ this post offer
|
|
38131 |
this post will assist
|
38132 |
this proficiency
|
38133 |
this publish
|
|
|
|
|
|
|
|
|
|
|
38134 |
this site before
|
38135 |
this site certain
|
38136 |
this site defin
|
@@ -38226,6 +40165,9 @@ thomasfat
|
|
38226 |
thomassabosale
|
38227 |
thomassabouk
|
38228 |
thomassabous
|
|
|
|
|
|
|
38229 |
thornhill ambassador
|
38230 |
thornhill-ambassador
|
38231 |
thornhillambassador
|
@@ -38247,6 +40189,7 @@ thousand %
|
|
38247 |
thousand%
|
38248 |
thportfol
|
38249 |
three %
|
|
|
38250 |
thriloed
|
38251 |
thrity
|
38252 |
throat blow
|
@@ -38264,10 +40207,11 @@ through the blog
|
|
38264 |
through the web
|
38265 |
through this blog
|
38266 |
through this web
|
|
|
38267 |
through your blog
|
38268 |
-
through your
|
38269 |
-
through your
|
38270 |
-
through your
|
38271 |
through-a-blog
|
38272 |
through-that-blog
|
38273 |
through-that-web
|
@@ -38365,6 +40309,7 @@ tiktok begeni
|
|
38365 |
tiktok beğeni
|
38366 |
tiktok fan
|
38367 |
tiktok intro
|
|
|
38368 |
tiktok monetiz
|
38369 |
tiktok money
|
38370 |
tiktok privado
|
@@ -38375,6 +40320,7 @@ tiktok-begeni
|
|
38375 |
tiktok-fan
|
38376 |
tiktok-hack
|
38377 |
tiktok-intro
|
|
|
38378 |
tiktok-monetiz
|
38379 |
tiktok-money
|
38380 |
tiktok-privado
|
@@ -38483,15 +40429,16 @@ tiny-dick
|
|
38483 |
tinydick
|
38484 |
tinytowtim
|
38485 |
tion?i
|
|
|
38486 |
tipblog
|
38487 |
tipo más habit
|
38488 |
tipo-mas-habit
|
38489 |
tips beberapa
|
38490 |
tips blog
|
38491 |
tips daily
|
38492 |
-
tips for 2019
|
38493 |
tips for 2020
|
38494 |
tips for 2021
|
|
|
38495 |
tips for a success
|
38496 |
tips for success
|
38497 |
tips membeli
|
@@ -38563,6 +40510,7 @@ to commenting
|
|
38563 |
to daylight
|
38564 |
to ddo
|
38565 |
to gget
|
|
|
38566 |
to my blog
|
38567 |
to my page
|
38568 |
to my sire
|
@@ -38592,6 +40540,9 @@ to-operates
|
|
38592 |
to-truly
|
38593 |
to.p.ic
|
38594 |
to.pi.c
|
|
|
|
|
|
|
38595 |
toasterovensnow
|
38596 |
tobuy.in
|
38597 |
today news
|
@@ -38706,6 +40657,7 @@ top sight
|
|
38706 |
top stop
|
38707 |
top tier
|
38708 |
top top
|
|
|
38709 |
top vid
|
38710 |
top viral
|
38711 |
top_bank
|
@@ -38742,6 +40694,7 @@ top-tai
|
|
38742 |
top-tier
|
38743 |
top-tool
|
38744 |
top-top
|
|
|
38745 |
top-vid
|
38746 |
top-viral
|
38747 |
top.asses
|
@@ -38760,6 +40713,7 @@ topbuzz
|
|
38760 |
topbvlgar
|
38761 |
topcontractor
|
38762 |
topdatabase
|
|
|
38763 |
topfakeid
|
38764 |
topforum
|
38765 |
topfreecam
|
@@ -38849,8 +40803,11 @@ totosite
|
|
38849 |
totosly
|
38850 |
touche. great
|
38851 |
touche. so
|
|
|
38852 |
tour-discount
|
|
|
38853 |
tourdiscount
|
|
|
38854 |
towarowe anna lewandowska
|
38855 |
town|
|
38856 |
toys,sex
|
@@ -38863,7 +40820,9 @@ traceservice
|
|
38863 |
tracing service
|
38864 |
tracing-service
|
38865 |
tracingservice
|
|
|
38866 |
track hyperlink
|
|
|
38867 |
track-back
|
38868 |
track-click
|
38869 |
track-hyperlink
|
@@ -38882,27 +40841,42 @@ tracker-tracing
|
|
38882 |
trackertrace
|
38883 |
trackertracing
|
38884 |
trackhyperlink
|
|
|
38885 |
tracking-a-phone
|
38886 |
tradaoquan
|
38887 |
trade_you
|
38888 |
trading-method
|
|
|
|
|
|
|
38889 |
traffic bot
|
38890 |
traffic exchang
|
38891 |
traffic ivy
|
38892 |
-
traffic lawyer
|
38893 |
traffic software
|
|
|
38894 |
traffic-bot
|
38895 |
traffic-exchang
|
38896 |
traffic-ivy
|
38897 |
-
traffic-lawyer
|
38898 |
traffic-software
|
38899 |
trafficbot
|
38900 |
trafficivy
|
38901 |
trafficvance
|
38902 |
trafficz
|
38903 |
traffscience
|
|
|
|
|
|
|
|
|
38904 |
trailer sale
|
|
|
|
|
|
|
|
|
|
|
38905 |
trailer-sale
|
|
|
38906 |
trailersale
|
38907 |
train pet dog
|
38908 |
training pet dog
|
@@ -38959,6 +40933,7 @@ treatyment
|
|
38959 |
trello freetalk
|
38960 |
trello-freetalk
|
38961 |
tremendous blog
|
|
|
38962 |
tremendous post
|
38963 |
tremendous site
|
38964 |
tremendous web
|
@@ -38994,6 +40969,7 @@ tri-tai-chinh
|
|
38994 |
trial a bit
|
38995 |
trial-software-install
|
38996 |
trickphoto
|
|
|
38997 |
trik selalu
|
38998 |
trik-selalu
|
38999 |
trimethoprim
|
@@ -39004,6 +40980,8 @@ trimoxazole use
|
|
39004 |
trimoxazole-tablet
|
39005 |
triviatrivia
|
39006 |
trollapp
|
|
|
|
|
39007 |
trong-top-5
|
39008 |
trong-top-10
|
39009 |
trong-top-five
|
@@ -39016,18 +40994,33 @@ trova-prezzi
|
|
39016 |
trovaprezzi
|
39017 |
trruly
|
39018 |
truc-tiep-bong-da
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39019 |
true search
|
39020 |
truly a fastidious
|
39021 |
truly data you
|
|
|
39022 |
truly fastidious
|
39023 |
truly fruitful
|
39024 |
truly peaked
|
|
|
39025 |
truly sharing nice
|
39026 |
truly suppose
|
39027 |
truly thk
|
39028 |
truly typically
|
39029 |
truly very
|
39030 |
truly when some
|
|
|
39031 |
truly-fastidious
|
39032 |
truly-fruitful
|
39033 |
truly-peaked
|
@@ -39052,6 +41045,12 @@ trumptrain
|
|
39052 |
trumptrump
|
39053 |
trumpvote
|
39054 |
trumpwon
|
|
|
|
|
|
|
|
|
|
|
|
|
39055 |
truth however
|
39056 |
truth teaching article
|
39057 |
truth-however
|
@@ -39120,6 +41119,7 @@ turtle home
|
|
39120 |
turtle-home
|
39121 |
turtlehome
|
39122 |
turystyka
|
|
|
39123 |
tutorial.asp
|
39124 |
tutorial.cfm
|
39125 |
tutorial.ctr
|
@@ -39149,6 +41149,7 @@ twerkvid
|
|
39149 |
twit.t.
|
39150 |
twitter advert
|
39151 |
twitter intro
|
|
|
39152 |
twitter monetiz
|
39153 |
twitter money
|
39154 |
twitter privado
|
@@ -39158,12 +41159,14 @@ twitter takipçi
|
|
39158 |
twitter-advert
|
39159 |
twitter-hack
|
39160 |
twitter-intro
|
|
|
39161 |
twitter-monetiz
|
39162 |
twitter-money
|
39163 |
twitter-privado
|
39164 |
twitter-shop
|
39165 |
twitter-takipci
|
39166 |
two %
|
|
|
39167 |
twoj blog
|
39168 |
twój blog
|
39169 |
twojego blog
|
@@ -39203,11 +41206,15 @@ u4nba
|
|
39203 |
ua-eqt-sup
|
39204 |
uae escort
|
39205 |
uae eskort
|
|
|
39206 |
uae-escort
|
39207 |
uae-eskort
|
|
|
|
|
39208 |
uaeescort
|
39209 |
uaeeskort
|
39210 |
uaepearl
|
|
|
39211 |
uaewomensclub
|
39212 |
uau incrivel
|
39213 |
uau incrível
|
@@ -39620,10 +41627,16 @@ unique-broker
|
|
39620 |
unique-interact
|
39621 |
uniquebroker
|
39622 |
uniqueinteract
|
|
|
|
|
39623 |
unitedidesign
|
|
|
39624 |
universal key
|
39625 |
universal-key
|
39626 |
universalkey
|
|
|
|
|
|
|
39627 |
unknown.co
|
39628 |
unknown.in
|
39629 |
unknown.pl
|
@@ -39657,6 +41670,8 @@ unlock-phone
|
|
39657 |
unlockiphone
|
39658 |
unlockmobil
|
39659 |
unlockphone
|
|
|
|
|
39660 |
unono chaus
|
39661 |
unono-chaus
|
39662 |
unonochaus
|
@@ -39750,6 +41765,10 @@ upgrade-your-bath
|
|
39750 |
upgrade-your-bed
|
39751 |
upgrade-your-living
|
39752 |
upgradekey
|
|
|
|
|
|
|
|
|
39753 |
upload and promo
|
39754 |
upload foto
|
39755 |
upload-file
|
@@ -39917,6 +41936,8 @@ uugg
|
|
39917 |
uuse
|
39918 |
uustore
|
39919 |
uy/image
|
|
|
|
|
39920 |
uг
|
39921 |
uѕ
|
39922 |
v buck buy
|
@@ -39998,6 +42019,17 @@ value-site
|
|
39998 |
value-web
|
39999 |
valueble
|
40000 |
valueserver
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40001 |
vanilla balance
|
40002 |
vanilla gift
|
40003 |
vanilla-balance
|
@@ -40010,6 +42042,7 @@ vape box
|
|
40010 |
vape cart
|
40011 |
vape clearance
|
40012 |
vape cloud
|
|
|
40013 |
vape e-juice
|
40014 |
vape ejuice
|
40015 |
vape juice
|
@@ -40023,6 +42056,7 @@ vape-box
|
|
40023 |
vape-cart
|
40024 |
vape-clearance
|
40025 |
vape-cloud
|
|
|
40026 |
vape-e-juice
|
40027 |
vape-ejuice
|
40028 |
vape-juice
|
@@ -40035,6 +42069,7 @@ vapebox
|
|
40035 |
vapecart
|
40036 |
vapeclearance
|
40037 |
vapecloud
|
|
|
40038 |
vapeejuice
|
40039 |
vapejuice
|
40040 |
vapepen
|
@@ -40044,51 +42079,66 @@ vaper-e-juice
|
|
40044 |
vaper-ejuice
|
40045 |
vaperejuice
|
40046 |
vapes cart
|
|
|
40047 |
vapes kit
|
40048 |
vapes-cart
|
|
|
40049 |
vapes-kit
|
40050 |
vapesave
|
40051 |
vapescart
|
|
|
40052 |
vapestick
|
40053 |
vapo save
|
40054 |
vapo-save
|
40055 |
vapor cloud
|
|
|
40056 |
vapor ix
|
40057 |
vapor juice
|
40058 |
vapor pen
|
40059 |
vapor stick
|
40060 |
vapor x
|
40061 |
vapor-cloud
|
|
|
40062 |
vapor-ix
|
40063 |
vapor-juice
|
40064 |
vapor-pen
|
40065 |
vapor-stick
|
40066 |
vapor-x
|
40067 |
vaporcloud
|
|
|
40068 |
vaporix
|
40069 |
vaporizer pen
|
40070 |
vaporizer-pen
|
40071 |
vaporjuice
|
40072 |
vaporpen
|
|
|
|
|
|
|
40073 |
vaporstick
|
40074 |
vaporx
|
40075 |
vaposave
|
|
|
40076 |
vapour ix
|
40077 |
vapour juice
|
40078 |
vapour pen
|
40079 |
vapour stick
|
40080 |
vapour x
|
40081 |
vapour-cloud
|
|
|
40082 |
vapour-ix
|
40083 |
vapour-juice
|
40084 |
vapour-pen
|
40085 |
vapour-stick
|
40086 |
vapour-x
|
40087 |
vapourcloud
|
|
|
40088 |
vapourix
|
40089 |
vapourizer pen
|
40090 |
vapourizer-pen
|
40091 |
vapourjuice
|
|
|
|
|
|
|
40092 |
vapourstick
|
40093 |
vapourx
|
40094 |
varabella
|
@@ -40096,6 +42146,7 @@ vardenafil
|
|
40096 |
variant1
|
40097 |
variant2
|
40098 |
variant3
|
|
|
40099 |
vbucks
|
40100 |
vbyj
|
40101 |
vc free
|
@@ -40161,6 +42212,7 @@ vergin porn
|
|
40161 |
vergin-porn
|
40162 |
verginporn
|
40163 |
verify itunes should
|
|
|
40164 |
verify online
|
40165 |
verify their site
|
40166 |
verify-out
|
@@ -40254,6 +42306,7 @@ vetement-homme
|
|
40254 |
vetementfemme
|
40255 |
vetementhomme
|
40256 |
veterinarnaya
|
|
|
40257 |
vetrinary
|
40258 |
vf gratuit
|
40259 |
vf-gratuit
|
@@ -40328,6 +42381,7 @@ video ist cool
|
|
40328 |
video it would also
|
40329 |
video magnif
|
40330 |
video marketing
|
|
|
40331 |
video ought not
|
40332 |
video para canal
|
40333 |
vídeo para canal
|
@@ -40361,6 +42415,7 @@ video-concen
|
|
40361 |
video-erotic
|
40362 |
video-magnif
|
40363 |
video-marketing
|
|
|
40364 |
video-para-canal
|
40365 |
video-poker
|
40366 |
video-pokie
|
@@ -40493,6 +42548,11 @@ viewarticle
|
|
40493 |
viewblog
|
40494 |
viewentry
|
40495 |
viewer to click
|
|
|
|
|
|
|
|
|
|
|
40496 |
viewers to click
|
40497 |
viewijng
|
40498 |
viewlink
|
@@ -40502,6 +42562,7 @@ views on this site
|
|
40502 |
viewtopic
|
40503 |
vigara
|
40504 |
vigrx
|
|
|
40505 |
villa-for-rent
|
40506 |
villas-for-rent
|
40507 |
vimax
|
@@ -40587,9 +42648,11 @@ viramune
|
|
40587 |
virgin porn
|
40588 |
virgin-porn
|
40589 |
virginporn
|
|
|
40590 |
virtual credit
|
40591 |
virtual funds
|
40592 |
virtual sex
|
|
|
40593 |
virtual-credit
|
40594 |
virtual-funds
|
40595 |
virtual-sex
|
@@ -40646,6 +42709,7 @@ visit-visit
|
|
40646 |
visit-web
|
40647 |
visitant
|
40648 |
visitar blog
|
|
|
40649 |
visitar-blog
|
40650 |
visited android app
|
40651 |
visited blog
|
@@ -40732,6 +42796,10 @@ viww
|
|
40732 |
vk.cc
|
40733 |
vkews
|
40734 |
vkgnfx
|
|
|
|
|
|
|
|
|
40735 |
vodstreaming
|
40736 |
vogue toms
|
40737 |
vogue-toms
|
@@ -40962,9 +43030,9 @@ warfarin-online
|
|
40962 |
warfarinonline
|
40963 |
warmjp
|
40964 |
warranty high
|
40965 |
-
warriors
|
40966 |
-
warriors-
|
40967 |
-
|
40968 |
wars cheat
|
40969 |
wars hack
|
40970 |
wars-cheat
|
@@ -40978,6 +43046,7 @@ warts-clinic
|
|
40978 |
warts-garden
|
40979 |
wartsclinic
|
40980 |
wartsgarden
|
|
|
40981 |
was ddoing
|
40982 |
was pretty candy
|
40983 |
wasbusiness
|
@@ -40992,6 +43061,7 @@ watch replic
|
|
40992 |
watch seiko
|
40993 |
watch the best movie
|
40994 |
watch this site
|
|
|
40995 |
watch-full-length
|
40996 |
watch-hdonline
|
40997 |
watch-instant
|
@@ -41000,6 +43070,7 @@ watch-quartz
|
|
41000 |
watch-replic
|
41001 |
watch-seiko
|
41002 |
watch-this-site
|
|
|
41003 |
watch-trailer-and
|
41004 |
watch-vid
|
41005 |
watch-watch
|
@@ -41022,6 +43093,8 @@ waterweight
|
|
41022 |
wating for you
|
41023 |
watte ausgestopft
|
41024 |
watte-ausgestopft
|
|
|
|
|
41025 |
way of amateur
|
41026 |
way of blog
|
41027 |
way your design
|
@@ -41059,6 +43132,7 @@ wear-shapewear
|
|
41059 |
wearinbed
|
41060 |
weave-hair
|
41061 |
weavehair
|
|
|
41062 |
web anal
|
41063 |
web based college
|
41064 |
web blog;
|
@@ -41077,12 +43151,16 @@ web invent:
|
|
41077 |
web is extreme
|
41078 |
web is fastidious
|
41079 |
web is invaluable
|
|
|
41080 |
web is priceless
|
|
|
41081 |
web is truly
|
41082 |
web market
|
41083 |
web online
|
41084 |
web optim
|
41085 |
web owner
|
|
|
|
|
41086 |
web page ..
|
41087 |
web page …
|
41088 |
web page daily
|
@@ -41098,6 +43176,7 @@ web promo
|
|
41098 |
web property
|
41099 |
web scheme
|
41100 |
web seo
|
|
|
41101 |
web sie
|
41102 |
web sikte
|
41103 |
web site ..
|
@@ -41110,6 +43189,7 @@ web site’s post
|
|
41110 |
web sites post
|
41111 |
web sitte
|
41112 |
web sjte
|
|
|
41113 |
web sute
|
41114 |
web therefore
|
41115 |
web through google
|
@@ -41148,11 +43228,13 @@ web-promo
|
|
41148 |
web-property
|
41149 |
web-scheme
|
41150 |
web-seo
|
|
|
41151 |
web-sie
|
41152 |
web-site
|
41153 |
web-sitte
|
41154 |
web-sjte
|
41155 |
web-solution
|
|
|
41156 |
web-therefore
|
41157 |
web-traff
|
41158 |
web-user-acquire
|
@@ -41172,11 +43254,14 @@ webblog
|
|
41172 |
webbmaster
|
41173 |
webcam babe
|
41174 |
webcam site
|
|
|
41175 |
webcam-babe
|
41176 |
webcam-site
|
|
|
41177 |
webcambabe
|
41178 |
webcamchat
|
41179 |
webcamsite
|
|
|
41180 |
webcontent
|
41181 |
webdesign.co
|
41182 |
webdl
|
@@ -41190,6 +43275,7 @@ weblog every once
|
|
41190 |
weblog link
|
41191 |
weblog post
|
41192 |
weblog thank
|
|
|
41193 |
weblog-link
|
41194 |
weblog. thank
|
41195 |
weblogg
|
@@ -41217,7 +43303,6 @@ webpage for any
|
|
41217 |
webpage from
|
41218 |
webpage is loading
|
41219 |
webpage it is
|
41220 |
-
webpage link
|
41221 |
webpage on regular
|
41222 |
webpage post
|
41223 |
webpage thank
|
@@ -41227,7 +43312,6 @@ webpage you
|
|
41227 |
webpage-for-any
|
41228 |
webpage-from
|
41229 |
webpage-is-loading
|
41230 |
-
webpage-link
|
41231 |
webpage-visit
|
41232 |
webpage-you
|
41233 |
webpage;
|
@@ -41239,6 +43323,7 @@ webpage's post
|
|
41239 |
webpage’s article
|
41240 |
webpage’s blog
|
41241 |
webpage’s post
|
|
|
41242 |
webpages article
|
41243 |
webpages blog
|
41244 |
webpages post
|
@@ -41263,6 +43348,7 @@ webshop/image
|
|
41263 |
websit was
|
41264 |
websit-was
|
41265 |
website ..
|
|
|
41266 |
website anjing
|
41267 |
website as friend
|
41268 |
website bookmark
|
@@ -41275,9 +43361,13 @@ website every once
|
|
41275 |
website everyday
|
41276 |
website for every
|
41277 |
website from where
|
|
|
41278 |
website inquiry
|
41279 |
website is a center
|
41280 |
website is a centre
|
|
|
|
|
|
|
41281 |
website is loading
|
41282 |
website it help
|
41283 |
website kami
|
@@ -41305,9 +43395,12 @@ website that cost
|
|
41305 |
website through google
|
41306 |
website traff
|
41307 |
website training
|
|
|
41308 |
website usa
|
41309 |
website using
|
41310 |
website visit
|
|
|
|
|
41311 |
website was ..
|
41312 |
website was …
|
41313 |
website was..
|
@@ -41327,6 +43420,7 @@ website-every-day
|
|
41327 |
website-everyday
|
41328 |
website-for-essay
|
41329 |
website-for-every
|
|
|
41330 |
website-inquiry
|
41331 |
website-is-loading
|
41332 |
website-it-help
|
@@ -41351,6 +43445,7 @@ website-wordpress
|
|
41351 |
website; this
|
41352 |
website. thank
|
41353 |
website..
|
|
|
41354 |
website.keep
|
41355 |
website's article
|
41356 |
website's post
|
@@ -41358,6 +43453,7 @@ website’s article
|
|
41358 |
website’s post
|
41359 |
website}
|
41360 |
website1
|
|
|
41361 |
websitelook
|
41362 |
websitenet
|
41363 |
websiteonline
|
@@ -41395,6 +43491,7 @@ websjte
|
|
41395 |
websolution
|
41396 |
webssite
|
41397 |
webste
|
|
|
41398 |
websute
|
41399 |
webtherefore
|
41400 |
webviewconsult
|
@@ -41439,6 +43536,8 @@ welcome-to-my-page
|
|
41439 |
welcome-to-my-site
|
41440 |
welcome-to-my-web
|
41441 |
welcometonginx
|
|
|
|
|
41442 |
well donme
|
41443 |
well informed people
|
41444 |
well written!
|
@@ -41494,10 +43593,12 @@ wewe have
|
|
41494 |
wewe will
|
41495 |
wewewe
|
41496 |
what assets is
|
41497 |
-
what blog
|
41498 |
what does turn
|
41499 |
what theyre
|
41500 |
what up dear
|
|
|
|
|
41501 |
what youre
|
41502 |
what-blog
|
41503 |
what-does-turn
|
@@ -41541,6 +43642,7 @@ where-get
|
|
41541 |
where-sell
|
41542 |
where-to-buy
|
41543 |
where-to-get
|
|
|
41544 |
where-to-sell
|
41545 |
where+can
|
41546 |
where+to
|
@@ -41550,6 +43652,10 @@ whereget
|
|
41550 |
wheresell
|
41551 |
wheretobuy
|
41552 |
wheretoget
|
|
|
|
|
|
|
|
|
41553 |
which blog platform
|
41554 |
which site platform
|
41555 |
which weblog platform
|
@@ -41569,8 +43675,10 @@ whn i
|
|
41569 |
whn the
|
41570 |
whn you
|
41571 |
who don know
|
|
|
41572 |
who theyre
|
41573 |
who usess
|
|
|
41574 |
whoa this
|
41575 |
whoa-this
|
41576 |
whoah this
|
@@ -41590,7 +43698,7 @@ wholesale free
|
|
41590 |
wholesale hand
|
41591 |
wholesale iphone
|
41592 |
wholesale jers
|
41593 |
-
wholesale
|
41594 |
wholesale jord
|
41595 |
wholesale led
|
41596 |
wholesale mlb
|
@@ -41616,7 +43724,7 @@ wholesale-free
|
|
41616 |
wholesale-hand
|
41617 |
wholesale-iphone
|
41618 |
wholesale-jers
|
41619 |
-
wholesale-
|
41620 |
wholesale-jord
|
41621 |
wholesale-led
|
41622 |
wholesale-mac
|
@@ -41639,7 +43747,6 @@ wholesalecoach
|
|
41639 |
wholesalefree
|
41640 |
wholesalehand
|
41641 |
wholesalejers
|
41642 |
-
wholesalejersey
|
41643 |
wholesalejord
|
41644 |
wholesaleled
|
41645 |
wholesalemac
|
@@ -41659,6 +43766,7 @@ whore-butt
|
|
41659 |
whorebutt
|
41660 |
whttp
|
41661 |
whwn choos
|
|
|
41662 |
why designing shabby
|
41663 |
why_designing_shabby
|
41664 |
why-designing-shabby
|
@@ -41679,6 +43787,12 @@ wiecej tutaj
|
|
41679 |
więcej tutaj
|
41680 |
wiecej-tutaj
|
41681 |
więcej-tutaj
|
|
|
|
|
|
|
|
|
|
|
|
|
41682 |
wife app
|
41683 |
wife-app
|
41684 |
wife-tube
|
@@ -41745,6 +43859,7 @@ wille-sold
|
|
41745 |
willebijoux
|
41746 |
willesold
|
41747 |
willhemp
|
|
|
41748 |
wilson jers
|
41749 |
wilson-jers
|
41750 |
wilsonjers
|
@@ -41796,7 +43911,10 @@ winterjassen
|
|
41796 |
wirh you
|
41797 |
wise quote
|
41798 |
wise-quote
|
|
|
|
|
41799 |
wishing for blog
|
|
|
41800 |
wispy lash
|
41801 |
wispy-lash
|
41802 |
witamina jest
|
@@ -41818,6 +43936,7 @@ with pics
|
|
41818 |
with prepaid plastic
|
41819 |
with professional skill
|
41820 |
with retinoid
|
|
|
41821 |
with thhe
|
41822 |
with this blog
|
41823 |
with this page showing?
|
@@ -41858,6 +43977,11 @@ without-ya!
|
|
41858 |
withthose
|
41859 |
withwebtraffic
|
41860 |
withwebvisit
|
|
|
|
|
|
|
|
|
|
|
41861 |
wiuth a
|
41862 |
wiuth the
|
41863 |
wlasciwy blog
|
@@ -41965,6 +44089,7 @@ wonderful goods
|
|
41965 |
wonderful homepage
|
41966 |
wonderful informative
|
41967 |
wonderful online
|
|
|
41968 |
wonderful post
|
41969 |
wonderful publish
|
41970 |
wonderful read!
|
@@ -41977,6 +44102,7 @@ wonderful-educational
|
|
41977 |
wonderful-homepage
|
41978 |
wonderful-informative
|
41979 |
wonderful-online
|
|
|
41980 |
wonderful-post
|
41981 |
wonderful-publish
|
41982 |
wonderful-read
|
@@ -42105,14 +44231,17 @@ words-eartique
|
|
42105 |
words-essay
|
42106 |
woriing
|
42107 |
work !!
|
|
|
42108 |
work you have here
|
42109 |
work you write
|
|
|
42110 |
work-review
|
42111 |
work-you-write
|
42112 |
work!excellent
|
42113 |
work!fantastic
|
42114 |
work!wonderful
|
42115 |
workable symptom
|
|
|
42116 |
working, great job
|
42117 |
workout-sale
|
42118 |
workoutsale
|
@@ -42231,10 +44360,16 @@ write an post
|
|
42231 |
write any article
|
42232 |
write any essay
|
42233 |
write any paper
|
|
|
42234 |
write my article
|
42235 |
write my essay
|
42236 |
write my paper
|
42237 |
write news title
|
|
|
|
|
|
|
|
|
|
|
42238 |
write subsequent
|
42239 |
write the e-book
|
42240 |
write the ebook
|
@@ -42298,6 +44433,11 @@ writingessay
|
|
42298 |
writinghelper
|
42299 |
writingpaper
|
42300 |
writingservice
|
|
|
|
|
|
|
|
|
|
|
42301 |
wrote an really
|
42302 |
wrote the e-book
|
42303 |
wtf brand
|
@@ -42513,6 +44653,7 @@ y http
|
|
42513 |
y pezone
|
42514 |
y teta
|
42515 |
y tetona
|
|
|
42516 |
y-culo
|
42517 |
y-pezone
|
42518 |
y-teta
|
@@ -42534,6 +44675,10 @@ yahoo's home page
|
|
42534 |
yahoo’s front page
|
42535 |
yahoo’s home page
|
42536 |
yahoospy
|
|
|
|
|
|
|
|
|
42537 |
yangin cıkıs
|
42538 |
yangin kapisi
|
42539 |
yangin merdiveni
|
@@ -42553,9 +44698,12 @@ yeezy2
|
|
42553 |
yeezy3
|
42554 |
yeezyboost
|
42555 |
yhttp
|
|
|
|
|
42556 |
yiur blog
|
42557 |
yiur business
|
42558 |
yiur info
|
|
|
42559 |
yjjcw
|
42560 |
yk cheap
|
42561 |
yk-cheap
|
@@ -42649,6 +44797,7 @@ you effectiveness
|
|
42649 |
you for the blog
|
42650 |
you for the post
|
42651 |
you for the share
|
|
|
42652 |
you gucci
|
42653 |
you is very effective
|
42654 |
you mayy
|
@@ -42720,6 +44869,7 @@ you’re info
|
|
42720 |
you’re sill
|
42721 |
you”ll
|
42722 |
you”re
|
|
|
42723 |
you`ll
|
42724 |
you`re
|
42725 |
youcanwear
|
@@ -42747,6 +44897,7 @@ your article kept
|
|
42747 |
your asthma so
|
42748 |
your bed furniture
|
42749 |
your bedroom play
|
|
|
42750 |
your blog kept
|
42751 |
your blog might
|
42752 |
your blog on
|
@@ -42777,6 +44928,7 @@ your kids is
|
|
42777 |
your lover
|
42778 |
your lung area
|
42779 |
your marketer
|
|
|
42780 |
your mode of describ
|
42781 |
your mode of explain
|
42782 |
your movie to put
|
@@ -42813,6 +44965,7 @@ your site pro
|
|
42813 |
your site really
|
42814 |
your site seem
|
42815 |
your site..
|
|
|
42816 |
your sites prior
|
42817 |
your sites really
|
42818 |
your sites seem
|
@@ -42855,6 +45008,7 @@ your wii will
|
|
42855 |
your wweb
|
42856 |
your zits
|
42857 |
your-account
|
|
|
42858 |
your-blog
|
42859 |
your-blog-real
|
42860 |
your-blogs-real
|
@@ -42875,6 +45029,7 @@ your-it-occup
|
|
42875 |
your-loan
|
42876 |
your-lover
|
42877 |
your-marketer
|
|
|
42878 |
your-new-important
|
42879 |
your-new-stuff-regular
|
42880 |
your-next-blog
|
@@ -42909,6 +45064,7 @@ your-you
|
|
42909 |
your.mail@
|
42910 |
youraccount
|
42911 |
yourbanker
|
|
|
42912 |
yourblog
|
42913 |
yourbudget
|
42914 |
yourcredit
|
@@ -42964,6 +45120,7 @@ youtube mp3
|
|
42964 |
youtube mp4
|
42965 |
youtube sens
|
42966 |
youtube snap
|
|
|
42967 |
youtube vi
|
42968 |
youtube-com
|
42969 |
youtube-down
|
@@ -42975,6 +45132,7 @@ youtube-mp3
|
|
42975 |
youtube-mp4
|
42976 |
youtube-sens
|
42977 |
youtube-snap
|
|
|
42978 |
youtube-vi
|
42979 |
youtube: how
|
42980 |
youtube:how
|
@@ -42987,10 +45145,12 @@ youtuber earn
|
|
42987 |
youtubers earn
|
42988 |
youtubesens
|
42989 |
youtubesnap
|
|
|
42990 |
youtubetomp3
|
42991 |
youtubetomp4
|
42992 |
youtubetv
|
42993 |
youtubevi
|
|
|
42994 |
youtvplay
|
42995 |
youu
|
42996 |
youur
|
@@ -43039,6 +45199,8 @@ yօ
|
|
43039 |
z http
|
43040 |
z.@
|
43041 |
zabaw
|
|
|
|
|
43042 |
zafar islamov
|
43043 |
zafar-islamov
|
43044 |
zafarislamov
|
@@ -43330,8 +45492,8 @@ zyvox
|
|
43330 |
адекватного муж
|
43331 |
адекватного-муж
|
43332 |
админу
|
43333 |
-
|
43334 |
-
|
43335 |
альтернатива
|
43336 |
анальной ебли
|
43337 |
андроид
|
@@ -43371,10 +45533,6 @@ zyvox
|
|
43371 |
бесплатная-демо
|
43372 |
бесплатная-диаг
|
43373 |
бесплатно
|
43374 |
-
бесплатной демо
|
43375 |
-
бесплатной диаг
|
43376 |
-
бесплатной-демо
|
43377 |
-
бесплатной-диаг
|
43378 |
бетор фирма
|
43379 |
бетор-фирма
|
43380 |
беторфирма
|
@@ -43392,6 +45550,7 @@ zyvox
|
|
43392 |
бутик отел
|
43393 |
бутик-отел
|
43394 |
быстро!
|
|
|
43395 |
валка деревьев
|
43396 |
валка-деревьев
|
43397 |
вариантов дизайна несколько
|
@@ -43436,11 +45595,13 @@ zyvox
|
|
43436 |
винтовой-нас
|
43437 |
вклады сбербанк
|
43438 |
вклады-сбербанк
|
|
|
43439 |
вольво (
|
43440 |
вольво-вольво
|
43441 |
вот - http
|
43442 |
вот http
|
43443 |
вот: http
|
|
|
43444 |
все подробно
|
43445 |
все-подробно
|
43446 |
всем привет
|
@@ -43465,6 +45626,7 @@ zyvox
|
|
43465 |
гадание-online
|
43466 |
гей питер
|
43467 |
гей-питер
|
|
|
43468 |
глубокое глот
|
43469 |
глубокое-глот
|
43470 |
говорим гово
|
@@ -43477,6 +45639,7 @@ zyvox
|
|
43477 |
говорю-гово
|
43478 |
головные устройс
|
43479 |
головные-устройс
|
|
|
43480 |
грузоперевозки
|
43481 |
давайте обсудим
|
43482 |
давайте-обсудим
|
@@ -43517,6 +45680,7 @@ zyvox
|
|
43517 |
длительное лечени
|
43518 |
длительное-лечени
|
43519 |
для взлома
|
|
|
43520 |
для сайт
|
43521 |
для тела
|
43522 |
для-взлома
|
@@ -43533,6 +45697,7 @@ zyvox
|
|
43533 |
доставка
|
43534 |
доход
|
43535 |
драйвера
|
|
|
43536 |
ԁa
|
43537 |
ԁe
|
43538 |
ԁi
|
@@ -43564,6 +45729,7 @@ zyvox
|
|
43564 |
заболевани
|
43565 |
загородный дом
|
43566 |
загородный-дом
|
|
|
43567 |
зайти на сайт
|
43568 |
зайти-на-сайт
|
43569 |
заказ
|
@@ -43594,6 +45760,7 @@ zyvox
|
|
43594 |
игровые
|
43595 |
игровые автом
|
43596 |
игровые-автом
|
|
|
43597 |
иж пневмо
|
43598 |
изготовлен
|
43599 |
инете
|
@@ -43685,7 +45852,10 @@ zyvox
|
|
43685 |
леонбет
|
43686 |
лечение зависимости
|
43687 |
лечение мето
|
|
|
43688 |
лечение-зависимости
|
|
|
|
|
43689 |
лечить наркомани
|
43690 |
лечить-наркомани
|
43691 |
лига легенд
|
@@ -43700,6 +45870,7 @@ zyvox
|
|
43700 |
любит глубокое
|
43701 |
любит-глубокое
|
43702 |
магаз
|
|
|
43703 |
маркет
|
43704 |
массажер тренажер
|
43705 |
массажер-тренажер
|
@@ -43796,6 +45967,7 @@ zyvox
|
|
43796 |
оs
|
43797 |
оt
|
43798 |
оv
|
|
|
43799 |
обрезка деревьев
|
43800 |
обрезка-деревьев
|
43801 |
обучение
|
@@ -43817,6 +45989,7 @@ zyvox
|
|
43817 |
открыть сайт
|
43818 |
открыть-сайт
|
43819 |
отличные
|
|
|
43820 |
официальный сайт
|
43821 |
официальный-сайт
|
43822 |
официальных
|
@@ -43846,6 +46019,8 @@ zyvox
|
|
43846 |
платки-батик
|
43847 |
платок батик
|
43848 |
платок-батик
|
|
|
|
|
43849 |
под ключ
|
43850 |
под-ключ
|
43851 |
подарки
|
@@ -43932,6 +46107,7 @@ zyvox
|
|
43932 |
продолжительном-сроке
|
43933 |
производство
|
43934 |
промо
|
|
|
43935 |
проститутки
|
43936 |
просыпаются филосо
|
43937 |
просыпаются-филосо
|
@@ -43962,6 +46138,7 @@ zyvox
|
|
43962 |
реальный-кардинг
|
43963 |
реальный-муж
|
43964 |
регистратор
|
|
|
43965 |
реестр специал
|
43966 |
реестр-специал
|
43967 |
результаты лечени
|
@@ -44017,6 +46194,7 @@ zyvox
|
|
44017 |
с№
|
44018 |
сµ
|
44019 |
сайт hydra
|
|
|
44020 |
сайт визитк
|
44021 |
сайт очень
|
44022 |
сайт рассылки
|
@@ -44105,6 +46283,7 @@ zyvox
|
|
44105 |
сроке службы
|
44106 |
сроке-службы
|
44107 |
сруба
|
|
|
44108 |
статей
|
44109 |
стать богатым
|
44110 |
стать-богатым
|
@@ -44189,6 +46368,7 @@ zyvox
|
|
44189 |
фитнесс клуб
|
44190 |
фитнесс-клуб
|
44191 |
форекс
|
|
|
44192 |
форум
|
44193 |
фото
|
44194 |
футбол
|
@@ -44235,6 +46415,7 @@ zyvox
|
|
44235 |
эротика
|
44236 |
эротиче
|
44237 |
эротичес
|
|
|
44238 |
этот сайт
|
44239 |
этот-сайт
|
44240 |
юридической
|
@@ -44242,6 +46423,7 @@ zyvox
|
|
44242 |
язык-алматы
|
44243 |
языка алматы
|
44244 |
языка-алматы
|
|
|
44245 |
яндekc
|
44246 |
ԝa
|
44247 |
ԝe
|
@@ -44284,6 +46466,8 @@ zyvox
|
|
44284 |
איפור לכלה
|
44285 |
איפור ערב
|
44286 |
בכירים בהייטק
|
|
|
|
|
44287 |
ויקיפדיה
|
44288 |
חשפניות
|
44289 |
טכנאי מזגנים
|
@@ -44293,6 +46477,7 @@ zyvox
|
|
44293 |
מאפרת מקצועית
|
44294 |
מתקין מזגנים
|
44295 |
תיקון מזגנים
|
|
|
44296 |
آموزش شرط
|
44297 |
أخبار , اخبار
|
44298 |
أخبار اخبار
|
@@ -44307,12 +46492,14 @@ zyvox
|
|
44307 |
اخبار الرياضة
|
44308 |
اخبار, الرياضة
|
44309 |
اخر اخبار
|
|
|
44310 |
ارائه ی تخصصی
|
44311 |
ارخص سيرفر
|
44312 |
از وبلاگ
|
44313 |
ازواج حكاية
|
44314 |
ازواج,حكاية
|
44315 |
افراد ارزان
|
|
|
44316 |
افضل شركه
|
44317 |
افلام اونلاين
|
44318 |
اقل اسعار
|
@@ -44337,7 +46524,10 @@ zyvox
|
|
44337 |
اونلاين,انمي
|
44338 |
ايجي بست
|
44339 |
ايفون مجانية
|
|
|
44340 |
بازی انفجار
|
|
|
|
|
44341 |
بست افلام
|
44342 |
بست,افلام
|
44343 |
بغایت مهمی
|
@@ -44346,6 +46536,7 @@ zyvox
|
|
44346 |
بهترین
|
44347 |
بيع متابعين
|
44348 |
پازل باند
|
|
|
44349 |
تحميل العاب
|
44350 |
تخصصی ترین
|
44351 |
تخصصی نمای
|
@@ -44358,21 +46549,26 @@ zyvox
|
|
44358 |
تعلم الماني
|
44359 |
تعلم, الماني
|
44360 |
تعلم,الماني
|
|
|
44361 |
جفت درمانی
|
44362 |
جمال مكياج
|
44363 |
جمال, مكياج
|
44364 |
جمال,مكياج
|
|
|
44365 |
حبيبة كوميديا
|
44366 |
حبيبة,كوميديا
|
44367 |
حزينه حزينة
|
44368 |
حزينه, حزينة
|
44369 |
حزينه,حزينة
|
44370 |
خبر عن الرياضة
|
|
|
|
|
44371 |
خسارة الوزن
|
44372 |
خصم,كود
|
44373 |
خلاصه داستان - دانلود
|
44374 |
خلاصه داستان : دانلود
|
44375 |
خلاصه داستان-دانلود
|
|
|
44376 |
داستان سکسی
|
44377 |
دانلود آهنگ
|
44378 |
دانلود فیلم سکسی
|
@@ -44381,6 +46577,8 @@ zyvox
|
|
44381 |
دستگاه حضور
|
44382 |
دورات تدريب
|
44383 |
ديالى،علوم
|
|
|
|
|
44384 |
رتويت تويتر
|
44385 |
زواج المسيار
|
44386 |
زواج سعودية
|
@@ -44389,6 +46587,8 @@ zyvox
|
|
44389 |
زواج,مسيار
|
44390 |
زياده متابعين
|
44391 |
ساک
|
|
|
|
|
44392 |
سوپر
|
44393 |
سوريا أرخص
|
44394 |
سوريا,أرخص
|
@@ -44410,6 +46610,7 @@ zyvox
|
|
44410 |
فقدان-الوزن
|
44411 |
قم نجار
|
44412 |
قیمت نبشی
|
|
|
44413 |
كاشف الذهب
|
44414 |
كاشف المعادن
|
44415 |
كاشفات الذهب
|
@@ -44426,6 +46627,7 @@ zyvox
|
|
44426 |
كوفيد تمارين
|
44427 |
كوفيد, تمارين
|
44428 |
كوفيد,تمارين
|
|
|
44429 |
کیر
|
44430 |
لتحميل
|
44431 |
لرش المبيد ات
|
@@ -44435,6 +46637,8 @@ zyvox
|
|
44435 |
لماني,تعلم
|
44436 |
لمكافحه الحشر ات
|
44437 |
لمكافحه الحشرات
|
|
|
|
|
44438 |
متابعين انستقرام
|
44439 |
متابعين سناب
|
44440 |
متجرالبخور
|
@@ -44450,6 +46654,7 @@ zyvox
|
|
44450 |
مشاهدة الافلام
|
44451 |
مشاوره خانواده
|
44452 |
معاهد تدريب
|
|
|
44453 |
مقاله و بلاگ
|
44454 |
منوعات حبيبة
|
44455 |
موقع سؤال
|
@@ -44457,13 +46662,19 @@ zyvox
|
|
44457 |
موقع سناره
|
44458 |
موقع صنديد
|
44459 |
نجار بالدما
|
|
|
|
|
44460 |
نمو الشعر
|
44461 |
نيوز , اخبار
|
44462 |
نيوز اخبار
|
44463 |
نيوز, اخبار
|
|
|
44464 |
ها و بلاگ
|
44465 |
و بلاگ ها
|
|
|
|
|
44466 |
وب وجود
|
|
|
44467 |
وبلاگ نویسان
|
44468 |
وظائف
|
44469 |
ขาย
|
@@ -44520,7 +46731,10 @@ zyvox
|
|
44520 |
검증사이트
|
44521 |
게임
|
44522 |
경마배팅
|
|
|
|
|
44523 |
대출
|
|
|
44524 |
로얄카지노
|
44525 |
루이비통
|
44526 |
리그중계
|
@@ -44529,6 +46743,7 @@ zyvox
|
|
44529 |
먹튀
|
44530 |
무료쿠폰
|
44531 |
바카라
|
|
|
44532 |
보험
|
44533 |
블랙잭
|
44534 |
성인사이트
|
@@ -44539,8 +46754,11 @@ zyvox
|
|
44539 |
안마
|
44540 |
야구중계
|
44541 |
야동
|
|
|
44542 |
여자친구
|
44543 |
온라인카지노
|
|
|
|
|
44544 |
이트 순위
|
44545 |
인터넷카지노
|
44546 |
장기렌트
|
@@ -44548,12 +46766,16 @@ zyvox
|
|
44548 |
축구중계
|
44549 |
출장업소
|
44550 |
카지노
|
|
|
44551 |
태풍티비
|
44552 |
토토
|
44553 |
트위터
|
|
|
44554 |
파워볼사이트
|
44555 |
포인트받
|
|
|
44556 |
필수적이다
|
|
|
44557 |
アークテリクス
|
44558 |
アイホン
|
44559 |
アウトレット
|
@@ -44584,6 +46806,7 @@ zyvox
|
|
44584 |
オークリー
|
44585 |
おざ
|
44586 |
オロビアンコ
|
|
|
44587 |
お客
|
44588 |
お店を
|
44589 |
お金を
|
@@ -44653,6 +46876,7 @@ zyvox
|
|
44653 |
パワハラ
|
44654 |
バンクオブアメリカ
|
44655 |
バンズ
|
|
|
44656 |
ビトン
|
44657 |
ブーツ
|
44658 |
ファッショ
|
@@ -44706,6 +46930,7 @@ zyvox
|
|
44706 |
信息平台
|
44707 |
倒
|
44708 |
借錢網
|
|
|
44709 |
光碟破解
|
44710 |
全球华人
|
44711 |
公式
|
@@ -44734,7 +46959,9 @@ zyvox
|
|
44734 |
商城
|
44735 |
块钱
|
44736 |
基測|
|
|
|
44737 |
外贸
|
|
|
44738 |
奖网
|
44739 |
好評
|
44740 |
婚庆礼仪
|
@@ -44761,6 +46988,7 @@ zyvox
|
|
44761 |
投注网站
|
44762 |
摔死女
|
44763 |
攜心山
|
|
|
44764 |
晶燈
|
44765 |
服务
|
44766 |
札入れ
|
@@ -44815,6 +47043,7 @@ zyvox
|
|
44815 |
茅
|
44816 |
荷物
|
44817 |
落枕
|
|
|
44818 |
血症
|
44819 |
行動電源
|
44820 |
装着
|
@@ -44846,6 +47075,7 @@ zyvox
|
|
44846 |
锘縉
|
44847 |
锟斤拷
|
44848 |
门户网
|
|
|
44849 |
革の
|
44850 |
靴
|
44851 |
韓国音楽
|
1 |
+
_, _,
|
2 |
+
_, _.
|
3 |
+
_. _,
|
4 |
+
_. _.
|
5 |
_abercrom
|
6 |
_adidas
|
7 |
_adsense
|
69 |
_lesbian
|
70 |
_litecoin
|
71 |
_longchamp
|
72 |
+
_lotto
|
73 |
_loubou
|
74 |
_lululemon
|
75 |
_marijuana
|
230 |
-1.ru
|
231 |
-1.su
|
232 |
-1.za
|
233 |
+
-1win-
|
234 |
+
-1win.
|
235 |
+
-1win/
|
236 |
-2.co
|
237 |
-2.in
|
238 |
-2.ro
|
545 |
-coin/
|
546 |
-coins.
|
547 |
-coins/
|
548 |
+
-com/activity/
|
549 |
-comfort-
|
550 |
-computer-recycle.
|
551 |
-computer-recycling.
|
681 |
-femdom-
|
682 |
-femdom.
|
683 |
-femdom/
|
684 |
+
-file-word-
|
685 |
+
-file-word.
|
686 |
+
-file-word/
|
687 |
-filmi
|
688 |
-filmy
|
689 |
-filosov-
|
891 |
-law-firm-
|
892 |
-law-firm.
|
893 |
-law-firm/
|
894 |
+
-lawn-care-
|
895 |
+
-lawn-care/
|
896 |
-le-pliage
|
897 |
-lesbian-
|
898 |
-lesbian.
|
1067 |
-phexin-
|
1068 |
-phexin.
|
1069 |
-phexin/
|
1070 |
+
-phone-info-
|
1071 |
+
-phone-info.
|
1072 |
+
-phone-info/
|
1073 |
+
-phoneinfo-
|
1074 |
+
-phoneinfo.
|
1075 |
+
-phoneinfo/
|
1076 |
-picload-
|
1077 |
-picload.
|
1078 |
-picload/
|
1225 |
-salvia-
|
1226 |
-scarpe-
|
1227 |
-search-engine
|
1228 |
+
-search.ir
|
1229 |
-searchengine
|
1230 |
-secret-
|
1231 |
-secret.
|
1296 |
-somehack.
|
1297 |
-somehack/
|
1298 |
-speed-up-
|
1299 |
+
-spielideen-
|
1300 |
+
-spielideen.
|
1301 |
+
-spielideen/
|
1302 |
-sport.site
|
1303 |
-store.
|
1304 |
-store/
|
1357 |
-tatuagens-
|
1358 |
-tatuagens.
|
1359 |
-tatuagens/
|
1360 |
+
-tax-attorn
|
1361 |
-tax-relief
|
1362 |
-tax-settlement
|
1363 |
-teen-in-
|
1602 |
.1-pack.
|
1603 |
.1-pack/
|
1604 |
.1com
|
1605 |
+
.1win-
|
1606 |
+
.1win.
|
1607 |
+
.1win/
|
1608 |
.2com
|
1609 |
.2u4.us
|
1610 |
.7x.cz
|
1794 |
.com illegal
|
1795 |
.com wild
|
1796 |
.com,
|
1797 |
+
.com'da
|
1798 |
+
.com’da
|
1799 |
.com/,
|
1800 |
.com/%
|
1801 |
.com/1-
|
1881 |
.femdom-
|
1882 |
.femdom.
|
1883 |
.femdom/
|
1884 |
+
.file-word-
|
1885 |
+
.file-word.
|
1886 |
.filmi-
|
1887 |
.filmy-
|
1888 |
.filosov-
|
2148 |
.phexin-
|
2149 |
.phexin.
|
2150 |
.phexin/
|
2151 |
+
.phone-info-
|
2152 |
+
.phone-info.
|
2153 |
+
.phone-info/
|
2154 |
+
.phoneinfo-
|
2155 |
+
.phoneinfo.
|
2156 |
+
.phoneinfo/
|
2157 |
.picload-
|
2158 |
.picload.
|
2159 |
.picload/
|
2341 |
.rusex/
|
2342 |
.s.a.k
|
2343 |
.sallow.co
|
2344 |
+
.search-engine
|
2345 |
+
.searchengine
|
2346 |
.secret-
|
2347 |
.secrets-
|
2348 |
.selebriti-
|
2381 |
.space/femme
|
2382 |
.space/free
|
2383 |
.space/homme
|
2384 |
+
.spielideen-
|
2385 |
+
.spielideen.
|
2386 |
+
.spielideen/
|
2387 |
.spruz.
|
2388 |
.stream/wiki
|
2389 |
.su,
|
2543 |
.zybbs.
|
2544 |
.zzz.
|
2545 |
。com
|
2546 |
+
's depression
|
2547 |
+
’s depression
|
2548 |
" dildo
|
2549 |
«link»
|
2550 |
«комбо»
|
2704 |
/01.php
|
2705 |
/1.php
|
2706 |
/1i1.me
|
2707 |
+
/1win-
|
2708 |
+
/1win.
|
2709 |
+
/1win/
|
2710 |
/02.asp
|
2711 |
/2.asp
|
2712 |
/02.cfm
|
2850 |
/activity-
|
2851 |
/activity.
|
2852 |
/adclick?
|
2853 |
+
/adclick.ashx?
|
2854 |
/adclick.asp?
|
2855 |
/adclick.aspx?
|
2856 |
/adclick.cfm?
|
2957 |
/avto-
|
2958 |
/avto.
|
2959 |
/away?
|
2960 |
+
/away.ashx?
|
2961 |
/away.asp?
|
2962 |
/away.aspx?
|
2963 |
/away.cfm?
|
2977 |
/bags/
|
2978 |
/baidu.
|
2979 |
/banner?
|
2980 |
+
/banner.ashx?
|
2981 |
/banner.asp?
|
2982 |
/banner.aspx?
|
2983 |
/banner.cfm?
|
2989 |
/banner.php?
|
2990 |
/banner/?
|
2991 |
/banners?
|
2992 |
+
/banners.ashx?
|
2993 |
/banners.asp?
|
2994 |
/banners.aspx?
|
2995 |
/banners.cfm?
|
3100 |
/bvlgari-
|
3101 |
/bvlgari.
|
3102 |
/bye?
|
3103 |
+
/bye.ashx?
|
3104 |
/bye.asp?
|
3105 |
/bye.aspx?
|
3106 |
/bye.cfm?
|
3218 |
/cl-
|
3219 |
/cl.
|
3220 |
/cl/
|
3221 |
+
/clck.
|
3222 |
/cld-
|
3223 |
/cld.
|
3224 |
/clearance/
|
3225 |
/cli.re
|
3226 |
+
/clic.
|
3227 |
/click-
|
3228 |
/click?
|
3229 |
/click.
|
3230 |
/click/
|
3231 |
+
/clickfrm.
|
3232 |
+
/clik.
|
3233 |
/clit-
|
3234 |
/clit.
|
3235 |
/clk?
|
3286 |
/crimea-
|
3287 |
/crwl.it
|
3288 |
/cs?
|
3289 |
+
/cs.ashx?
|
3290 |
/cs.asp?
|
3291 |
/cs.aspx?
|
3292 |
/cs.cfm?
|
3339 |
/dieta.
|
3340 |
/dior.
|
3341 |
/director?
|
3342 |
+
/director.ashx?
|
3343 |
/director.asp?
|
3344 |
/director.aspx?
|
3345 |
/director.cfm?
|
3435 |
/event.
|
3436 |
/executive-
|
3437 |
/exit?
|
3438 |
+
/exit.ashx?
|
3439 |
/exit.asp?
|
3440 |
/exit.aspx?
|
3441 |
/exit.cfm?
|
3469 |
/fendi.
|
3470 |
/ferragamo-
|
3471 |
/ferragamo.
|
3472 |
+
/file-word-
|
3473 |
+
/file-word.
|
3474 |
+
/file-word/
|
3475 |
/file/
|
3476 |
/files/
|
3477 |
/filmi
|
3499 |
/forum0
|
3500 |
/forum1
|
3501 |
/forwarder?
|
3502 |
+
/forwarder.ashx?
|
3503 |
/forwarder.asp?
|
3504 |
/forwarder.aspx?
|
3505 |
/forwarder.cfm?
|
3514 |
/foto.
|
3515 |
/fpdb/
|
3516 |
/frame?
|
3517 |
+
/frame.ashx?
|
3518 |
/frame.asp?
|
3519 |
/frame.aspx?
|
3520 |
/frame.cfm?
|
3561 |
/gh1/
|
3562 |
/glowna.
|
3563 |
/go_url?
|
3564 |
+
/go_url.ashx?
|
3565 |
/go_url.asp?
|
3566 |
/go_url.aspx?
|
3567 |
/go_url.cfm?
|
3573 |
/go_url.php?
|
3574 |
/go_url/?
|
3575 |
/go?
|
3576 |
+
/go.ashx?
|
3577 |
/go.asp?
|
3578 |
/go.aspx?
|
3579 |
/go.cfm?
|
3593 |
/goose/
|
3594 |
/got.by
|
3595 |
/goto_url?
|
3596 |
+
/goto_url.ashx?
|
3597 |
/goto_url.asp?
|
3598 |
/goto_url.aspx?
|
3599 |
/goto_url.cfm?
|
3605 |
/goto_url.php?
|
3606 |
/goto_url/?
|
3607 |
/goto?
|
3608 |
+
/goto.ashx?
|
3609 |
/goto.asp?
|
3610 |
/goto.aspx?
|
3611 |
/goto.cfm?
|
3617 |
/goto.php?
|
3618 |
/goto/?
|
3619 |
/gotourl?
|
3620 |
+
/gotourl.ashx?
|
3621 |
/gotourl.asp?
|
3622 |
/gotourl.aspx?
|
3623 |
/gotourl.cfm?
|
3629 |
/gotourl.php?
|
3630 |
/gotourl/?
|
3631 |
/gourl?
|
3632 |
+
/gourl.ashx?
|
3633 |
/gourl.asp?
|
3634 |
/gourl.aspx?
|
3635 |
/gourl.cfm?
|
3700 |
/homepage.
|
3701 |
/homepage/
|
3702 |
/hop?
|
3703 |
+
/hop.ashx?
|
3704 |
/hop.asp?
|
3705 |
/hop.aspx?
|
3706 |
/hop.cfm?
|
3707 |
/hop.cgi?
|
3708 |
/hop.ctr?
|
3709 |
+
/hop.cx
|
3710 |
/hop.htm?
|
3711 |
/hop.html?
|
3712 |
/hop.jsp?
|
3756 |
/index-3
|
3757 |
/index-4
|
3758 |
/index-5
|
3759 |
+
/index.ashx?/
|
3760 |
/index.asp?/
|
3761 |
/index.aspx?/
|
3762 |
/index.cfm?/
|
3781 |
/insurance-
|
3782 |
/insurance.
|
3783 |
/internal/
|
3784 |
+
/inx.inbox.lv
|
3785 |
+
/inx.lv
|
3786 |
/ip/
|
3787 |
/iphone-s-
|
3788 |
/iphone-s.
|
3805 |
/jersey.
|
3806 |
/jerseys-
|
3807 |
/jerseys.
|
3808 |
+
/jl.ms
|
3809 |
/job.
|
3810 |
/join.
|
3811 |
/joj.
|
3821 |
/js.
|
3822 |
/js/
|
3823 |
/jump?
|
3824 |
+
/jump.ashx?
|
3825 |
/jump.asp?
|
3826 |
/jump.aspx?
|
3827 |
/jump.cfm?
|
3833 |
/jump.php?
|
3834 |
/jump/?
|
3835 |
/jumplink?
|
3836 |
+
/jumplink.ashx?
|
3837 |
/jumplink.asp?
|
3838 |
/jumplink.aspx?
|
3839 |
/jumplink.cfm?
|
3869 |
/kitchenknives-
|
3870 |
/kitchenknives.
|
3871 |
/klik?
|
3872 |
+
/klik.ashx?
|
3873 |
/klik.asp?
|
3874 |
/klik.aspx?
|
3875 |
/klik.cfm?
|
3894 |
/law-firm-
|
3895 |
/law-firm.
|
3896 |
/law-firm/
|
3897 |
+
/lawn-care-
|
3898 |
/layout1/
|
3899 |
/layout2/
|
3900 |
/legal/
|
3923 |
/lingerie.
|
3924 |
/link-
|
3925 |
/link?
|
3926 |
+
/link.ashx?
|
3927 |
/link.asp?
|
3928 |
/link.aspx?
|
3929 |
/link.cfm?
|
3948 |
/litecoin.
|
3949 |
/litecoin/
|
3950 |
/lnkcnt?
|
3951 |
+
/lnkcnt.ashx?
|
3952 |
/lnkcnt.asp?
|
3953 |
/lnkcnt.aspx?
|
3954 |
/lnkcnt.cfm?
|
3961 |
/lnkcnt/?
|
3962 |
/loans
|
3963 |
/logout?
|
3964 |
+
/logout.ashx?
|
3965 |
/logout.asp?
|
3966 |
/logout.aspx?
|
3967 |
/logout.cfm?
|
3996 |
/lv/
|
3997 |
/lvl.vn
|
3998 |
/m?
|
3999 |
+
/m.ashx?
|
4000 |
/m.asp?
|
4001 |
/m.aspx?
|
4002 |
/m.cfm?
|
4015 |
/maillot.
|
4016 |
/maillot/
|
4017 |
/mainframe?
|
4018 |
+
/mainframe.ashx?
|
4019 |
/mainframe.asp?
|
4020 |
/mainframe.aspx?
|
4021 |
/mainframe.cfm?
|
4154 |
/openlink.
|
4155 |
/openlink/
|
4156 |
/optout?
|
4157 |
+
/optout.ashx?
|
4158 |
/optout.asp?
|
4159 |
/optout.aspx?
|
4160 |
/optout.cfm?
|
4169 |
/orgasm
|
4170 |
/oulu
|
4171 |
/out?
|
4172 |
+
/out.ashx?
|
4173 |
/out.asp?
|
4174 |
/out.aspx?
|
4175 |
/out.cfm?
|
4184 |
/outlet/
|
4185 |
/outlink-
|
4186 |
/outlink?
|
4187 |
+
/outlink.ashx?
|
4188 |
/outlink.asp?
|
4189 |
/outlink.aspx?
|
4190 |
/outlink.cfm?
|
4196 |
/outlink.php?
|
4197 |
/outlink/
|
4198 |
/outlink/?
|
4199 |
+
/ov.ms
|
4200 |
/ow.ly
|
4201 |
/owl.li
|
4202 |
/owtf.co.uk
|
4203 |
/p-laid-
|
4204 |
/p?
|
4205 |
+
/p.ashx?
|
4206 |
/p.asp?
|
4207 |
/p.aspx?
|
4208 |
/p.cfm?
|
4235 |
/parafon/
|
4236 |
/party-boat-
|
4237 |
/past.is
|
4238 |
+
/pastein.ru
|
4239 |
/phan-biet-
|
4240 |
/phan-biet.
|
4241 |
/phan-biet/
|
4245 |
/phexin-
|
4246 |
/phexin.
|
4247 |
/phexin/
|
4248 |
+
/phone-info-
|
4249 |
+
/phone-info.
|
4250 |
+
/phone-info/
|
4251 |
+
/phoneinfo-
|
4252 |
+
/phoneinfo.
|
4253 |
+
/phoneinfo/
|
4254 |
/php.
|
4255 |
/picload-
|
4256 |
/picload.
|
4357 |
/qsymia.
|
4358 |
/qsymia/
|
4359 |
/r?
|
4360 |
+
/r.ashx?
|
4361 |
/r.asp?
|
4362 |
/r.aspx?
|
4363 |
/r.cfm?
|
4378 |
/ralphlauren.
|
4379 |
/ralphlauren/
|
4380 |
/rank?
|
4381 |
+
/rank.ashx?
|
4382 |
/rank.asp?
|
4383 |
/rank.aspx?
|
4384 |
/rank.cfm?
|
4396 |
/rayban.
|
4397 |
/rayban/
|
4398 |
/rdr?
|
4399 |
+
/rdr.ashx?
|
4400 |
/rdr.asp?
|
4401 |
/rdr.aspx?
|
4402 |
/rdr.cfm?
|
4412 |
/readme.
|
4413 |
/readnews.
|
4414 |
/reauexit?
|
4415 |
+
/reauexit.ashx?
|
4416 |
/reauexit.asp?
|
4417 |
/reauexit.aspx?
|
4418 |
/reauexit.cfm?
|
4469 |
/ri.ms
|
4470 |
/rih.co
|
4471 |
/rk?
|
4472 |
+
/rk.ashx?
|
4473 |
/rk.asp?
|
4474 |
/rk.aspx?
|
4475 |
/rk.cfm?
|
4505 |
/sconfig/
|
4506 |
/scripts-
|
4507 |
/scripts/
|
4508 |
+
/search-engine
|
4509 |
+
/searchengine
|
4510 |
/secret-
|
4511 |
/secrets-
|
4512 |
/secure/
|
4522 |
/seo.
|
4523 |
/seo/
|
4524 |
/share?
|
4525 |
+
/share.ashx?
|
4526 |
/share.asp?
|
4527 |
/share.aspx?
|
4528 |
/share.cfm?
|
4597 |
/specialprojects.
|
4598 |
/specials-
|
4599 |
/specials.
|
4600 |
+
/spielideen-
|
4601 |
+
/spielideen.
|
4602 |
+
/spielideen/
|
4603 |
/stan.to
|
4604 |
/start.
|
4605 |
/stats/
|
4630 |
/supreme-
|
4631 |
/supreme.
|
4632 |
/supreme/
|
4633 |
+
/surl.li
|
4634 |
/swf/
|
4635 |
/swish.st
|
4636 |
/syaneru
|
4641 |
/tafil.
|
4642 |
/tafil/
|
4643 |
/tagged/
|
4644 |
+
/taraa.xyz
|
4645 |
/tattoo-
|
4646 |
/tattoo.
|
4647 |
/tattoo/
|
4657 |
/tatuagens-
|
4658 |
/tatuagens.
|
4659 |
/tatuagens/
|
4660 |
+
/tax-attorn
|
4661 |
/telecharger-
|
4662 |
/telecharger.
|
4663 |
/temp/
|
4722 |
/tr.im
|
4723 |
/trac/ticket/
|
4724 |
/trace?
|
4725 |
+
/trace.ashx?
|
4726 |
/trace.asp?
|
4727 |
/trace.aspx?
|
4728 |
/trace.cfm?
|
4734 |
/trace.php?
|
4735 |
/trace/?
|
4736 |
/track?
|
4737 |
+
/track.ashx?
|
4738 |
/track.asp?
|
4739 |
/track.aspx?
|
4740 |
/track.cfm?
|
4752 |
/transexuelle-
|
4753 |
/transexuelle.
|
4754 |
/transexuelle/
|
4755 |
+
/trs?
|
4756 |
+
/trs.ashx?
|
4757 |
+
/trs.asp?
|
4758 |
+
/trs.aspx?
|
4759 |
+
/trs.cfm?
|
4760 |
+
/trs.cgi?
|
4761 |
+
/trs.ctr?
|
4762 |
+
/trs.htm?
|
4763 |
+
/trs.html?
|
4764 |
+
/trs.jsp?
|
4765 |
+
/trs.php?
|
4766 |
+
/trs/?
|
4767 |
/trx/
|
4768 |
/twilight-
|
4769 |
/txt/
|
4785 |
/uploads.
|
4786 |
/uploads/
|
4787 |
/url?
|
4788 |
+
/url.ashx?
|
4789 |
/url.asp?
|
4790 |
/url.aspx?
|
4791 |
/url.cfm?
|
4794 |
/url.htm?
|
4795 |
/url.html?
|
4796 |
/url.jsp?
|
4797 |
+
/url.kn
|
4798 |
/url.php?
|
4799 |
/url/
|
4800 |
/url/?
|
4827 |
/viewstory
|
4828 |
/vip.
|
4829 |
/visit?
|
4830 |
+
/visit.ashx?
|
4831 |
/visit.asp?
|
4832 |
/visit.aspx?
|
4833 |
/visit.cfm?
|
5155 |
| online
|
5156 |
| year
|
5157 |
||
|
5158 |
+
|cash
|
5159 |
|chi
|
5160 |
|dal
|
5161 |
|det
|
5162 |
|for
|
5163 |
+
|loan
|
5164 |
+
|payday
|
5165 |
|per
|
5166 |
|porn
|
5167 |
|year
|
5279 |
1@2
|
5280 |
1@3
|
5281 |
1@seo
|
5282 |
+
1ackn
|
5283 |
+
1arge
|
5284 |
+
1arti
|
5285 |
1big
|
5286 |
+
1bodo
|
5287 |
1c.in
|
5288 |
+
1casi
|
5289 |
+
1ciga
|
5290 |
+
1comm
|
5291 |
+
1comp
|
5292 |
+
1corr
|
5293 |
+
1dome
|
5294 |
+
1esto
|
5295 |
+
1fact
|
5296 |
+
1femm
|
5297 |
+
1frie
|
5298 |
+
1gene
|
5299 |
1hand
|
5300 |
+
1heal
|
5301 |
+
1homm
|
5302 |
+
1inop
|
5303 |
+
1lear
|
5304 |
1mil email
|
5305 |
+
1minu
|
5306 |
+
1muti
|
5307 |
1ping
|
5308 |
+
1pros
|
5309 |
+
1purs
|
5310 |
+
1reca
|
5311 |
1st comment
|
5312 |
1st-best
|
5313 |
1stbest
|
5314 |
+
1ster
|
5315 |
1stop
|
5316 |
+
1tayl
|
5317 |
1test
|
5318 |
1the best
|
5319 |
1the-best
|
5320 |
+
1titl
|
5321 |
1to1
|
5322 |
+
1town
|
5323 |
+
1twen
|
5324 |
+
1valu
|
5325 |
+
1vari
|
5326 |
+
1vine
|
5327 |
1xbet
|
5328 |
1you
|
5329 |
+
1zoop
|
5330 |
2 appli
|
5331 |
2 casino
|
5332 |
2 into $
|
5357 |
2@seo
|
5358 |
2a aplicacao
|
5359 |
2a-aplicacao
|
5360 |
+
2ackn
|
5361 |
+
2arge
|
5362 |
+
2arti
|
5363 |
2bj.ru
|
5364 |
2buy
|
5365 |
2c.in
|
5366 |
+
2casi
|
5367 |
+
2ciga
|
5368 |
+
2comm
|
5369 |
+
2comp
|
5370 |
+
2corr
|
5371 |
+
2dome
|
5372 |
+
2esto
|
5373 |
+
2fact
|
5374 |
+
2frie
|
5375 |
+
2gene
|
5376 |
+
2glob
|
5377 |
+
2goga
|
5378 |
2hand
|
5379 |
+
2heal
|
5380 |
+
2inop
|
5381 |
2itb
|
5382 |
2k20 vc
|
5383 |
2k20-vc
|
5384 |
2k20vc
|
5385 |
+
2lear
|
5386 |
2mil email
|
5387 |
+
2minu
|
5388 |
+
2muti
|
5389 |
2ping
|
5390 |
+
2pros
|
5391 |
+
2purs
|
5392 |
+
2reca
|
5393 |
2sale
|
5394 |
+
2ster
|
5395 |
+
2tayl
|
5396 |
2test
|
5397 |
2the best
|
5398 |
2the-best
|
5399 |
+
2titl
|
5400 |
+
2town
|
5401 |
+
2twen
|
5402 |
2u.org
|
5403 |
+
2valu
|
5404 |
+
2vari
|
5405 |
2you
|
5406 |
+
2zoop
|
5407 |
3 casino
|
5408 |
3 into $
|
5409 |
3 jailbreak
|
5421 |
3@2
|
5422 |
3@3
|
5423 |
3@seo
|
5424 |
+
3ackn
|
5425 |
+
3arge
|
5426 |
+
3arti
|
5427 |
+
3casi
|
5428 |
+
3ciga
|
5429 |
+
3comm
|
5430 |
+
3comp
|
5431 |
+
3corr
|
5432 |
+
3dome
|
5433 |
+
3esto
|
5434 |
+
3fact
|
5435 |
+
3frie
|
5436 |
+
3gene
|
5437 |
3hand
|
5438 |
+
3heal
|
5439 |
+
3inop
|
5440 |
3j3j3
|
5441 |
+
3lear
|
5442 |
3mil email
|
5443 |
3minut
|
5444 |
+
3muti
|
5445 |
3ping
|
5446 |
+
3pros
|
5447 |
+
3purs
|
5448 |
+
3reca
|
5449 |
+
3ster
|
5450 |
+
3tayl
|
5451 |
3test
|
5452 |
3the best
|
5453 |
3the-best
|
5454 |
+
3titl
|
5455 |
+
3town
|
5456 |
+
3twen
|
5457 |
+
3valu
|
5458 |
+
3vari
|
5459 |
+
3win
|
5460 |
+
3ww
|
5461 |
3you
|
5462 |
+
3zoop
|
5463 |
4 cash
|
5464 |
4 casino
|
5465 |
4 cheap
|
5957 |
1337 seo
|
5958 |
1337-seo
|
5959 |
1337seo
|
5960 |
+
2020 earlier
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5961 |
2020 longchamp
|
5962 |
2020 popular
|
5963 |
2020 prospect
|
5964 |
2020 seo
|
5965 |
+
2020-earlier
|
5966 |
2020-longchamp
|
5967 |
2020-popular
|
5968 |
2020-prospect
|
5970 |
2020baby
|
5971 |
2020longchamp
|
5972 |
2020x.
|
5973 |
+
2021 earlier
|
5974 |
2021 longchamp
|
5975 |
2021 popular
|
5976 |
2021 prospect
|
5977 |
2021 seo
|
5978 |
+
2021-earlier
|
5979 |
2021-longchamp
|
5980 |
2021-popular
|
5981 |
2021-prospect
|
5983 |
2021baby
|
5984 |
2021longchamp
|
5985 |
2021x.
|
5986 |
+
2022 earlier
|
5987 |
+
2022 longchamp
|
5988 |
+
2022 popular
|
5989 |
+
2022 prospect
|
5990 |
+
2022 seo
|
5991 |
+
2022-earlier
|
5992 |
+
2022-longchamp
|
5993 |
+
2022-popular
|
5994 |
+
2022-prospect
|
5995 |
+
2022-seo
|
5996 |
+
2022baby
|
5997 |
+
2022longchamp
|
5998 |
+
2022x.
|
5999 |
10000$
|
6000 |
100000$
|
6001 |
1000000$
|
6002 |
+
1231231
|
6003 |
123456789
|
6004 |
a aaa
|
6005 |
a article author
|
6190 |
a09.php
|
6191 |
a9.php
|
6192 |
ã¹
|
6193 |
+
ã¼
|
6194 |
ã²
|
6195 |
ãª
|
6196 |
aaa replic
|
6214 |
aare feel
|
6215 |
aare king
|
6216 |
aare you
|
6217 |
+
aarticle
|
6218 |
aat least
|
6219 |
aat the
|
6220 |
aat this
|
6264 |
abonnez partage
|
6265 |
about blog
|
6266 |
about home is
|
6267 |
+
about iran from
|
6268 |
+
about iraq from
|
6269 |
about marijuana
|
6270 |
about on the blog
|
6271 |
about on the internet
|
6292 |
abrir-uma-empresa
|
6293 |
absleutoly
|
6294 |
absolutely indited
|
6295 |
+
absolutely pent written
|
6296 |
abssice 360
|
6297 |
abssice-360
|
6298 |
abssice360
|
6311 |
acai-diet
|
6312 |
acai.diet
|
6313 |
acaiberry
|
6314 |
+
accident attorn
|
6315 |
accident lawyer
|
6316 |
+
accident-attorn
|
6317 |
accident-lawyer
|
6318 |
+
accidentattorn
|
6319 |
accidentlawyer
|
6320 |
according you
|
6321 |
according-you
|
6348 |
accutane
|
6349 |
ace 33
|
6350 |
ace-33
|
6351 |
+
acedemic
|
6352 |
acel google
|
6353 |
acel-google
|
6354 |
acellphone
|
6391 |
acnetreatment
|
6392 |
acompanhante anunci
|
6393 |
acompanhantes anunci
|
6394 |
+
acompanhantes go
|
6395 |
+
acompanhantes-go
|
6396 |
+
acompanhantesgo
|
6397 |
acomplia
|
6398 |
acquire me vip
|
6399 |
acros thee
|
6404 |
act as versatile
|
6405 |
actions you desire
|
6406 |
activation code
|
6407 |
+
active revenue stream
|
6408 |
+
activities device
|
6409 |
+
activity device
|
6410 |
activity/p/
|
6411 |
+
activosblog
|
6412 |
actonel
|
6413 |
actu star
|
6414 |
actual celebrity
|
6461 |
ad-flag
|
6462 |
ad-listing
|
6463 |
ad-live
|
6464 |
+
ad-portal
|
6465 |
ad-sage
|
6466 |
ad-wiki
|
6467 |
adbeat distrib
|
6579 |
admin.jsp
|
6580 |
admin.php
|
6581 |
admin5
|
6582 |
+
admire your blog
|
6583 |
+
admire your web
|
6584 |
+
admire your writing
|
6585 |
adopt curcumin
|
6586 |
adopt-curcumin
|
6587 |
adore foregathering
|
6588 |
ados populaire
|
6589 |
ados-populaire
|
6590 |
adospopulaire
|
6591 |
+
adport.al
|
6592 |
+
adportal
|
6593 |
adremus viral
|
6594 |
adremus-viral
|
6595 |
adremusviral
|
6637 |
adult gyrl
|
6638 |
adult hub
|
6639 |
adult personal
|
6640 |
+
adult porn
|
6641 |
adult sex
|
6642 |
adult story
|
6643 |
adult toy
|
6657 |
adult-hub
|
6658 |
adult-net
|
6659 |
adult-personal
|
6660 |
+
adult-porn
|
6661 |
adult-sex
|
6662 |
adult-story
|
6663 |
adult-toy
|
6678 |
adultgyrl
|
6679 |
adulthub
|
6680 |
adultpersonal
|
6681 |
+
adultporn
|
6682 |
adults friend
|
6683 |
adults-friend
|
6684 |
adultsex
|
6686 |
adultstory
|
6687 |
adulttoy
|
6688 |
adultweb
|
6689 |
+
advair md
|
6690 |
+
advair online
|
6691 |
+
advair order
|
6692 |
+
advair-md
|
6693 |
+
advair-online
|
6694 |
+
advair-order
|
6695 |
+
advairmd
|
6696 |
+
advaironline
|
6697 |
+
advairorder
|
6698 |
advanced hemp
|
6699 |
advanced raw begin
|
6700 |
advanced-hemp
|
6712 |
advert on this
|
6713 |
advert on your
|
6714 |
advert research
|
6715 |
+
advert track
|
6716 |
advert_
|
6717 |
advert-crack
|
6718 |
advert-flag
|
6721 |
advert-market
|
6722 |
advert-research
|
6723 |
advert-sage
|
6724 |
+
advert-track
|
6725 |
advert-wiki
|
6726 |
advertise market
|
6727 |
advertise on this
|
6789 |
adverts-live
|
6790 |
adverts-sage
|
6791 |
adverts-wiki
|
6792 |
+
adverttrack
|
6793 |
advice for this topic
|
6794 |
advice on this topic
|
6795 |
advice online
|
7058 |
alive-cheat
|
7059 |
alive-hack
|
7060 |
alışveriş sepetiniz
|
7061 |
+
alkogoli
|
7062 |
alkotla
|
7063 |
all ahout
|
7064 |
all automobile, auto
|
7176 |
amazing-videos
|
7177 |
amazingsex
|
7178 |
amazn.co
|
7179 |
+
amazon cbd
|
7180 |
amazon lider
|
7181 |
+
amazon-cbd
|
7182 |
amazon-lider
|
7183 |
amazon.asp
|
7184 |
amazon.cfm
|
7187 |
amazon.htm
|
7188 |
amazon.jsp
|
7189 |
amazon.php
|
7190 |
+
amazoncbd
|
7191 |
amazone lider
|
7192 |
amazone-lider
|
7193 |
ambalaje cofetar
|
7399 |
animatedporn
|
7400 |
anime boy
|
7401 |
anime cloth
|
7402 |
+
anime een japon
|
7403 |
anime girl
|
7404 |
anime indo
|
7405 |
+
anime japon
|
7406 |
anime music vid
|
7407 |
+
anime y japon
|
7408 |
+
anime y manga
|
7409 |
anime-boy
|
7410 |
anime-cloth
|
7411 |
+
anime-een-japon
|
7412 |
anime-girl
|
7413 |
anime-indo
|
7414 |
+
anime-japon
|
7415 |
anime-music-vid
|
7416 |
+
anime-y-japon
|
7417 |
+
anime-y-manga
|
7418 |
animeboy
|
7419 |
animecloth
|
7420 |
animegirl
|
7421 |
animeindo
|
7422 |
+
animejapon
|
7423 |
+
animeyjapon
|
7424 |
+
animeymanga
|
7425 |
ankara transfer
|
7426 |
ankara-transfer
|
7427 |
ankaratransfer
|
7530 |
apkdeponuz
|
7531 |
apkucretsiz
|
7532 |
aplicacin
|
7533 |
+
aplikasi bintang
|
7534 |
+
aplikasi kasir
|
7535 |
+
aplikasi-bintang
|
7536 |
+
aplikasi-kasir
|
7537 |
app full download
|
7538 |
app growth education
|
7539 |
app hacked
|
7569 |
appears like web
|
7570 |
appendage enter
|
7571 |
appendages enter
|
7572 |
+
apple really ..
|
7573 |
apple really …
|
7574 |
apple wedding
|
7575 |
apple-unlock
|
7606 |
appreciate your post
|
7607 |
appreciate your site
|
7608 |
appreciate your web
|
7609 |
+
appreciated this blog
|
7610 |
+
appreciated this content
|
7611 |
+
appreciated this post
|
7612 |
+
appreciated this site
|
7613 |
+
appreciated this web
|
7614 |
+
appreciated your blog
|
7615 |
+
appreciated your content
|
7616 |
+
appreciated your post
|
7617 |
+
appreciated your site
|
7618 |
+
appreciated your web
|
7619 |
appreckate
|
7620 |
appro-chait
|
7621 |
approaching article
|
7715 |
artesanal marca
|
7716 |
artesanal-kit
|
7717 |
artesanal-marca
|
7718 |
+
arthritus
|
7719 |
article at this site
|
7720 |
article blog
|
7721 |
article buzz
|
7731 |
article is genuine
|
7732 |
article is perfect
|
7733 |
article is pleasant
|
7734 |
+
article is practical
|
7735 |
article is priceless
|
7736 |
+
article is really practical
|
7737 |
article is truly
|
7738 |
article it is defin
|
7739 |
article many
|
7750 |
article tag
|
7751 |
article to rank
|
7752 |
article to your life
|
7753 |
+
article totally
|
7754 |
article writing
|
7755 |
article you write
|
7756 |
article-blog
|
7771 |
article-sub
|
7772 |
article-suggest
|
7773 |
article-tag
|
7774 |
+
article-totally
|
7775 |
article-writing
|
7776 |
article-you-write
|
7777 |
+
article, totally
|
7778 |
article,i
|
7779 |
article?.
|
7780 |
article.many
|
7833 |
articlestag
|
7834 |
articlesub
|
7835 |
articletag
|
7836 |
+
articulo como este
|
7837 |
+
articulos como este
|
7838 |
artiicle
|
7839 |
artikel
|
7840 |
artiklar snart
|
8058 |
auspicious writ
|
8059 |
australia boot
|
8060 |
australia clearance
|
8061 |
+
australia jers
|
8062 |
australia out
|
8063 |
australia-boot
|
8064 |
australia-clearance
|
8065 |
+
australia-jers
|
8066 |
australiaboot
|
8067 |
australiaclearance
|
8068 |
australian chilling
|
8135 |
authority of a page
|
8136 |
authority of a post
|
8137 |
auto brand
|
8138 |
+
auto party
|
8139 |
auto-approve-list
|
8140 |
auto-brand
|
8141 |
+
auto-party
|
8142 |
auto.brand
|
8143 |
autoapprove
|
8144 |
autobrand
|
8150 |
automatic+swimming
|
8151 |
automaticpay
|
8152 |
automaticswimming
|
8153 |
+
automation – website
|
8154 |
automobile profit
|
8155 |
automobile proper
|
8156 |
automobile-profit
|
8157 |
+
autoparty
|
8158 |
autopilot income
|
8159 |
autopilot-income
|
8160 |
autopost unlimit
|
8190 |
avatar trimoxazole
|
8191 |
avatar-live
|
8192 |
avatar-therapy
|
8193 |
+
avax yorum
|
8194 |
+
avax-yorum
|
8195 |
+
avaxyorum
|
8196 |
avental indispensavel
|
8197 |
avental indispensável
|
8198 |
avental-indispensavel
|
8238 |
awokehim
|
8239 |
awordpress.
|
8240 |
awsome
|
8241 |
+
ayam online
|
8242 |
+
ayam_online
|
8243 |
+
ayam-online
|
8244 |
+
ayamonline
|
8245 |
az
|
8246 |
azria out
|
8247 |
azria-out
|
8253 |
aԁ
|
8254 |
aѕ
|
8255 |
aі
|
8256 |
+
aк
|
8257 |
aҟ
|
8258 |
aу
|
8259 |
aү
|
8431 |
bactrim generic
|
8432 |
bactrim use
|
8433 |
bactrim-coverage
|
8434 |
+
bactrim-ds
|
8435 |
+
bactrim-generic
|
8436 |
+
bactrim-use
|
8437 |
+
bactrim4u
|
8438 |
bad credit
|
8439 |
bad-credit
|
8440 |
badcredit
|
8512 |
baguebvlgar
|
8513 |
bahaya lemak
|
8514 |
bahaya-lemak
|
8515 |
+
bahis casino
|
8516 |
+
bahis giris
|
8517 |
+
bahis giriş
|
8518 |
+
bahis site
|
8519 |
+
bahis-casino
|
8520 |
+
bahis-giris
|
8521 |
+
bahis-site
|
8522 |
+
bahisgiris
|
8523 |
baikal extreme
|
8524 |
baikal rest
|
8525 |
baikal-extreme
|
8556 |
ban barata
|
8557 |
ban barato
|
8558 |
bán đạm
|
8559 |
+
bán đàn
|
8560 |
ban handle
|
8561 |
ban händle
|
8562 |
bán hàng đơn giản
|
8577 |
ban-barata
|
8578 |
ban-barato
|
8579 |
ban-dam
|
8580 |
+
ban-dan
|
8581 |
ban-hang-don-gian
|
8582 |
ban-jack
|
8583 |
ban-mirror
|
8632 |
banque parrainage
|
8633 |
banque-parrainage
|
8634 |
bansunglass
|
8635 |
+
banyak game
|
8636 |
+
banyak situs
|
8637 |
+
banyak-game
|
8638 |
+
banyak-situs
|
8639 |
+
banyaknya game
|
8640 |
banyaknya situs
|
8641 |
+
banyaknya-game
|
8642 |
banyaknya-situs
|
8643 |
báo giá máy
|
8644 |
bảo hiểm
|
8767 |
bat-dong-san
|
8768 |
bat-pro
|
8769 |
batdongsan
|
8770 |
+
bath cabin
|
8771 |
+
bathe cabin
|
8772 |
bathroom look
|
8773 |
+
bathroom with bathe
|
8774 |
bathroom-look
|
8775 |
batt-kupon
|
8776 |
battkupon
|
8851 |
be tiny needle
|
8852 |
be tthe
|
8853 |
be tthis
|
8854 |
+
be weary of
|
8855 |
be what happens you
|
8856 |
be-on-instagram
|
8857 |
beamten
|
8921 |
become bytecoin
|
8922 |
become litecoin
|
8923 |
become our consumer
|
8924 |
+
become visitor
|
8925 |
become-a-success
|
8926 |
become-an-expert
|
8927 |
become-bitcoin
|
8944 |
begeni hilesi
|
8945 |
begeni-hilesi
|
8946 |
beggun
|
8947 |
+
begin full of life
|
8948 |
+
beginnende crypto
|
8949 |
+
beginnende-crypto
|
8950 |
beginner blog
|
8951 |
+
beginner crypto
|
8952 |
beginner-blog
|
8953 |
+
beginner-crypto
|
8954 |
+
beginning crypto
|
8955 |
+
beginning-crypto
|
8956 |
behavioral-interview-question
|
8957 |
behaviour-driven
|
8958 |
behelfen sich die medien
|
9019 |
beneficios de la
|
9020 |
beneficios-de-la
|
9021 |
benefit coupon
|
9022 |
+
benefit of blog
|
9023 |
+
benefit to blog
|
9024 |
benefit-coupon
|
9025 |
benefits coupon
|
9026 |
+
benefits of blog
|
9027 |
+
benefits to blog
|
9028 |
benefits-coupon
|
9029 |
bengals merch
|
9030 |
bengals store
|
9056 |
berracom.ph
|
9057 |
besstet
|
9058 |
best anal
|
9059 |
+
best article about
|
9060 |
+
best attorn
|
9061 |
+
best betting canada
|
9062 |
+
best betting usa
|
9063 |
+
best birthday bouquet
|
9064 |
+
best blog about
|
9065 |
best blogging
|
9066 |
+
best body shop
|
9067 |
best bodycon
|
9068 |
best booster
|
9069 |
best cartier
|
9088 |
best nautical decor
|
9089 |
best nautical home
|
9090 |
best online
|
9091 |
+
best page about
|
9092 |
best pant
|
9093 |
+
best paragraph about
|
9094 |
best payment
|
9095 |
best places botox
|
9096 |
best porn
|
9097 |
best priced
|
9098 |
+
best promo
|
9099 |
best prostate
|
9100 |
best sandal
|
9101 |
best sex
|
9102 |
best shapewear
|
9103 |
best shoe price
|
9104 |
+
best site about
|
9105 |
+
best skin care
|
9106 |
+
best smm
|
9107 |
+
best social media
|
9108 |
best suppl
|
9109 |
best tummy
|
9110 |
best vape
|
9111 |
best vpn service
|
9112 |
+
best web about
|
9113 |
best webmaster
|
9114 |
best wordpress
|
9115 |
best writing comp
|
9117 |
best you can see
|
9118 |
best_small_
|
9119 |
best-anal
|
9120 |
+
best-attorn
|
9121 |
best-blogging
|
9122 |
+
best-body-shop
|
9123 |
best-bodycon
|
9124 |
best-booster
|
9125 |
best-cartier
|
9152 |
best-porn
|
9153 |
best-priced
|
9154 |
best-probiotic
|
9155 |
+
best-promo
|
9156 |
best-prostate
|
9157 |
best-real
|
9158 |
best-sandal
|
9162 |
best-shapewear
|
9163 |
best-shoe-price
|
9164 |
best-shop
|
9165 |
+
best-skin-care
|
9166 |
best-small-
|
9167 |
+
best-smm
|
9168 |
+
best-social-media
|
9169 |
best-software-for
|
9170 |
best-suppl
|
9171 |
best-tummy
|
9182 |
bestad.
|
9183 |
bestads.
|
9184 |
bestairjordan
|
9185 |
+
bestattorn
|
9186 |
+
bestblog
|
9187 |
bestbut
|
9188 |
bestcartier
|
9189 |
bestcase
|
9228 |
bestpricebuy
|
9229 |
bestpricesbuy
|
9230 |
bestprobiotic
|
9231 |
+
bestpromo
|
9232 |
bestreal
|
9233 |
bestsalesell
|
9234 |
bestsellerbag
|
9236 |
bestsex
|
9237 |
bestshop
|
9238 |
bestsmart
|
9239 |
+
bestsmm
|
9240 |
bestsuppl
|
9241 |
besttummy
|
9242 |
bestvape
|
9243 |
bestvpn
|
9244 |
bestweb
|
9245 |
+
besty promo
|
9246 |
+
besty-promo
|
9247 |
+
bestypromo
|
9248 |
bet-88
|
9249 |
bet-guru
|
9250 |
bet-khong
|
9273 |
betrueger dreck
|
9274 |
betrueger-dreck
|
9275 |
betruegerdreck
|
9276 |
+
bets giris
|
9277 |
+
bets-giris
|
9278 |
+
bets10 giris
|
9279 |
+
bets10-giris
|
9280 |
+
bets10giris
|
9281 |
betscript
|
9282 |
+
betsgiris
|
9283 |
better essay writ
|
9284 |
better handling driving
|
9285 |
+
better it is easy
|
9286 |
better-essay-writ
|
9287 |
better-service
|
9288 |
betterjudg
|
9291 |
betting news
|
9292 |
betting on mlb
|
9293 |
betting online
|
9294 |
+
betting platform
|
9295 |
betting script
|
9296 |
betting site
|
9297 |
betting website
|
9298 |
betting-article
|
9299 |
betting-news
|
9300 |
betting-online
|
9301 |
+
betting-platform
|
9302 |
betting-script
|
9303 |
betting-site
|
9304 |
betting-website
|
9306 |
bettor than
|
9307 |
between tthe
|
9308 |
betweenex
|
9309 |
+
bevefage
|
9310 |
bezpieczne leczenie
|
9311 |
bezpieczne-leczenie
|
9312 |
bhilt
|
9414 |
binary-option
|
9415 |
binarycrypto
|
9416 |
binaryoption
|
9417 |
+
bintang 4d
|
9418 |
+
bintang-4d
|
9419 |
+
bintang4d
|
9420 |
bio bronz
|
9421 |
bio skin
|
9422 |
bio-bronz
|
9477 |
bitcoin $
|
9478 |
bitcoin acc
|
9479 |
bitcoin add
|
9480 |
+
bitcoin age
|
9481 |
+
bitcoin aja
|
9482 |
bitcoin bot
|
9483 |
bitcoin buy
|
9484 |
bitcoin casino
|
9492 |
bitcoin million
|
9493 |
bitcoin mine
|
9494 |
bitcoin mining
|
9495 |
+
bitcoin mix
|
9496 |
bitcoin per day
|
9497 |
bitcoin per week
|
9498 |
bitcoin rush
|
9501 |
bitcoin_
|
9502 |
bitcoin-acc
|
9503 |
bitcoin-add
|
9504 |
+
bitcoin-age
|
9505 |
+
bitcoin-aja
|
9506 |
bitcoin-buy
|
9507 |
bitcoin-casino
|
9508 |
bitcoin-code
|
9514 |
bitcoin-million
|
9515 |
bitcoin-mine
|
9516 |
bitcoin-mining
|
9517 |
+
bitcoin-mix
|
9518 |
bitcoin-per-day
|
9519 |
bitcoin-per-week
|
9520 |
bitcoin-rush
|
9522 |
bitcoin-wallet
|
9523 |
bitcoinacc
|
9524 |
bitcoinadd
|
9525 |
+
bitcoinage
|
9526 |
+
bitcoinaja
|
9527 |
+
bitcoinbot
|
9528 |
bitcoinbuy
|
9529 |
bitcoincas
|
9530 |
bitcoincode
|
9534 |
bitcoindonat
|
9535 |
bitcoindump
|
9536 |
bitcoinmillion
|
9537 |
+
bitcoinmix
|
9538 |
bitcoinrush
|
9539 |
bitcoins
|
9540 |
bitcointalk
|
9583 |
black magic removal
|
9584 |
black magic spell
|
9585 |
black magic wealth
|
9586 |
+
black militari
|
9587 |
black tight
|
9588 |
black tits
|
9589 |
black ugg
|
9595 |
black-magic-removal
|
9596 |
black-magic-spell
|
9597 |
black-magic-wealth
|
9598 |
+
black-militari
|
9599 |
black-tight
|
9600 |
black-tits
|
9601 |
black-ugg
|
9602 |
black-www
|
9603 |
blackfriday
|
9604 |
blackgay
|
9605 |
+
blackhat freedom
|
9606 |
+
blackhat-freedom
|
9607 |
blackjack pit
|
9608 |
blackjack slot
|
9609 |
blackjack terbaik
|
9655 |
blocker-queda
|
9656 |
blog _
|
9657 |
blog ::
|
|
|
|
|
9658 |
blog (wordpress
|
9659 |
blog a menudo
|
9660 |
+
blog about animal
|
9661 |
+
blog admin
|
9662 |
+
blog already
|
9663 |
blog article
|
9664 |
blog based
|
9665 |
blog beast
|
9684 |
blog give pleasant
|
9685 |
blog gives pleasant
|
9686 |
blog glance
|
9687 |
+
blog gold
|
9688 |
blog here
|
9689 |
blog if you
|
9690 |
blog is a center
|
9691 |
blog is a centre
|
9692 |
blog is actually
|
9693 |
+
blog is extreme
|
9694 |
blog is fastidious
|
9695 |
blog is invaluable
|
9696 |
blog is loading
|
9697 |
+
blog is practical
|
9698 |
blog is priceless
|
9699 |
+
blog is really practical
|
9700 |
blog is truly
|
9701 |
blog it help
|
9702 |
blog it is
|
9709 |
blog loading
|
9710 |
blog look
|
9711 |
blog mark
|
9712 |
+
blog menu
|
9713 |
blog moze
|
9714 |
blog może
|
9715 |
blog occasion
|
9716 |
blog on regular
|
9717 |
blog on the web
|
9718 |
+
blog optim
|
9719 |
+
blog owner
|
9720 |
blog platform
|
9721 |
blog post
|
9722 |
blog projet
|
9741 |
blog vid
|
9742 |
blog viewer
|
9743 |
blog visit
|
9744 |
+
blog was ..
|
9745 |
+
blog was …
|
9746 |
blog was how
|
9747 |
blog was..
|
9748 |
+
blog was…
|
9749 |
blog web
|
9750 |
blog which content
|
9751 |
blog wiki
|
9760 |
blog-0
|
9761 |
blog-1
|
9762 |
blog-2
|
9763 |
+
blog-admin
|
9764 |
blog-based
|
9765 |
blog-beast
|
9766 |
blog-before
|
9781 |
blog-format
|
9782 |
blog-frequently
|
9783 |
blog-glance
|
9784 |
+
blog-gold
|
9785 |
blog-here
|
9786 |
blog-is-loading
|
9787 |
blog-it-help
|
9793 |
blog-loading
|
9794 |
blog-look
|
9795 |
blog-mark
|
9796 |
+
blog-menu
|
9797 |
blog-occasion
|
9798 |
+
blog-optim
|
9799 |
+
blog-owner
|
9800 |
blog-platform
|
9801 |
blog-post
|
9802 |
blog-projet
|
9827 |
blog:quần
|
9828 |
blog.;
|
9829 |
blog.:
|
|
|
|
|
9830 |
blog.best
|
9831 |
blog.real
|
9832 |
blog.thank
|
9848 |
blog0
|
9849 |
blog1
|
9850 |
blog2
|
9851 |
+
blogadmin
|
9852 |
blogbased
|
9853 |
blogbeast
|
9854 |
blogblog
|
9899 |
blogging-visit
|
9900 |
bloggingg
|
9901 |
blogginglook
|
9902 |
+
bloggold
|
9903 |
bloggybest
|
9904 |
bloghome
|
9905 |
blogid
|
9911 |
bloglook
|
9912 |
bloglove
|
9913 |
blogmark
|
9914 |
+
blogmenu
|
9915 |
+
blogoptim
|
9916 |
blogow
|
9917 |
blogów
|
9918 |
blogplatform
|
9919 |
blogprodesign
|
9920 |
blogprojet
|
9921 |
blogrtui.ru
|
9922 |
+
blogs already
|
9923 |
blogs article
|
9924 |
blogs if you
|
9925 |
blogs like every
|
9962 |
blogspotprov
|
9963 |
blogsys
|
9964 |
blogtitle
|
9965 |
+
blogu jak
|
9966 |
blogue0
|
9967 |
blogue1
|
9968 |
blogue2
|
10043 |
body hormone
|
10044 |
body massage in
|
10045 |
body shapewear
|
10046 |
+
body shop place
|
10047 |
body-erotic
|
10048 |
body-goods
|
10049 |
body-hormone
|
10050 |
body-massage-in
|
10051 |
body-shapewear
|
10052 |
+
body-shop-place
|
10053 |
bodycon bandage
|
10054 |
bodycon dress
|
10055 |
bodycon home
|
10073 |
boilers-spare
|
10074 |
boilerspare
|
10075 |
boilersspare
|
10076 |
+
bokep abg
|
10077 |
+
bokep anak
|
10078 |
+
bokep indo
|
10079 |
+
bokep jepan
|
10080 |
+
bokep jilbab
|
10081 |
+
bokep-abg
|
10082 |
+
bokep-anak
|
10083 |
+
bokep-indo
|
10084 |
+
bokep-jepan
|
10085 |
+
bokep-jilbab
|
10086 |
+
bokepabg
|
10087 |
+
bokepanak
|
10088 |
+
bokepindo
|
10089 |
+
bokepjepan
|
10090 |
+
bokepjilbab
|
10091 |
bokkmark
|
10092 |
bokserki
|
10093 |
bola online
|
10104 |
bolsos marc
|
10105 |
bolsos-marc
|
10106 |
bolsosmarc
|
10107 |
+
bolster their rank
|
10108 |
+
bolster your rank
|
10109 |
+
bom artigo
|
10110 |
+
bom postagem
|
10111 |
+
bom-artigo
|
10112 |
+
bom-postagem
|
10113 |
bon copie
|
10114 |
bon-copie
|
10115 |
boncopie
|
10116 |
bone wellness
|
10117 |
bone-wellness
|
10118 |
+
bonem turystycz
|
10119 |
+
bonem-turystycz
|
10120 |
bonerz
|
10121 |
bong 88
|
10122 |
bong online
|
10213 |
bookmarked!
|
10214 |
bookmarking and checking
|
10215 |
bookmarking it
|
10216 |
+
bookmarking land
|
10217 |
+
bookmarking web
|
10218 |
+
bookmarking-it
|
10219 |
+
bookmarking-land
|
10220 |
+
bookmarking-web
|
10221 |
+
bookmarkingit
|
10222 |
bookmarkingland
|
10223 |
+
bookmarkingweb
|
10224 |
bookmarks thank
|
10225 |
bookmarks web
|
10226 |
bookmarks-thank
|
10409 |
bought mme
|
10410 |
boulder boulder
|
10411 |
boulder-boulder
|
10412 |
+
bouncy castle rent
|
10413 |
+
bouncy house rent
|
10414 |
+
bouncy-castle-rent
|
10415 |
+
bouncy-house-rent
|
10416 |
+
bouncycastlerent
|
10417 |
+
bouncyhouserent
|
10418 |
boundless online
|
10419 |
bountiful with
|
10420 |
bountiful-with
|
10591 |
brittny-battle
|
10592 |
brittnybattle
|
10593 |
bro thank you
|
10594 |
+
brockenstube
|
10595 |
broker blueprint
|
10596 |
broker dealer
|
10597 |
broker forex
|
10609 |
broncosoffic
|
10610 |
brothershit
|
10611 |
brought agreeable
|
10612 |
+
browns jers
|
10613 |
+
browns-jers
|
10614 |
browse around this blog
|
10615 |
browse around this site
|
10616 |
browse around this web
|
10889 |
bursasite
|
10890 |
bursatransfer
|
10891 |
bursted out laugh
|
10892 |
+
bus bathroom
|
10893 |
+
bus upholstery
|
10894 |
+
bus-bathroom
|
10895 |
+
bus-upholstery
|
10896 |
busca sexo
|
10897 |
busca-sexo
|
10898 |
buscando soluções
|
10899 |
busienss
|
10900 |
+
business award
|
10901 |
business catalyst
|
10902 |
business collect
|
10903 |
business empire
|
10906 |
business online world
|
10907 |
business seo
|
10908 |
business setup
|
10909 |
+
business to google
|
10910 |
business train
|
10911 |
+
business website
|
10912 |
business-a2review
|
10913 |
+
business-award
|
10914 |
business-boss
|
10915 |
business-catalyst
|
10916 |
business-collect
|
10917 |
business-daily
|
10918 |
business-empire
|
|
|
10919 |
business-first
|
10920 |
business-formation
|
10921 |
business-in
|
10922 |
business-intel
|
10923 |
business-know
|
10924 |
business-loan
|
|
|
|
|
|
|
|
|
10925 |
business-seo
|
10926 |
business-setup
|
10927 |
+
business-to-google
|
10928 |
business-train
|
10929 |
+
business-website
|
10930 |
business’ status
|
10931 |
business’s status
|
10932 |
+
businessaward
|
10933 |
businessboss
|
10934 |
businesscatalyst
|
10935 |
businesscollect
|
10936 |
businessdaily
|
10937 |
businesses status
|
10938 |
businesses-status
|
|
|
10939 |
businessfirst
|
10940 |
businessintel
|
10941 |
businessknow
|
10942 |
+
businesslisting
|
10943 |
businessloan
|
|
|
|
|
|
|
10944 |
businessseo
|
10945 |
businesstogoogle
|
|
|
10946 |
busiunes
|
10947 |
buspirone
|
10948 |
busquemail
|
10964 |
buy ageless
|
10965 |
buy albenda
|
10966 |
buy albenza
|
10967 |
+
buy avana
|
10968 |
+
buy bactrim
|
10969 |
buy black magic
|
10970 |
buy blade
|
10971 |
buy canadagoose
|
10972 |
+
buy cbd
|
10973 |
buy cetirizine
|
10974 |
buy cheap
|
10975 |
buy crypto
|
11026 |
buy soccer
|
11027 |
buy social account
|
11028 |
buy targeted
|
11029 |
+
buy telegram
|
11030 |
buy thesis
|
11031 |
buy tiktok
|
11032 |
buy toms
|
11044 |
buy-acrylic
|
11045 |
buy-albenda
|
11046 |
buy-albenza
|
11047 |
+
buy-avana
|
11048 |
+
buy-bactrim
|
11049 |
buy-black-magic
|
11050 |
buy-blade
|
11051 |
buy-canadagoose
|
11052 |
+
buy-cbd
|
11053 |
buy-cetirizine
|
11054 |
buy-cheap
|
11055 |
buy-cig
|
11112 |
buy-social-account
|
11113 |
buy-soma
|
11114 |
buy-targeted
|
11115 |
+
buy-telegram
|
11116 |
buy-thesis
|
11117 |
buy-tiktok
|
11118 |
buy-toms
|
11133 |
buy.cock
|
11134 |
buy.top
|
11135 |
buyalbenza
|
11136 |
+
buyavana
|
11137 |
buycanada
|
11138 |
+
buycbd
|
11139 |
buycetirizine
|
11140 |
buycheap
|
11141 |
buycig
|
11155 |
buying and selling system
|
11156 |
buying face
|
11157 |
buying fifa
|
11158 |
+
buying firearm
|
11159 |
+
buying guns
|
11160 |
buying insta
|
11161 |
buying likes
|
11162 |
buying married
|
11165 |
buying-a-car
|
11166 |
buying-face
|
11167 |
buying-fifa
|
11168 |
+
buying-firearm
|
11169 |
+
buying-guns
|
11170 |
buying-insta
|
11171 |
buying-likes
|
11172 |
buying-papers-online
|
11174 |
buying-traff
|
11175 |
buyingface
|
11176 |
buyingfifa
|
11177 |
+
buyingfirearm
|
11178 |
+
buyingguns
|
11179 |
buyinginsta
|
11180 |
buyinglikes
|
11181 |
buyingrune
|
11347 |
california-date
|
11348 |
california-dating
|
11349 |
californiaadult
|
11350 |
+
calisma portal
|
11351 |
+
calisma-portal
|
11352 |
+
calismaportal
|
11353 |
calitate super
|
11354 |
calitate-super
|
11355 |
call center outsourc
|
11356 |
call centre outsourc
|
11357 |
call futurity
|
11358 |
+
call girl service
|
11359 |
+
call girls service
|
11360 |
call-center-outsourc
|
11361 |
call-centre-outsourc
|
11362 |
call-futurity
|
11363 |
+
call-girl-service
|
11364 |
+
call-girls-service
|
11365 |
callerid
|
11366 |
callgirl
|
11367 |
callgyrl
|
11431 |
camisetas-polo
|
11432 |
camisetashollis
|
11433 |
camisetaspolo
|
11434 |
+
camper bathroom
|
11435 |
+
camper cabinet
|
11436 |
+
camper counter
|
11437 |
+
camper fabric
|
11438 |
+
camper lighting
|
11439 |
+
camper reno
|
11440 |
+
camper resto
|
11441 |
+
camper slide
|
11442 |
+
camper solar
|
11443 |
+
camper upgrade
|
11444 |
+
camper windshield
|
11445 |
+
camper-bathroom
|
11446 |
+
camper-cabinet
|
11447 |
+
camper-counter
|
11448 |
+
camper-fabric
|
11449 |
+
camper-lighting
|
11450 |
+
camper-reno
|
11451 |
+
camper-resto
|
11452 |
+
camper-slide
|
11453 |
+
camper-solar
|
11454 |
+
camper-upgrade
|
11455 |
+
camper-windshield
|
11456 |
campervanhire
|
11457 |
camsex
|
11458 |
can assist you have
|
11500 |
canadaout
|
11501 |
canadian drug
|
11502 |
canadian hgh
|
11503 |
+
canadian king
|
11504 |
canadian loan
|
11505 |
canadian pharm
|
11506 |
canadian-drug
|
11507 |
canadian-hgh
|
11508 |
+
canadian-king
|
11509 |
canadian-loan
|
11510 |
canadian-pharm
|
11511 |
canadiandrug
|
11512 |
canadianhgh
|
11513 |
+
canadianking
|
11514 |
canadianloan
|
11515 |
candy crash
|
11516 |
candy-crash
|
11517 |
candy-crush
|
11518 |
candycrash
|
11519 |
candycrush
|
11520 |
+
canli bahis
|
11521 |
+
canli-bahis
|
11522 |
cann also
|
11523 |
cann't
|
11524 |
cann’t
|
11554 |
capabilities also
|
11555 |
capabilities-also
|
11556 |
capable of effortless
|
11557 |
+
capable of provide
|
11558 |
capable to provide
|
11559 |
capacidad produccion
|
11560 |
capacidad producción
|
11587 |
card-debt
|
11588 |
card-dump
|
11589 |
card-financial
|
11590 |
+
cardano coin
|
11591 |
+
cardano-coin
|
11592 |
+
cardanocoin
|
11593 |
cardcheat
|
11594 |
carder board
|
11595 |
carder-board
|
11626 |
cars-insur
|
11627 |
carsgame
|
11628 |
carsinsur
|
11629 |
+
cartalidge
|
11630 |
cartier anelli
|
11631 |
cartier bracelet
|
11632 |
cartier fidanza
|
11693 |
cash-team
|
11694 |
cash.com.
|
11695 |
cash.xyz
|
11696 |
+
cash|
|
11697 |
cash4
|
11698 |
cashadvance
|
11699 |
cashbuzz
|
11707 |
cashforsilver
|
11708 |
cashfuck
|
11709 |
cashgenerat
|
11710 |
+
cashis online
|
11711 |
+
cashis-online
|
11712 |
+
cashisonline
|
11713 |
cashloan
|
11714 |
cashnow
|
11715 |
cashout
|
11717 |
casier judiciaire
|
11718 |
casier-judiciaire
|
11719 |
casino account
|
11720 |
+
casino bet
|
11721 |
casino bonus
|
11722 |
casino enligne
|
11723 |
casino fish
|
11730 |
casino only
|
11731 |
casino partic
|
11732 |
casino phish
|
11733 |
+
casino review
|
11734 |
casino script
|
11735 |
casino site
|
11736 |
casino slot
|
11737 |
+
casino tipps
|
11738 |
+
casino tips
|
11739 |
casino today
|
11740 |
casino view
|
11741 |
casino_
|
11742 |
casino-1
|
11743 |
casino-24
|
11744 |
casino-account
|
11745 |
+
casino-bet
|
11746 |
casino-bonus
|
11747 |
casino-enligne
|
11748 |
casino-fish
|
11756 |
casino-only
|
11757 |
casino-partic
|
11758 |
casino-phish
|
11759 |
+
casino-review
|
11760 |
casino-script
|
11761 |
casino-site
|
11762 |
casino-slot
|
11767 |
casino1
|
11768 |
casino24
|
11769 |
casinoaccount
|
11770 |
+
casinobet
|
11771 |
casinobonus
|
11772 |
casinoenligne
|
11773 |
casinoer
|
11878 |
cc-shop
|
11879 |
ccan visit
|
11880 |
ccheap
|
11881 |
+
ccleaner full
|
11882 |
+
ccleaner-full
|
11883 |
+
ccleanerfull
|
11884 |
ccshop
|
11885 |
cctv dahua
|
11886 |
cctv distrib
|
11893 |
ccvshop
|
11894 |
ce billet
|
11895 |
ce-billet
|
11896 |
+
cecha talentu
|
11897 |
+
cechą talentu
|
11898 |
celeb diet
|
11899 |
celeb hair
|
11900 |
celeb nude
|
11906 |
celebnude
|
11907 |
celebrate blogging
|
11908 |
celebrate-blogging
|
11909 |
+
celebration screener
|
11910 |
celebrex
|
11911 |
celebrities diet
|
11912 |
celebrities hair
|
11919 |
celebritiesnude
|
11920 |
celebrity diet
|
11921 |
celebrity hair
|
11922 |
+
celebrity milf
|
11923 |
celebrity-diet
|
11924 |
celebrity-hair
|
11925 |
+
celebrity-milf
|
11926 |
celebrity-nude
|
11927 |
celebritydiet
|
11928 |
celebrityhair
|
11929 |
+
celebritymilf
|
11930 |
celebritynude
|
11931 |
celebs diet
|
11932 |
celebs hair
|
12081 |
chachurbat
|
12082 |
chack-tip
|
12083 |
chacktip
|
12084 |
+
challenge discount
|
12085 |
+
challenge-discount
|
12086 |
chanclas hollis
|
12087 |
chanclas-hollis
|
12088 |
chanclashollis
|
12174 |
charmsthomas
|
12175 |
chat met vrouwen
|
12176 |
chat porn
|
12177 |
+
chat sex
|
12178 |
chat support office
|
12179 |
chat tarot
|
12180 |
+
chat xxx
|
12181 |
chat-bait
|
12182 |
chat-bate
|
12183 |
chat-chat
|
12184 |
chat-met-vrouwen
|
12185 |
chat-porn
|
12186 |
+
chat-sex
|
12187 |
chat-tarot
|
12188 |
+
chat-xxx
|
12189 |
chatburt
|
12190 |
chatchat
|
12191 |
chaterba
|
12208 |
chatporn
|
12209 |
chatr-bat
|
12210 |
chatrbat
|
12211 |
+
chatsex
|
12212 |
chattburt
|
12213 |
chatte-bat
|
12214 |
chattebat
|
12226 |
chaturbat
|
12227 |
chaturbbat
|
12228 |
chaturrbat
|
12229 |
+
chatxxx
|
12230 |
chaussres boutique
|
12231 |
chaussres pascher
|
12232 |
chaussres-boutique
|
12316 |
chce-rozwodu
|
12317 |
chcoin.co
|
12318 |
cheap |
|
12319 |
+
cheap advair
|
12320 |
cheap afl
|
12321 |
cheap air
|
12322 |
cheap anti
|
12374 |
cheap longchamp
|
12375 |
cheap loubou
|
12376 |
cheap louis
|
12377 |
+
cheap lyrica
|
12378 |
cheap mackage
|
12379 |
cheap mbt
|
12380 |
cheap michael
|
12404 |
cheap sherr
|
12405 |
cheap shoe
|
12406 |
cheap silver
|
12407 |
+
cheap smm
|
12408 |
cheap soccer
|
12409 |
cheap stephen
|
12410 |
cheap sunglass
|
12427 |
cheap youth
|
12428 |
cheap_
|
12429 |
cheap-adobe
|
12430 |
+
cheap-advair
|
12431 |
cheap-afl
|
12432 |
cheap-atlanta
|
12433 |
cheap-autentic
|
12482 |
cheap-kobe
|
12483 |
cheap-lebron
|
12484 |
cheap-loubou
|
12485 |
+
cheap-lyrica
|
12486 |
cheap-mackage
|
12487 |
cheap-mbt
|
12488 |
cheap-michael
|
12513 |
cheap-sherr
|
12514 |
cheap-shoe
|
12515 |
cheap-silver
|
12516 |
+
cheap-smm
|
12517 |
cheap-soccer
|
12518 |
cheap-stephen
|
12519 |
cheap-sunglass
|
12538 |
cheap-youth
|
12539 |
cheap+
|
12540 |
cheapadobe
|
12541 |
+
cheapadvair
|
12542 |
cheapafl
|
12543 |
cheapatlanta
|
12544 |
cheapautentic
|
12569 |
cheapest pokemon
|
12570 |
cheapest price
|
12571 |
cheapest ray
|
12572 |
+
cheapest smm
|
12573 |
cheapest-hockey
|
12574 |
cheapest-lowest
|
12575 |
cheapest-pokemon
|
12576 |
cheapest-price
|
12577 |
cheapest-ray
|
12578 |
+
cheapest-smm
|
12579 |
cheapest.co
|
12580 |
cheapesthockey
|
12581 |
cheapestlow
|
12582 |
cheapestprice
|
12583 |
+
cheapestsmm
|
12584 |
cheapferrag
|
12585 |
cheapflowergirl
|
12586 |
cheapfootbal
|
12600 |
cheaplebron
|
12601 |
cheaploubou
|
12602 |
cheaplouis
|
12603 |
+
cheaplyrica
|
12604 |
cheapmackage
|
12605 |
cheapmbt
|
12606 |
cheapmichael
|
12628 |
cheapsex
|
12629 |
cheapshoe
|
12630 |
cheapsilver
|
12631 |
+
cheapsmm
|
12632 |
cheapstephen
|
12633 |
cheapsugg
|
12634 |
cheapsunglass
|
12705 |
check out my web
|
12706 |
check out new post
|
12707 |
check out the blog
|
12708 |
+
check out the link
|
12709 |
check out the page
|
12710 |
check out the site
|
12711 |
check out the sitte
|
12712 |
check out the web
|
12713 |
+
check out this link
|
12714 |
+
check out this site
|
12715 |
check the ideas
|
12716 |
+
check this blog
|
12717 |
check this ideas
|
12718 |
check this link
|
12719 |
+
check this site
|
12720 |
check this video
|
12721 |
check us out guy
|
12722 |
check weblog
|
12729 |
check-out out
|
12730 |
check-out-new-post
|
12731 |
check-out-out
|
12732 |
+
check-out-the-link
|
12733 |
+
check-out-the-site
|
12734 |
+
check-out-this-link
|
12735 |
+
check-out-this-site
|
12736 |
+
check-this-blog
|
12737 |
check-this-link
|
12738 |
+
check-this-site
|
12739 |
check-this-video
|
12740 |
check-weblog
|
12741 |
check-who-call
|
13171 |
click for more
|
13172 |
click fraud
|
13173 |
click here
|
13174 |
+
click in bio
|
13175 |
+
click in my profile
|
13176 |
+
click in profile
|
13177 |
click now
|
13178 |
click on secure
|
13179 |
click over here
|
13180 |
+
click that link
|
13181 |
click the blog
|
13182 |
click the last site
|
13183 |
click the link
|
13227 |
clickforu
|
13228 |
clickfraud
|
13229 |
clicking it
|
13230 |
+
clicking that link
|
13231 |
+
clicking the link
|
13232 |
+
clicking this link
|
13233 |
clicking world
|
13234 |
clicking-world
|
13235 |
clicknow
|
13347 |
coach syoppu
|
13348 |
coach thai
|
13349 |
coach tokyo
|
13350 |
+
coach training
|
13351 |
coach wallet
|
13352 |
coach wrist
|
13353 |
coach ya
|
13382 |
coach-syoppu
|
13383 |
coach-thai
|
13384 |
coach-tokyo
|
13385 |
+
coach-training
|
13386 |
coach-wallet
|
13387 |
coach-wrist
|
13388 |
coach-ya
|
13506 |
coin master hack
|
13507 |
coin offering
|
13508 |
coin xbox
|
13509 |
+
coin yorum
|
13510 |
coin-cheat
|
13511 |
coin-cloud
|
13512 |
coin-foot
|
13519 |
coin-master-hack
|
13520 |
coin-offering
|
13521 |
coin-xbox
|
13522 |
+
coin-yorum
|
13523 |
coincheat
|
13524 |
coincloud
|
13525 |
coinfoot
|
13554 |
coinsxbox
|
13555 |
coinvest
|
13556 |
coinxbox
|
13557 |
+
coinyorum
|
13558 |
cokment
|
13559 |
colastrina
|
13560 |
+
colchon alta gama
|
13561 |
+
colchones alta gama
|
13562 |
collectif abssice
|
13563 |
collectif celine
|
13564 |
collectif moncler
|
13582 |
collections-shops
|
13583 |
collections-supply
|
13584 |
collegasintekst
|
13585 |
+
college fuck
|
13586 |
college persuasive
|
13587 |
+
college pussy
|
13588 |
college-essay
|
13589 |
+
college-fuck
|
13590 |
college-loan
|
13591 |
college-persuasive
|
13592 |
+
college-pussy
|
13593 |
collegeessay
|
13594 |
collegeloan
|
13595 |
collezione celine
|
13768 |
commerceretail
|
13769 |
commercesale
|
13770 |
commercewhole
|
13771 |
+
commercial counter
|
13772 |
+
commercial door
|
13773 |
+
commercial fiber
|
13774 |
+
commercial fibre
|
13775 |
commercial office move
|
13776 |
+
commercial slideout
|
13777 |
+
commercial technician
|
13778 |
+
commercial-counter
|
13779 |
+
commercial-door
|
13780 |
+
commercial-fiber
|
13781 |
+
commercial-fibre
|
13782 |
commercial-office-move
|
13783 |
+
commercial-slideout
|
13784 |
+
commercial-technician
|
13785 |
commerical lender
|
13786 |
commerical-lender
|
13787 |
commericallender
|
13798 |
communal-authent
|
13799 |
community.atom
|
13800 |
commutee
|
13801 |
+
como emagrecer
|
13802 |
como facebook
|
13803 |
como ganhar
|
13804 |
como maquiar
|
13805 |
como reconquista
|
13806 |
como trabalhar
|
13807 |
+
como-emagrecer
|
13808 |
como-facebook
|
13809 |
como-ganhar
|
13810 |
como-maquiar
|
13934 |
considerably this page
|
13935 |
considerably this site
|
13936 |
considerably this web
|
13937 |
+
consideration speculate
|
13938 |
consideration-prior-to
|
13939 |
+
considerations speculate
|
13940 |
considerations-prior-to
|
13941 |
considering-innovation
|
13942 |
consolidation loan
|
13949 |
construct-chicken
|
13950 |
constructionn
|
13951 |
construtor
|
13952 |
+
consultation attorn
|
13953 |
consultation lawyer
|
13954 |
+
consultation-attorn
|
13955 |
consultation-lawyer
|
13956 |
+
consultationattorn
|
13957 |
consultationlawyer
|
13958 |
consulte nuestro servicio
|
13959 |
consumer buzz
|
13966 |
contactos-chico
|
13967 |
contactos-mujeres
|
13968 |
contactus/contact
|
13969 |
+
contain nice material
|
13970 |
+
contains nice material
|
13971 |
contemporize the
|
13972 |
contemporizes the
|
13973 |
content ,
|
13983 |
content?.
|
13984 |
contents are masterpiece
|
13985 |
contents?.
|
13986 |
+
conteudo legitimo
|
13987 |
+
conteúdo legítimo
|
13988 |
+
conteudo-legitimo
|
13989 |
+
continentfal
|
13990 |
continually have got
|
13991 |
continue assim
|
13992 |
continue-assim
|
13999 |
contoh-plakat
|
14000 |
contohplakat
|
14001 |
contratacin
|
14002 |
+
contre pitbull
|
14003 |
+
contre-pitbull
|
14004 |
control diet
|
14005 |
control-diet
|
14006 |
controldiet
|
14036 |
cooker ninja
|
14037 |
cooker-ninja
|
14038 |
cookerninja
|
14039 |
+
cooking fever free
|
14040 |
+
cooking-fever-free
|
14041 |
cool article
|
14042 |
cool blog
|
14043 |
cool post
|
14158 |
costume medi
|
14159 |
costume tendance
|
14160 |
costume versace
|
14161 |
+
costume will complement
|
14162 |
costume- aged
|
14163 |
costume-ermen
|
14164 |
costume-homme
|
14253 |
couponspriv
|
14254 |
courses casino
|
14255 |
courses-casino
|
14256 |
+
coursework service
|
14257 |
+
coursework-service
|
14258 |
couture avec
|
14259 |
couture-avec
|
14260 |
couyld
|
14379 |
creating short article
|
14380 |
creation will run
|
14381 |
credit direct
|
14382 |
+
credit loan
|
14383 |
credit repair
|
14384 |
credit report
|
14385 |
credit score
|
14386 |
credit_
|
14387 |
credit-card
|
14388 |
+
credit-check
|
14389 |
credit-direct
|
14390 |
credit-format
|
14391 |
+
credit-loan
|
14392 |
credit-repair
|
14393 |
credit-report
|
14394 |
credit-score
|
14398 |
creditcard.us
|
14399 |
creditdirect
|
14400 |
creditformat
|
14401 |
+
creditloan
|
14402 |
+
credito gratis
|
14403 |
+
crédito gratis
|
14404 |
+
credito inmediato
|
14405 |
+
crédito inmediato
|
14406 |
+
credito online
|
14407 |
+
crédito online
|
14408 |
+
credito personal
|
14409 |
+
crédito personal
|
14410 |
+
credito por internet
|
14411 |
+
credito rapid
|
14412 |
+
crédito rápid
|
14413 |
+
credito-gratis
|
14414 |
+
credito-inmediato
|
14415 |
+
credito-online
|
14416 |
+
credito-personal
|
14417 |
+
credito-por-internet
|
14418 |
+
credito-rapid
|
14419 |
+
creditogratis
|
14420 |
+
creditoinmediato
|
14421 |
+
creditoonline
|
14422 |
+
creditopersonal
|
14423 |
+
creditorapid
|
14424 |
+
creditos gratis
|
14425 |
+
créditos gratis
|
14426 |
+
creditos inmediato
|
14427 |
+
créditos inmediato
|
14428 |
+
creditos online
|
14429 |
+
créditos online
|
14430 |
+
creditos personal
|
14431 |
+
créditos personal
|
14432 |
+
creditos por internet
|
14433 |
+
creditos rapid
|
14434 |
+
creditos rapido
|
14435 |
+
créditos rápido
|
14436 |
+
creditos-gratis
|
14437 |
+
creditos-inmediato
|
14438 |
+
creditos-online
|
14439 |
+
creditos-personal
|
14440 |
+
creditos-por-internet
|
14441 |
+
creditos-rapid
|
14442 |
+
creditos-rapido
|
14443 |
+
creditosgratis
|
14444 |
+
creditosinmediato
|
14445 |
+
creditosonline
|
14446 |
+
creditospersonal
|
14447 |
+
creditosrapid
|
14448 |
+
creditosrapido
|
14449 |
creditrepair
|
14450 |
creditreport
|
14451 |
creditscore
|
14484 |
crypto + bitcoin
|
14485 |
crypto + btc
|
14486 |
crypto + forex
|
14487 |
+
crypto ad
|
14488 |
crypto bitcoin
|
14489 |
crypto btc
|
14490 |
crypto curren
|
14491 |
+
crypto enth
|
14492 |
crypto hack
|
14493 |
crypto moneda
|
14494 |
crypto script
|
14495 |
+
crypto stak
|
14496 |
crypto tab
|
14497 |
+
crypto thumb
|
14498 |
crypto_
|
14499 |
+
crypto-ad
|
14500 |
crypto-bitcoin
|
14501 |
crypto-btc
|
14502 |
crypto-curren
|
14503 |
+
crypto-enth
|
14504 |
crypto-hack
|
14505 |
crypto-moneda
|
14506 |
crypto-script
|
14507 |
+
crypto-stak
|
14508 |
crypto-tab
|
14509 |
+
crypto-thumb
|
14510 |
crypto/btc
|
14511 |
+
cryptoad
|
14512 |
cryptobtc
|
14513 |
cryptocurrency coin
|
14514 |
+
cryptocurrency enth
|
14515 |
cryptocurrency news
|
14516 |
cryptocurrency strat
|
14517 |
cryptocurrency-coin
|
14518 |
+
cryptocurrency-enth
|
14519 |
cryptocurrency-news
|
14520 |
cryptocurrency-strat
|
14521 |
cryptohack
|
14522 |
cryptomoneda
|
14523 |
cryptoscript
|
14524 |
+
cryptostak
|
14525 |
cryptotab
|
14526 |
+
cryptothumb
|
14527 |
crystal hack
|
14528 |
crystal-hack
|
14529 |
crystalhack
|
14665 |
cuz-this
|
14666 |
cv meaning
|
14667 |
cv-meaning
|
14668 |
+
cvv dump
|
14669 |
cvv shop
|
14670 |
+
cvv site
|
14671 |
+
cvv-dump
|
14672 |
cvv-shop
|
14673 |
+
cvv-site
|
14674 |
+
cvvdump
|
14675 |
cvvshop
|
14676 |
+
cvvsite
|
14677 |
çý
|
14678 |
cyber jeunesse
|
14679 |
cyber monday
|
14727 |
daddy-sitte
|
14728 |
dafeult
|
14729 |
daftar agen
|
14730 |
+
daftar game
|
14731 |
daftar harg
|
14732 |
daftar judi
|
14733 |
daftar poke
|
14734 |
+
daftar qq
|
14735 |
+
daftar slot
|
14736 |
daftar-agen
|
14737 |
+
daftar-game
|
14738 |
daftar-harg
|
14739 |
daftar-judi
|
14740 |
daftar-poke
|
14741 |
+
daftar-qq
|
14742 |
+
daftar-slot
|
14743 |
daftaragen
|
14744 |
daftarharg
|
14745 |
daftarjudi
|
14932 |
day-diet
|
14933 |
day-lengthy
|
14934 |
day-loubou
|
14935 |
+
day-to-day deal
|
14936 |
day. bye
|
14937 |
day.did
|
14938 |
dayloubou
|
14957 |
de-tivi
|
14958 |
dead composed subject
|
14959 |
deal benefit
|
14960 |
+
deal flow
|
14961 |
+
deal livingsocial
|
14962 |
deal of problem
|
14963 |
deal this blog
|
14964 |
deal this page
|
14968 |
deal-4u
|
14969 |
deal-benefit
|
14970 |
deal-eu
|
14971 |
+
deal-flow
|
14972 |
deal-uk
|
14973 |
deal-us
|
14974 |
deal.bl
|
14975 |
deal4u
|
14976 |
dealeu
|
14977 |
+
dealflow
|
14978 |
dealongamento
|
14979 |
dealonline
|
14980 |
deals-4-u
|
14992 |
dealus
|
14993 |
dear-lover
|
14994 |
dearlover
|
14995 |
+
death attorn
|
14996 |
death erotic
|
14997 |
+
death-attorn
|
14998 |
death-erotic
|
14999 |
deatherotic
|
15000 |
debt money
|
15043 |
definate
|
15044 |
definetely
|
15045 |
definitelly
|
15046 |
+
definition econo
|
15047 |
degree expert
|
15048 |
degree twenty
|
15049 |
degree-expert
|
15058 |
dekorativno prikladno
|
15059 |
dekorativno-prikladno
|
15060 |
del sitio web
|
15061 |
+
deliuveries
|
15062 |
+
deliuvery
|
15063 |
deliver noticeable result
|
15064 |
deliver overtly
|
15065 |
deliver result
|
15070 |
delivers result
|
15071 |
delivers-result
|
15072 |
deliversresult
|
15073 |
+
delivery can deliver
|
15074 |
+
delivery deliver
|
15075 |
+
delivery flower
|
15076 |
+
delivery philip
|
15077 |
+
delivery-flower
|
15078 |
+
delivery-near-me
|
15079 |
+
delivery-nearme
|
15080 |
+
delivery-philip
|
15081 |
delta-marketing
|
15082 |
deltamarketing
|
15083 |
deltasone
|
15091 |
dem-kauf-eines
|
15092 |
dem-tien
|
15093 |
đếm-tiền
|
15094 |
+
demasiado tu post
|
15095 |
demo0
|
15096 |
demo1
|
15097 |
demo2
|
15113 |
deneme mal
|
15114 |
deneme-icerik
|
15115 |
deneme-mal
|
15116 |
+
dengan maksimum
|
15117 |
denschlaf
|
15118 |
dental chat room
|
15119 |
dental guru
|
15143 |
depart your site
|
15144 |
depart your web
|
15145 |
depnhat
|
15146 |
+
depo pulsa
|
15147 |
+
depo slot
|
15148 |
+
depo-pulsa
|
15149 |
+
depo-slot
|
15150 |
depoimentos reais
|
15151 |
depoimentos-reais
|
15152 |
deposit casino
|
15153 |
+
deposit-bonus
|
15154 |
deposit-casino
|
15155 |
+
deposit.ru
|
15156 |
depositbank
|
15157 |
depositcasino
|
15158 |
+
depression 1
|
15159 |
+
depression 2
|
15160 |
+
depression 3
|
15161 |
+
depression 4
|
15162 |
+
depression 5
|
15163 |
+
depression 6
|
15164 |
+
depression 7
|
15165 |
+
depression 8
|
15166 |
+
depression 9
|
15167 |
+
depression and obs
|
15168 |
+
depression and preg
|
15169 |
+
depression definition
|
15170 |
+
depression ecg
|
15171 |
+
depression m kya
|
15172 |
+
depression medication
|
15173 |
+
depression symptom
|
15174 |
+
depression-definition
|
15175 |
+
depression-medication
|
15176 |
depression-symptom
|
|
|
15177 |
derm exclus
|
15178 |
derm-exclus
|
15179 |
dermexclus
|
15181 |
derniers modèle
|
15182 |
derniers-modele
|
15183 |
derniers-modèle
|
|
|
15184 |
derogatory circum
|
15185 |
derogatory item
|
15186 |
derun escort
|
15194 |
desconto
|
15195 |
describes feasible
|
15196 |
describes-feasible
|
15197 |
+
description career
|
15198 |
+
description-career
|
15199 |
+
descriptioncareer
|
15200 |
descriptive article
|
15201 |
descriptive blog
|
15202 |
descriptive post
|
15225 |
design-own
|
15226 |
design-product-design
|
15227 |
designcheap
|
15228 |
+
designed on a place
|
15229 |
designed to me
|
15230 |
designed-to-me
|
15231 |
designeed
|
15297 |
detskie-diskotek
|
15298 |
deutschland-online
|
15299 |
deutschlandonline
|
15300 |
+
development – digital
|
15301 |
+
development – website
|
15302 |
development an app
|
15303 |
devenir trade
|
15304 |
devenir-trade
|
15311 |
dewapoker
|
15312 |
dewelop
|
15313 |
df!
|
15314 |
+
dfsfds
|
15315 |
dfy suite
|
15316 |
dfy-suite
|
15317 |
dfysuite
|
15344 |
didnít
|
15345 |
didrex online
|
15346 |
didrex-online
|
15347 |
+
die besten nativ
|
15348 |
die kuhlbox
|
15349 |
die kühlbox
|
15350 |
die-kühlbox
|
15399 |
diet.htm
|
15400 |
diet.jsp
|
15401 |
diet.php
|
15402 |
+
dieta desayuno
|
15403 |
dieta detox
|
15404 |
+
dieta easy
|
15405 |
+
dieta kat
|
15406 |
+
dieta sanatoasa
|
15407 |
dieta sofrida
|
15408 |
+
dieta zero
|
15409 |
+
dieta-desayuno
|
15410 |
dieta-detox
|
15411 |
+
dieta-easy
|
15412 |
+
dieta-kat
|
15413 |
+
dieta-sanatoasa
|
15414 |
dieta-sofrida
|
15415 |
+
dieta-zero
|
15416 |
dietary advice
|
15417 |
dietary advise
|
15418 |
dietary status
|
15463 |
diiclfuf
|
15464 |
diid yoou
|
15465 |
diid you
|
15466 |
+
dikkat eksikligi
|
15467 |
+
dikkat eksikliği
|
15468 |
+
dikkat-eksikligi
|
15469 |
dili optim
|
15470 |
dili-optim
|
15471 |
dilioptim
|
15505 |
discount afl
|
15506 |
discount anta
|
15507 |
discount bag
|
15508 |
+
discount cialis
|
15509 |
discount jord
|
15510 |
discount kratom
|
15511 |
discount mbt
|
15521 |
discount-afl
|
15522 |
discount-anta
|
15523 |
discount-bag
|
15524 |
+
discount-cialis
|
15525 |
discount-cig
|
15526 |
discount-jord
|
15527 |
discount-kratom
|
15551 |
discountt
|
15552 |
discountugg
|
15553 |
discountwheel
|
15554 |
+
discover a person
|
15555 |
discover sociable site
|
15556 |
discover web design
|
15557 |
discovered this blog
|
15591 |
disfunçăo erétil
|
15592 |
disfuncao-eretil
|
15593 |
disfunçăo-erétil
|
15594 |
+
disi birak
|
15595 |
+
disi-birak
|
15596 |
+
disibirak
|
15597 |
+
diskret leveran
|
15598 |
+
diskret-leveran
|
15599 |
disney se pega
|
15600 |
disorder quiz
|
15601 |
disorder-quiz
|
15630 |
divulgaemail
|
15631 |
diy divorce
|
15632 |
diy-divorce
|
15633 |
+
dışı bırak
|
15634 |
djstool
|
15635 |
djtool
|
15636 |
đľđ
|
15787 |
done a formidable
|
15788 |
done formidable
|
15789 |
done grateful
|
15790 |
+
đong party
|
15791 |
+
động party
|
15792 |
dong phuc dep
|
15793 |
đồng phục đẹp
|
15794 |
dong-max
|
15795 |
+
đong-party
|
15796 |
dong-phuc-dep
|
15797 |
dongmax
|
15798 |
dongphucdep
|
15813 |
dooes-not
|
15814 |
door-blog
|
15815 |
dopamine
|
15816 |
+
dopningsrelevanta
|
15817 |
dora-scrum
|
15818 |
dorascrum
|
15819 |
dos-seios
|
15915 |
downloadsonline
|
15916 |
downlowd
|
15917 |
downlown
|
15918 |
+
downtown quintessence
|
15919 |
doxycycline
|
15920 |
dr prescription
|
15921 |
dr visit online
|
16017 |
drivel of an site
|
16018 |
drivel of an web
|
16019 |
drivewayservice
|
16020 |
+
drkenansimsek
|
16021 |
drmarten jap
|
16022 |
drmarten jp
|
16023 |
drmarten uk
|
16050 |
drop your premium
|
16051 |
drop,dehy
|
16052 |
drop.dehy
|
|
|
16053 |
drug buy
|
16054 |
drug cheap
|
16055 |
drug-buy
|
16060 |
druggz
|
16061 |
drugs buy
|
16062 |
drugs cheap
|
16063 |
+
drugs fedex
|
16064 |
drugs info
|
16065 |
+
drugs ups
|
16066 |
+
drugs usps
|
16067 |
drugs-buy
|
16068 |
drugs-cheap
|
16069 |
+
drugs-fedex
|
16070 |
drugs-info
|
16071 |
+
drugs-ups
|
16072 |
+
drugs-usps
|
16073 |
drugs. regard
|
16074 |
drugs4u
|
16075 |
drugsbuy
|
16131 |
dude.de
|
16132 |
dudes.de
|
16133 |
dugg some
|
16134 |
+
dui attorn
|
16135 |
+
dui lawyer
|
16136 |
+
dui-attorn
|
16137 |
+
dui-lawyer
|
16138 |
dulichtrongoi
|
16139 |
dulichtuxu
|
16140 |
dummytest
|
16179 |
dvd-erotic
|
16180 |
dvdbox
|
16181 |
dvdrip
|
16182 |
+
dwi-attorn
|
16183 |
+
dwiattorn
|
16184 |
dwn.linksind.
|
16185 |
dylongfa
|
16186 |
dynamic advert
|
16235 |
e| t
|
16236 |
e2by.in
|
16237 |
eâcute
|
16238 |
+
eager of read
|
16239 |
eagerly wiggling
|
16240 |
eagerly-wiggling
|
16241 |
eaglefight.eaglefight
|
16264 |
easier consume
|
16265 |
easier to available
|
16266 |
easily one tight
|
16267 |
+
easy agency
|
16268 |
+
easy blog
|
16269 |
easy consume
|
16270 |
easy naked
|
16271 |
+
easy weblog
|
16272 |
+
easy website
|
16273 |
easy with your present
|
16274 |
+
easy-agency
|
16275 |
+
easy-blog
|
16276 |
easy-naked
|
16277 |
+
easy-weblog
|
16278 |
+
easy-website
|
16279 |
easy.in
|
16280 |
+
easyagency
|
16281 |
easyloan
|
16282 |
easynaked
|
16283 |
easyrent
|
16284 |
+
easyslim
|
16285 |
eating hemp
|
16286 |
eating-hemp
|
16287 |
eatinghemp
|
16308 |
ecig review
|
16309 |
ecig-review
|
16310 |
ecigreview
|
16311 |
+
eclipse review
|
16312 |
+
eclipse-review
|
16313 |
+
eclipsereview
|
16314 |
ecom email
|
16315 |
ecom success
|
16316 |
ecom-email
|
16369 |
egyptjers
|
16370 |
ehttp
|
16371 |
eight %
|
16372 |
+
eigyht
|
16373 |
eine seite widmen
|
16374 |
einkommen
|
16375 |
ejaculate help
|
16396 |
ekologiczne logo
|
16397 |
ekologiczne-logo
|
16398 |
ekorting
|
16399 |
+
eksikligi afyon
|
16400 |
+
eksikliği afyon
|
16401 |
+
eksikligi-afyon
|
16402 |
ekskluzywne zestaw
|
16403 |
ekskluzywne-zestaw
|
16404 |
ekspedisi murah
|
16425 |
elektrik malzeme
|
16426 |
elektrik-malzeme
|
16427 |
elektrikmalzeme
|
16428 |
+
elektronik cash
|
16429 |
+
elektronik-cash
|
16430 |
elementary entry
|
16431 |
elementary-entry
|
16432 |
eli online
|
16459 |
elitescort
|
16460 |
eliteskort
|
16461 |
elitewom
|
16462 |
+
ellezza.pt
|
16463 |
eloans
|
16464 |
elsa-dress
|
16465 |
elveda canimin
|
16467 |
elway jers
|
16468 |
elway-jers
|
16469 |
elwayjers
|
16470 |
+
emagrecer fazendo
|
16471 |
+
emagrecer flanco
|
16472 |
+
emagrecer hot
|
16473 |
+
emagrecer inter
|
16474 |
+
emagrecer limpa
|
16475 |
emagrecer podem
|
16476 |
+
emagrecer rapido
|
16477 |
+
emagrecer rápido
|
16478 |
+
emagrecer urgent
|
16479 |
+
emagrecer whey
|
16480 |
+
emagrecer-fazendo
|
16481 |
+
emagrecer-flanco
|
16482 |
+
emagrecer-hot
|
16483 |
+
emagrecer-inter
|
16484 |
+
emagrecer-limpa
|
16485 |
emagrecer-podem
|
16486 |
+
emagrecer-rapido
|
16487 |
+
emagrecer-urgent
|
16488 |
+
emagrecer-whey
|
16489 |
email academy
|
16490 |
email advertis
|
16491 |
email advertiz
|
16544 |
empowernetwork
|
16545 |
empreendedor
|
16546 |
empresa de referencia
|
16547 |
+
empresa de reparacione
|
16548 |
+
empresa de servicio
|
16549 |
empresa familiar nacida
|
16550 |
empresa grande
|
16551 |
+
empresa-de-reparacione
|
16552 |
+
empresa-de-servicio
|
16553 |
empresa-grande
|
16554 |
empresas grande
|
16555 |
empresas-grande
|
16578 |
endlaved
|
16579 |
endocrinol meta
|
16580 |
endocrinol-meta
|
16581 |
+
eneagrama
|
16582 |
+
eneagramizar
|
16583 |
+
eneatipo
|
16584 |
+
enemy to covid
|
16585 |
+
enerbetic
|
16586 |
energetic article
|
16587 |
energetic blog
|
16588 |
+
energetic page
|
16589 |
energetic post
|
16590 |
+
energetic site
|
16591 |
+
energetic web
|
16592 |
energetic-article
|
16593 |
energetic-blog
|
16594 |
energetic-post
|
16611 |
engagementring
|
16612 |
engagermate
|
16613 |
engagge
|
16614 |
+
engagment
|
16615 |
engine account
|
16616 |
engine online
|
16617 |
engine optim
|
16654 |
enhancepill
|
16655 |
enhanceyou
|
16656 |
enhttp
|
16657 |
+
enjoy mobile game
|
16658 |
enjoy your blog
|
16659 |
enjoy your page
|
16660 |
enjoy your post
|
16661 |
enjoy your site
|
16662 |
enjoy your web
|
16663 |
+
enjoy-mobile-game
|
16664 |
enjoy-more
|
16665 |
enjoying by these
|
16666 |
enjoying by this
|
16738 |
equipement-manufact
|
16739 |
equipment manufact
|
16740 |
equipment-manufact
|
16741 |
+
equipo de pro
|
16742 |
equivalentt
|
16743 |
era afl
|
16744 |
era mlb
|
16829 |
erotischer reife
|
16830 |
erotischer-reife
|
16831 |
erotyczna
|
16832 |
+
ervaren crypto
|
16833 |
+
ervaren-crypto
|
16834 |
eryaman escort
|
16835 |
eryaman eskort
|
16836 |
eryaman-escort
|
17143 |
every stuff
|
17144 |
every wearer
|
17145 |
every-advert
|
17146 |
+
every-great-attorn
|
17147 |
every-info
|
17148 |
every-leg
|
17149 |
every-light
|
17162 |
everyone-furthermore
|
17163 |
everypant
|
17164 |
everysock
|
17165 |
+
everything dental
|
17166 |
+
everything information
|
17167 |
everything-dental
|
17168 |
+
everything-information
|
17169 |
everythingdental
|
17170 |
everythink
|
17171 |
everytight
|
17187 |
excellent article
|
17188 |
excellent blog
|
17189 |
excellent content
|
17190 |
+
excellent factor
|
17191 |
excellent gift for
|
17192 |
excellent gifts for
|
17193 |
excellent movie clip
|
17238 |
excessively-skill
|
17239 |
exchange buying and selling
|
17240 |
exchange link
|
|
|
17241 |
exchange-link
|
|
|
17242 |
exchangelink
|
17243 |
exchanging link
|
17244 |
exchanging-link
|
17260 |
exelon
|
17261 |
exercice
|
17262 |
exgirlfriend
|
17263 |
+
exipure discount
|
17264 |
+
exipure supplement
|
17265 |
+
exipure-discount
|
17266 |
+
exipure-supplement
|
17267 |
+
exipurediscount
|
17268 |
+
exipuresupplement
|
17269 |
exists lots
|
17270 |
exit.asp
|
17271 |
exmo.co
|
17281 |
experience simply
|
17282 |
experience-boat
|
17283 |
experience-simply
|
17284 |
+
experienced business
|
17285 |
+
experienced crypto
|
17286 |
+
experienced-business
|
17287 |
+
experienced-crypto
|
17288 |
experiencia en el sector
|
17289 |
expert presence
|
17290 |
expert suggestion
|
17291 |
+
expert write
|
17292 |
expert writing
|
17293 |
expert-presence
|
17294 |
expert-suggestion
|
17346 |
extra 10 discount
|
17347 |
extra 20 discount
|
17348 |
extra gry
|
17349 |
+
extra than half
|
17350 |
extract cbd
|
17351 |
extract pill
|
17352 |
extract-cbd
|
17357 |
extremely broad for
|
17358 |
extremely much
|
17359 |
extremely superb
|
17360 |
+
extremely university
|
17361 |
extremely valid point
|
17362 |
+
extremely_university
|
17363 |
extremely-ample
|
17364 |
extremely-much
|
17365 |
extremely-superb
|
17366 |
+
extremely-university
|
17367 |
extremely}
|
17368 |
extremley
|
17369 |
extremrly
|
17608 |
family motor vehicle
|
17609 |
family-motor-vehicle
|
17610 |
famous blog
|
17611 |
+
famous news
|
17612 |
famous palmist
|
17613 |
+
famous social net
|
17614 |
famous-blog
|
17615 |
+
famous-news
|
17616 |
famous-palmist
|
17617 |
+
famousnews
|
17618 |
fan hack
|
17619 |
fan-hack
|
17620 |
fanalert
|
17723 |
fashion hair
|
17724 |
fashion list
|
17725 |
fashion men
|
17726 |
+
fashion room
|
17727 |
fashion store
|
17728 |
fashion trend
|
17729 |
fashion web
|
17735 |
fashion-hair
|
17736 |
fashion-list
|
17737 |
fashion-men
|
17738 |
+
fashion-room
|
17739 |
fashion-store
|
17740 |
fashion-trend
|
17741 |
fashion-web
|
17814 |
fastidious repl
|
17815 |
fastidious respo
|
17816 |
fastidious site
|
17817 |
+
fastidious thin
|
17818 |
fastidious thou
|
17819 |
fastidious under
|
17820 |
fastidious urg
|
17837 |
fastidious-repl
|
17838 |
fastidious-respo
|
17839 |
fastidious-site
|
17840 |
+
fastidious-thin
|
17841 |
fastidious-thou
|
17842 |
fastidious-under
|
17843 |
fastidious-urg
|
17845 |
fastidious-writ
|
17846 |
fastidious, my
|
17847 |
fastidious=
|
17848 |
+
fastidiouus
|
17849 |
fastlink.run
|
17850 |
fastloan
|
17851 |
fastmoney
|
18118 |
fetishmen
|
18119 |
fetishsex
|
18120 |
fetishwom
|
18121 |
+
fever free gem
|
18122 |
+
fever-free-gem
|
18123 |
few web log
|
18124 |
few web page
|
18125 |
few web site
|
18189 |
filenamesdat
|
18190 |
files/new
|
18191 |
filestube
|
18192 |
+
film drinking
|
18193 |
film erotic
|
18194 |
film it would also
|
18195 |
film izle
|
18200 |
film song download
|
18201 |
film streaming complet
|
18202 |
film x
|
18203 |
+
film-drinking
|
18204 |
film-erotic
|
18205 |
film-izle
|
18206 |
film-kovasi
|
18214 |
filmerotic
|
18215 |
filmizle
|
18216 |
filmkovasi
|
18217 |
+
filmkox
|
18218 |
filmmodu
|
18219 |
filmporn
|
18220 |
films enables
|
18248 |
finance cash
|
18249 |
finance debt
|
18250 |
finance emerg
|
18251 |
+
finance provider
|
18252 |
finance service
|
18253 |
finance solution
|
18254 |
finance-
|
18257 |
finance-debt
|
18258 |
finance-emerg
|
18259 |
finance-pak
|
18260 |
+
finance-provider
|
18261 |
finance-service
|
18262 |
finance-solution
|
18263 |
financeblog
|
18348 |
finiteinstant
|
18349 |
finnd out
|
18350 |
fioricet
|
18351 |
+
firearm online
|
18352 |
+
firearm store
|
18353 |
+
firearm-online
|
18354 |
+
firearm-store
|
18355 |
+
firearmonline
|
18356 |
+
firearmstore
|
18357 |
firefox-setting
|
18358 |
firefoxik
|
18359 |
firefoxsetting
|
18415 |
fiverseller
|
18416 |
fivestardoll
|
18417 |
fix credit
|
18418 |
+
fix oyun
|
18419 |
fix-credit
|
18420 |
fix-iphone
|
18421 |
+
fix-oyun
|
18422 |
fixcredit
|
18423 |
fixed credit
|
18424 |
fixed footbal
|
18435 |
fixing-credit
|
18436 |
fixingcredit
|
18437 |
fixiphone
|
18438 |
+
fixoyun
|
18439 |
fj.o.g.a
|
18440 |
fj.o.ga
|
18441 |
fj.og.a
|
18460 |
flat belly tonic
|
18461 |
flat-belly-tonic
|
18462 |
flats.web
|
18463 |
+
fleet cabinet
|
18464 |
+
fleet interior
|
18465 |
+
fleet-cabinet
|
18466 |
+
fleet-interior
|
18467 |
fler artiklar
|
18468 |
fler-artiklar
|
18469 |
flex-global
|
18484 |
floating-board
|
18485 |
floatingboard
|
18486 |
floridaflee
|
18487 |
+
flower store
|
18488 |
+
flower tomorrow
|
18489 |
+
flower_store
|
18490 |
+
flower-store
|
18491 |
+
flower-tomorrow
|
18492 |
+
flowers tomorrow
|
18493 |
flowers-on-line
|
18494 |
flowers-online
|
18495 |
+
flowers-tomorrow
|
18496 |
+
flowerstore
|
18497 |
floxacin
|
18498 |
fluccun
|
18499 |
fluconazole
|
18596 |
footwearmbt
|
18597 |
footwears
|
18598 |
for a article
|
18599 |
+
for a easy
|
18600 |
for black mans
|
18601 |
for black mens
|
18602 |
for black womans
|
18773 |
fortemuscle
|
18774 |
forteparafon
|
18775 |
forthcoming post
|
18776 |
+
forthcoming submit
|
18777 |
forthcoming-post
|
18778 |
+
forthcoming-submit
|
18779 |
+
forthe post
|
18780 |
fortnite aimbot
|
18781 |
fortnite cheat
|
18782 |
fortnite hack
|
18805 |
forumizmit
|
18806 |
forums.real
|
18807 |
forums.thank
|
18808 |
+
forward moneyline
|
18809 |
forwarding-parcel-forward
|
18810 |
forwholesale
|
18811 |
forwindows8
|
18892 |
free csgo
|
18893 |
free diamond
|
18894 |
free download
|
18895 |
+
free ecard
|
18896 |
free escort
|
18897 |
free eskort
|
18898 |
free facebook
|
18902 |
free gay
|
18903 |
free hack
|
18904 |
free hip hop
|
18905 |
+
free hookup
|
18906 |
free if you win
|
18907 |
+
free indexer
|
18908 |
free instagram
|
18909 |
free internation
|
18910 |
free ios
|
18918 |
free money
|
18919 |
free new year
|
18920 |
free new yr
|
18921 |
+
free nude
|
18922 |
free number
|
18923 |
free on-line
|
18924 |
free online
|
18936 |
free sex
|
18937 |
free simple
|
18938 |
free skins
|
18939 |
+
free snapchat
|
18940 |
free spin link
|
18941 |
free spins link
|
18942 |
free strat
|
18943 |
free super
|
18944 |
free tarot
|
18945 |
+
free tiktok
|
18946 |
free to surf
|
18947 |
free too surf
|
18948 |
free trap ins
|
18949 |
free trial incent
|
18950 |
+
free twitter
|
18951 |
free v buck
|
18952 |
free visit
|
18953 |
free watch
|
18971 |
free-csgo
|
18972 |
free-diamond
|
18973 |
free-download
|
18974 |
+
free-ecard
|
18975 |
free-escort
|
18976 |
free-eskort
|
18977 |
free-facebook
|
18984 |
free-hack
|
18985 |
free-hemp
|
18986 |
free-hip-hop
|
18987 |
+
free-hookup
|
18988 |
+
free-indexer
|
18989 |
free-instagram
|
18990 |
free-internation
|
18991 |
free-ios
|
19004 |
free-movie
|
19005 |
free-mp3
|
19006 |
free-mp4
|
19007 |
+
free-nude
|
19008 |
free-number
|
19009 |
free-offer
|
19010 |
free-on-line
|
19026 |
free-sex
|
19027 |
free-simple
|
19028 |
free-skins
|
19029 |
+
free-snapchat
|
19030 |
free-spin-link
|
19031 |
free-spins-link
|
19032 |
free-strat
|
19033 |
free-super
|
19034 |
free-tarot
|
19035 |
+
free-tiktok
|
19036 |
free-trial-incent
|
19037 |
+
free-twitter
|
19038 |
free-v-buck
|
19039 |
free-v-bucks
|
19040 |
free-watch
|
19064 |
freedomevaluation
|
19065 |
freedomreview
|
19066 |
freedownload
|
19067 |
+
freeecard
|
19068 |
freeescort
|
19069 |
freeeskort
|
19070 |
freefor.co
|
19071 |
freefortnite
|
19072 |
freegay
|
19073 |
freegold
|
19074 |
+
freehookup
|
19075 |
freehub
|
19076 |
+
freeindexer
|
19077 |
freeinternation
|
19078 |
freeipad
|
19079 |
freeiphone
|
19097 |
freemp3
|
19098 |
freemp4
|
19099 |
freenom.link
|
19100 |
+
freenude
|
19101 |
freeoffer
|
19102 |
freeonline
|
19103 |
freepokecoin
|
19148 |
freshreview
|
19149 |
freshseo
|
19150 |
freshwaterpearl
|
|
|
19151 |
friday 2020
|
19152 |
friday 2021
|
19153 |
+
friday 2022
|
19154 |
friday michael
|
19155 |
friday mlb
|
19156 |
friday moncler
|
19161 |
friday sale
|
19162 |
friday ugg
|
19163 |
friday watch
|
|
|
19164 |
friday-2020
|
19165 |
friday-2021
|
19166 |
+
friday-2022
|
19167 |
friday-michael
|
19168 |
friday-mlb
|
19169 |
friday-moncler
|
19174 |
friday-sale
|
19175 |
friday-ugg
|
19176 |
friday-watch
|
|
|
19177 |
friday2020
|
19178 |
friday2021
|
19179 |
+
friday2022
|
19180 |
fridaymlb
|
19181 |
fridaymoncler
|
19182 |
fridaynba
|
19305 |
fulgor fantastic
|
19306 |
fulgor fantástic
|
19307 |
fulgor-fantastic
|
19308 |
+
full crack
|
19309 |
full download page
|
19310 |
full length motion
|
19311 |
full length movie
|
19312 |
full length-motion
|
19313 |
full movie
|
19314 |
full porn
|
19315 |
+
full-crack
|
19316 |
+
full-film
|
19317 |
full-house-for-rent
|
19318 |
full-length-movie
|
19319 |
full-movie
|
19320 |
full-porn
|
19321 |
full.com/watch
|
19322 |
full4k
|
19323 |
+
fullcrack
|
19324 |
+
fullfilm
|
19325 |
fullmovie
|
19326 |
fullporn
|
19327 |
+
fullz info
|
19328 |
+
fullz-info
|
19329 |
+
fullzinfo
|
19330 |
fulmalware
|
19331 |
fun teaser with
|
19332 |
fun-88
|
19408 |
further-former
|
19409 |
furworld.ru
|
19410 |
furworld.su
|
19411 |
+
futbol barata
|
19412 |
+
fútbol barata
|
19413 |
futbol barcelona
|
19414 |
+
futbol-barata
|
19415 |
futbol-barcelona
|
19416 |
futbol/forum
|
19417 |
+
futbolbarata
|
19418 |
futbolbarcelona
|
19419 |
futuristic-market
|
19420 |
futuristicmarket
|
19513 |
gamble online
|
19514 |
gamble-online
|
19515 |
gambleonline
|
19516 |
+
gambling boat
|
19517 |
gambling casino
|
19518 |
gambling game
|
19519 |
gambling online
|
19520 |
+
gambling site
|
19521 |
gambling-4-u
|
19522 |
gambling-4u
|
19523 |
+
gambling-boat
|
19524 |
gambling-casino
|
19525 |
gambling-game
|
19526 |
gambling-online
|
19527 |
+
gambling-site
|
19528 |
gambling4u
|
19529 |
gamblingcasino
|
19530 |
gamblinggame
|
19531 |
gamblingonline
|
19532 |
+
gamblingsite
|
19533 |
game bong
|
19534 |
game casino
|
19535 |
+
game gold
|
19536 |
game ionline
|
19537 |
game jers
|
19538 |
game online
|
19539 |
+
game pertama
|
19540 |
game status system
|
19541 |
game torrent
|
19542 |
game wiki
|
19545 |
game-copy
|
19546 |
game-full-online
|
19547 |
game-game
|
19548 |
+
game-gold
|
19549 |
game-ionline
|
19550 |
game-jers
|
19551 |
game-money
|
19552 |
game-online
|
19553 |
+
game-pertama
|
19554 |
game-torrent
|
19555 |
game-wiki
|
19556 |
game,arcad
|
19569 |
gamedesigndegree
|
19570 |
gamefullonline
|
19571 |
gamegame
|
19572 |
+
gamegold
|
19573 |
gameionline
|
19574 |
gamejers
|
19575 |
gamemoney
|
19624 |
gaogb
|
19625 |
gaoland
|
19626 |
gapscent
|
19627 |
+
garansi kepuasan
|
19628 |
garantizadas por escrito
|
19629 |
garantizar la calidad
|
19630 |
garantizar product
|
19631 |
garantizar-product
|
19632 |
+
garbage domain
|
19633 |
+
garbage-domain
|
19634 |
+
garbagedomain
|
19635 |
garcinia
|
19636 |
+
garden of this funeral
|
19637 |
garena free
|
19638 |
garena-free
|
19639 |
garenafree
|
19660 |
gau bong dore
|
19661 |
gấu bông dore
|
19662 |
gau-bong-dore
|
19663 |
+
gauge the potency
|
19664 |
+
gave attain
|
19665 |
+
gave succeed
|
19666 |
gawab.com
|
19667 |
gay cartoon
|
19668 |
gay chat
|
19779 |
generatingprofit
|
19780 |
generation algorithm
|
19781 |
generation-algorithm
|
|
|
19782 |
generator 2020
|
19783 |
generator 2021
|
19784 |
+
generator 2022
|
19785 |
generator-2020
|
19786 |
generator-2021
|
19787 |
+
generator-2022
|
19788 |
generator2020
|
19789 |
generator2021
|
19790 |
+
generator2022
|
19791 |
generatorpro
|
19792 |
generic albenda
|
19793 |
generic albenza
|
19816 |
genuinely good thing
|
19817 |
genuinely great info
|
19818 |
genuinely health
|
19819 |
+
genuinely interesting point
|
19820 |
genuinely very help
|
19821 |
genuinely-fantas
|
19822 |
genuinely-fastidious
|
19853 |
get bytecoin
|
19854 |
get face
|
19855 |
get fastidious
|
19856 |
+
get free gem
|
19857 |
get fuck
|
19858 |
get hold this
|
19859 |
+
get into touch
|
19860 |
get know how
|
19861 |
get know-how
|
19862 |
get litecoin
|
19874 |
get tthe
|
19875 |
get tthis
|
19876 |
get v buck
|
19877 |
+
get you winning
|
19878 |
get yours here
|
19879 |
get_rid
|
19880 |
get_started
|
19888 |
get-face
|
19889 |
get-fantastic
|
19890 |
get-fastidious
|
19891 |
+
get-free-gem
|
19892 |
get-fuck
|
19893 |
get-hermes
|
19894 |
get-know-how
|
19909 |
get-the-answer
|
19910 |
get-tinder
|
19911 |
get-translate
|
19912 |
+
get-u-promo
|
19913 |
get-widget
|
19914 |
+
get-you-winning
|
19915 |
getaloan
|
19916 |
getastyle
|
19917 |
getbitcoin
|
19942 |
getting-thought
|
19943 |
gettingknowledge
|
19944 |
gettranslate
|
19945 |
+
getupromo
|
19946 |
getwidget
|
19947 |
getyou.asp
|
19948 |
gezichtsbehand
|
19996 |
giftsclick
|
19997 |
giftsingapore
|
19998 |
giftssingapore
|
19999 |
+
giga porn
|
20000 |
+
giga-porn
|
20001 |
gigantix.co
|
20002 |
+
gigaporn
|
20003 |
gikves
|
20004 |
gilet moncler
|
20005 |
gilet-moncler
|
20177 |
giveaway-win
|
20178 |
giveaway! win
|
20179 |
gives fastidious
|
20180 |
+
gives good understand
|
20181 |
+
gives great understand
|
20182 |
gives quality base
|
20183 |
gives-fastidious
|
20184 |
gkhk
|
20215 |
glubokoye glot
|
20216 |
glubokoye-glot
|
20217 |
glucophage
|
20218 |
+
glueclosamine
|
20219 |
glutamina
|
20220 |
glyburide
|
20221 |
gma1l
|
20461 |
goog even
|
20462 |
goog luck
|
20463 |
goog-luck
|
20464 |
+
google arama
|
20465 |
google bind
|
20466 |
google click
|
20467 |
google for-
|
20483 |
google solution
|
20484 |
google us
|
20485 |
google voice pva
|
20486 |
+
google-arama
|
20487 |
google-bind
|
20488 |
google-click
|
20489 |
google-fuck
|
20626 |
gooseyouth
|
20627 |
gopgle
|
20628 |
goping to
|
20629 |
+
gordura eliminar
|
20630 |
+
gordura foraminal
|
20631 |
+
gordura retro
|
20632 |
+
gordura subcut
|
20633 |
+
gordura trans
|
20634 |
+
gordura unto
|
20635 |
+
gordura visceral
|
20636 |
+
gordura-eliminar
|
20637 |
+
gordura-foraminal
|
20638 |
+
gordura-retro
|
20639 |
+
gordura-subcut
|
20640 |
+
gordura-trans
|
20641 |
+
gordura-unto
|
20642 |
+
gordura-visceral
|
20643 |
+
gorgeous bath design
|
20644 |
+
gorgeous bathroom design
|
20645 |
gorgeous elegant
|
20646 |
gorgeous escort
|
20647 |
gorgeous eskort
|
20650 |
gorgeous-eskort
|
20651 |
gorgeousescort
|
20652 |
gorgeouseskort
|
20653 |
+
gorod top
|
20654 |
+
gorod-top
|
20655 |
+
gorod.top
|
20656 |
gosgov
|
20657 |
goshop.
|
20658 |
gossip posted
|
20683 |
gotta favourite
|
20684 |
gotten the therap
|
20685 |
gotten very good thing
|
20686 |
+
governments job
|
20687 |
+
governments-job
|
20688 |
gowatchs
|
20689 |
gown love
|
20690 |
gown online
|
20728 |
gran calidad
|
20729 |
gran experiencia dentro
|
20730 |
gran experiencia en
|
20731 |
+
gran fiabilidad
|
20732 |
gran flexibilidad
|
20733 |
gran-calidad
|
20734 |
grand opening giveaway
|
20749 |
granny-porn
|
20750 |
grannyporn
|
20751 |
grateest
|
20752 |
+
gratifying operate
|
20753 |
+
gratifying-operate
|
20754 |
gratis coin
|
20755 |
gratis online
|
20756 |
gratis sex
|
21009 |
growth-hormone
|
21010 |
growthhormone
|
21011 |
grsentas
|
21012 |
+
gru movie
|
21013 |
+
gru-movie
|
21014 |
+
gru2movie
|
21015 |
+
grumovie
|
21016 |
gruppmeddelanden
|
21017 |
gruppo gucci
|
21018 |
gruppo-gucci
|
21160 |
gunler bayim
|
21161 |
gunler-bayim
|
21162 |
guns for sale
|
21163 |
+
guns online
|
21164 |
+
guns-online
|
21165 |
+
gunsonline
|
21166 |
gunstig kaufen
|
21167 |
günstig kaufen
|
21168 |
gunstig-kaufen
|
21184 |
guys-porn
|
21185 |
guysporn
|
21186 |
guyys
|
21187 |
+
guzel bir sayfa
|
21188 |
+
gymgrossisten
|
21189 |
gyslera
|
21190 |
gⲟ
|
21191 |
gо
|
21197 |
habitof
|
21198 |
hack $
|
21199 |
hack 123
|
|
|
21200 |
hack 2020
|
21201 |
hack 2021
|
21202 |
+
hack 2022
|
21203 |
hack android
|
21204 |
hack apk
|
21205 |
hack blog
|
21218 |
hack generat
|
21219 |
hack get
|
21220 |
hack glitch
|
21221 |
+
hack google
|
21222 |
hack instagram
|
21223 |
hack instant
|
21224 |
hack ios
|
21238 |
hack web
|
21239 |
hack xyz
|
21240 |
hack-123
|
|
|
21241 |
hack-2020
|
21242 |
hack-2021
|
21243 |
+
hack-2022
|
21244 |
hack-android
|
21245 |
hack-apk
|
21246 |
hack-blog
|
21262 |
hack-generat
|
21263 |
hack-get
|
21264 |
hack-glitch
|
21265 |
+
hack-google
|
21266 |
hack-instagram
|
21267 |
hack-instant
|
21268 |
hack-ios
|
21288 |
hack.blog
|
21289 |
hack.web
|
21290 |
hack123
|
|
|
21291 |
hack2020
|
21292 |
hack2021
|
21293 |
+
hack2022
|
21294 |
hackandroid
|
21295 |
hackapk
|
21296 |
hackasphalt
|
21306 |
hackface
|
21307 |
hackfb
|
21308 |
hackgem
|
21309 |
+
hackgoogle
|
21310 |
hacking 123
|
21311 |
hacking-123
|
21312 |
hacking123
|
21440 |
haohao
|
21441 |
happens you are deal
|
21442 |
happy and ready
|
21443 |
+
happy birthday gift
|
21444 |
+
happy birthday image
|
21445 |
+
happy christmas gift
|
21446 |
+
happy christmas image
|
21447 |
happy fresh year
|
21448 |
happy tht
|
21449 |
+
happy-birthday-gift
|
21450 |
+
happy-birthday-image
|
21451 |
+
happy-christmas-gift
|
21452 |
+
happy-christmas-image
|
21453 |
+
happy-fresh-year
|
21454 |
happybirthday1
|
21455 |
+
happybirthdaygift
|
21456 |
+
happybirthdayimage
|
21457 |
+
happychristmasgift
|
21458 |
happychristmasimage
|
21459 |
haraka black
|
21460 |
haraka-black
|
21470 |
hardyhuppari
|
21471 |
hardyjean
|
21472 |
harga emas
|
21473 |
+
harga jasa
|
21474 |
harga plakat
|
21475 |
harga-emas
|
21476 |
+
harga-jasa
|
21477 |
harga-plakat
|
21478 |
harnessedthem
|
21479 |
hartmann repeated
|
21538 |
hawks-jers
|
21539 |
hawksjers
|
21540 |
hay 100 localidad
|
21541 |
+
hayat bilgiler
|
21542 |
+
hayat-bilgiler
|
21543 |
+
hayatbilgiler
|
21544 |
hɑ
|
21545 |
hcg boost
|
21546 |
hcg-boost
|
21573 |
hdzfilm
|
21574 |
he contact admin
|
21575 |
he is discussing online
|
21576 |
+
he isnt
|
21577 |
heading out throughout
|
21578 |
headphone power cord
|
|
|
21579 |
headset 2020
|
21580 |
headset 2021
|
21581 |
+
headset 2022
|
21582 |
headset-2020
|
21583 |
headset-2021
|
21584 |
+
headset-2022
|
21585 |
headset2020
|
21586 |
headset2021
|
21587 |
+
headset2022
|
21588 |
healing-article
|
21589 |
healingindu
|
21590 |
health advis
|
21618 |
healthrelated
|
21619 |
healthstock
|
21620 |
healthsuppl
|
21621 |
+
healthypple
|
21622 |
+
hearing aid near
|
21623 |
+
hearing aids near
|
21624 |
+
hearing-aid-near
|
21625 |
+
hearing-aids-near
|
21626 |
heart food consult
|
21627 |
heart site
|
21628 |
heart-food-consult
|
21630 |
hearted web
|
21631 |
hearted-web
|
21632 |
heartsite
|
21633 |
+
hed crypto
|
21634 |
+
hed-crypto
|
21635 |
hedge fund
|
21636 |
hedge-fund
|
21637 |
heel ped
|
21700 |
hello, its good
|
21701 |
hello, its me
|
21702 |
hello, please suggest
|
21703 |
+
hello, this article
|
21704 |
+
hello, this blog
|
21705 |
+
hello, this page
|
21706 |
+
hello, this post
|
21707 |
+
hello, this web
|
21708 |
+
hello,my
|
21709 |
+
hello,this
|
21710 |
+
hello! this article
|
21711 |
+
hello! this blog
|
21712 |
+
hello! this page
|
21713 |
+
hello! this post
|
21714 |
+
hello! this web
|
21715 |
hello!my
|
21716 |
+
hello!this
|
21717 |
+
hello. this article
|
21718 |
+
hello. this blog
|
21719 |
+
hello. this page
|
21720 |
+
hello. this post
|
21721 |
+
hello. this web
|
21722 |
hello.this
|
21723 |
helloadmin
|
21724 |
hellobonus
|
21778 |
hence choose
|
21779 |
hentai
|
21780 |
heook
|
21781 |
+
hepatitis b depression
|
21782 |
hepcinat
|
21783 |
her escort
|
21784 |
her eskort
|
21968 |
hi, it’s me
|
21969 |
hi, its good
|
21970 |
hi, its me
|
21971 |
+
hi, this article
|
21972 |
+
hi, this blog
|
21973 |
+
hi, this page
|
21974 |
+
hi, this post
|
21975 |
+
hi, this web
|
21976 |
hi, yup
|
21977 |
+
hi,this
|
21978 |
+
hi! this article
|
21979 |
+
hi! this blog
|
21980 |
+
hi! this page
|
21981 |
+
hi! this post
|
21982 |
+
hi! this web
|
21983 |
+
hi!this
|
21984 |
+
hi. this article
|
21985 |
+
hi. this blog
|
21986 |
+
hi. this page
|
21987 |
+
hi. this post
|
21988 |
+
hi. this web
|
21989 |
+
hi.this
|
21990 |
+
hidra club
|
21991 |
+
hidra onion
|
21992 |
+
hidra rus
|
21993 |
+
hidra ruz
|
21994 |
+
hidra-club
|
21995 |
+
hidra-onion
|
21996 |
+
hidra-rus
|
21997 |
+
hidra-ruz
|
21998 |
+
hidraclub
|
21999 |
+
hidraonion
|
22000 |
+
hidrarus
|
22001 |
+
hidraruz
|
22002 |
hidro-ponik
|
22003 |
hidroponik
|
22004 |
hien nay
|
22280 |
hollisteruk
|
22281 |
hollywood-online
|
22282 |
hollywoodonline
|
22283 |
+
holo coin
|
22284 |
+
holo yorum
|
22285 |
+
holo-coin
|
22286 |
+
holo-yorum
|
22287 |
+
holocoin
|
22288 |
+
holoyorum
|
22289 |
home online
|
22290 |
home-based
|
22291 |
home-loan
|
22348 |
hoodiecheap
|
22349 |
hoody-cheap
|
22350 |
hoodycheap
|
22351 |
+
hookup now
|
22352 |
+
hookup-now
|
22353 |
hookup0
|
22354 |
hookup1
|
22355 |
hookup2
|
22360 |
hookup7
|
22361 |
hookup8
|
22362 |
hookup9
|
22363 |
+
hookupnow
|
22364 |
hoolgain
|
22365 |
hoolz
|
22366 |
+
hoop|hoop
|
22367 |
hootel
|
22368 |
hoow is
|
22369 |
hop dong kinh
|
22376 |
hormonio-masculin
|
22377 |
horoscopes
|
22378 |
horoskop
|
22379 |
+
horrible credit
|
22380 |
+
horrible-credit
|
22381 |
horsesimul
|
22382 |
host seller
|
22383 |
host-file
|
22502 |
houseforsale
|
22503 |
housesforsale
|
22504 |
housing final even
|
22505 |
+
houur
|
22506 |
hover-glide
|
22507 |
hover-shop
|
22508 |
hoverboard 360
|
22549 |
how would certain
|
22550 |
how_do
|
22551 |
howdy just wanted
|
22552 |
+
howdy superb
|
22553 |
+
howdy-superb
|
22554 |
however before
|
22555 |
however good topic
|
22556 |
however great topic
|
22613 |
httpshttp
|
22614 |
httpswww
|
22615 |
httpwww
|
22616 |
+
huawei yeni
|
22617 |
+
huawei-yeni
|
22618 |
huay-today
|
22619 |
huaytoday
|
22620 |
huge 100%
|
22657 |
hut,hang
|
22658 |
hut.hang
|
22659 |
hyclate
|
22660 |
+
hydra club
|
22661 |
+
hydra onion
|
22662 |
+
hydra rus
|
22663 |
+
hydra ruz
|
22664 |
+
hydra-club
|
22665 |
+
hydra-onion
|
22666 |
+
hydra-rus
|
22667 |
+
hydra-ruz
|
22668 |
+
hydraclub
|
22669 |
+
hydraonion
|
22670 |
+
hydrarus
|
22671 |
+
hydraruz
|
22672 |
hydrocodone
|
22673 |
hydroponicsys
|
22674 |
hydroxatone
|
22720 |
i'd hump to
|
22721 |
i'll bookmark and
|
22722 |
i'm bookmarking and
|
22723 |
+
i'm horny
|
22724 |
i'm will soon
|
22725 |
i'mnot
|
22726 |
i'v got
|
22730 |
i’d hump to
|
22731 |
i’ll bookmark and
|
22732 |
i’m bookmarking and
|
22733 |
+
i’m horny
|
22734 |
i’m will soon
|
22735 |
i’mn
|
22736 |
i’ts
|
22743 |
iamimport
|
22744 |
icon/set
|
22745 |
icons/set
|
22746 |
+
icracks.
|
22747 |
idanmark
|
22748 |
idea for your blog
|
22749 |
idea for your page
|
22765 |
idm crack
|
22766 |
idm-crack
|
22767 |
idmcrack
|
22768 |
+
if depression gets
|
22769 |
if like it
|
22770 |
if you're.
|
22771 |
if you’re.
|
22814 |
illusion-origami
|
22815 |
im grateful
|
22816 |
im happy
|
22817 |
+
im horny
|
22818 |
im looking
|
22819 |
im not
|
22820 |
im please
|
22890 |
įmonių pardavimas
|
22891 |
imoniu-pardavimas
|
22892 |
impact knowledge of
|
22893 |
+
impending article
|
22894 |
+
impending blog
|
22895 |
+
impending page
|
22896 |
+
impending post
|
22897 |
+
impending site
|
22898 |
+
impending web
|
22899 |
implanty
|
22900 |
impoirtant
|
22901 |
imporrtant
|
22903 |
import games off
|
22904 |
important be know
|
22905 |
important infos
|
|
|
22906 |
important-in-2020
|
22907 |
important-in-2021
|
22908 |
+
important-in-2022
|
22909 |
important-infos
|
22910 |
impregnacji
|
22911 |
impressive article
|
22937 |
imptortant
|
22938 |
imqge
|
22939 |
imtmdiae
|
22940 |
+
in a a lot
|
22941 |
in a ll
|
22942 |
in blog commenting
|
22943 |
in delicious
|
23071 |
individual friendly
|
23072 |
individual pleasant
|
23073 |
individual stuffs
|
23074 |
+
individual their
|
23075 |
individual-friendly
|
23076 |
individual-pleasant
|
23077 |
individual-stuffs
|
23078 |
+
individuals their
|
23079 |
indo blackjack
|
23080 |
indo casino
|
23081 |
indo-blackjack
|
23084 |
indocasino
|
23085 |
indonesia blackjack
|
23086 |
indonesia casino
|
23087 |
+
indonesia slot
|
23088 |
indonesia-blackjack
|
23089 |
indonesia-casino
|
23090 |
+
indonesia-slot
|
23091 |
indonesiablackjack
|
23092 |
indonesiacasino
|
23093 |
+
indonesiaslot
|
23094 |
indownload
|
23095 |
indre pengemark
|
23096 |
indre-pengemark
|
23119 |
infected-crash
|
23120 |
infinity-2
|
23121 |
infinity2
|
23122 |
+
inflatable castle rent
|
23123 |
+
inflatable house rent
|
23124 |
+
inflatable-castle-rent
|
23125 |
+
inflatable-house-rent
|
23126 |
+
inflatablecastlerent
|
23127 |
+
inflatablehouserent
|
23128 |
influenza picture
|
23129 |
info ,
|
23130 |
info !
|
23132 |
info approximate
|
23133 |
info base
|
23134 |
info for my mission
|
23135 |
+
info is invaluable
|
23136 |
info is priceless
|
23137 |
info is worth
|
23138 |
info you
|
23150 |
info/tag
|
23151 |
info/user
|
23152 |
info/view
|
23153 |
+
info>>>
|
23154 |
info0.site
|
23155 |
info0site
|
23156 |
info1.site
|
23273 |
injection fact
|
23274 |
injection-fact
|
23275 |
injectionfact
|
23276 |
+
injuries attorn
|
23277 |
injuries insur
|
23278 |
injuries lawyer
|
23279 |
+
injuries-attorn
|
23280 |
injuries-insur
|
23281 |
injuries-lawyer
|
23282 |
+
injuriesattorn
|
23283 |
injuriesinsur
|
23284 |
injurieslawyer
|
23285 |
+
injury attorn
|
23286 |
injury lawyer
|
23287 |
+
injury-attorn
|
23288 |
injury-lawyer
|
23289 |
+
injuryattorn
|
23290 |
injurylawyer
|
23291 |
inn accordance
|
23292 |
inna cena
|
23327 |
insdier
|
23328 |
inseminacion artificial
|
23329 |
inseminacion-artificial
|
23330 |
+
insert my data
|
23331 |
+
insert your data
|
23332 |
inside an setting
|
23333 |
inside reputation
|
23334 |
inside-reputation
|
23354 |
insta sex
|
23355 |
insta-appraisal
|
23356 |
insta-cheat
|
23357 |
+
insta-fab
|
23358 |
insta-fuck
|
23359 |
insta-kink
|
23360 |
insta-sex
|
23373 |
instagram privado
|
23374 |
instagram private
|
23375 |
instagram shop
|
23376 |
+
instagram sifresiz
|
23377 |
+
instagram şifresiz
|
23378 |
instagram story view
|
23379 |
instagram takipci
|
23380 |
instagram takipçi
|
23389 |
instagram-privado
|
23390 |
instagram-private
|
23391 |
instagram-shop
|
23392 |
+
instagram-sifresiz
|
23393 |
instagram-story-view
|
23394 |
instagram-takipci
|
23395 |
instagram-trick
|
23414 |
instant cash
|
23415 |
instant loan
|
23416 |
instant pay
|
|
|
23417 |
instant traff
|
23418 |
instant web
|
23419 |
instant week
|
23422 |
instant-cash
|
23423 |
instant-loan
|
23424 |
instant-pay
|
|
|
23425 |
instant-traff
|
23426 |
instant-web
|
23427 |
instant-week
|
23550 |
internetmarket
|
23551 |
internetmosque
|
23552 |
internetowe
|
23553 |
+
internetowy
|
23554 |
internetpage
|
23555 |
internetparish
|
23556 |
internetpoker
|
23668 |
ios dapps
|
23669 |
ios spoof
|
23670 |
ios-spoof
|
23671 |
+
ip stresser
|
23672 |
+
ip-stresser
|
23673 |
ip.ideal
|
23674 |
ipad tablet
|
23675 |
ipad-1
|
23756 |
ipodsuppl
|
23757 |
iporn
|
23758 |
iprofit
|
23759 |
+
ipstresser
|
23760 |
+
ipsum decide
|
23761 |
ipアドレス
|
23762 |
iq option
|
23763 |
iq science
|
23778 |
irresistible-web
|
23779 |
is about advert
|
23780 |
is as nicely
|
23781 |
+
is consice
|
23782 |
is goping
|
23783 |
is great article
|
23784 |
is great blog
|
23789 |
is my page
|
23790 |
is my web
|
23791 |
is seo
|
23792 |
+
is some inspirational
|
23793 |
is thhe
|
23794 |
is-goping
|
23795 |
is-now-available
|
23814 |
isn”t
|
23815 |
isn`t
|
23816 |
isnít
|
|
|
23817 |
isotretinoine
|
23818 |
isseo
|
23819 |
issue with your site
|
23841 |
it duvet
|
23842 |
it for posting
|
23843 |
it for the post
|
23844 |
+
it isnt
|
23845 |
it oakley
|
23846 |
it ordeno
|
23847 |
it ordenó
|
23937 |
itt is
|
23938 |
itt was
|
23939 |
itzshipd
|
23940 |
+
ive been go
|
23941 |
iwant2
|
23942 |
iwc brand
|
23943 |
iwc-brand
|
23981 |
jackenonline
|
23982 |
jackenwest
|
23983 |
jackeonline
|
|
|
23984 |
jacket 2020
|
23985 |
jacket 2021
|
23986 |
+
jacket 2022
|
23987 |
jacket canad
|
23988 |
jacket jap
|
23989 |
jacket jp
|
23990 |
jacket out
|
23991 |
jacket sale
|
23992 |
jacket sunglass
|
|
|
23993 |
jacket-2020
|
23994 |
jacket-2021
|
23995 |
+
jacket-2022
|
23996 |
jacket-canad
|
23997 |
jacket-jap
|
23998 |
jacket-jp
|
23999 |
jacket-out
|
24000 |
jacket-sale
|
24001 |
jacket-sunglass
|
|
|
24002 |
jacket2020
|
24003 |
jacket2021
|
24004 |
+
jacket2022
|
24005 |
jacketcanad
|
24006 |
jacketout
|
|
|
24007 |
jackets 2020
|
24008 |
jackets 2021
|
24009 |
+
jackets 2022
|
24010 |
jackets jap
|
24011 |
jackets jp
|
24012 |
jackets out
|
24013 |
jackets sale
|
|
|
24014 |
jackets-2020
|
24015 |
jackets-2021
|
24016 |
+
jackets-2022
|
24017 |
jackets-for-kids
|
24018 |
jackets-for-men
|
24019 |
jackets-for-wom
|
24021 |
jackets-jp
|
24022 |
jackets-out
|
24023 |
jackets-sale
|
|
|
24024 |
jackets2020
|
24025 |
jackets2021
|
24026 |
+
jackets2022
|
24027 |
jacketsale
|
24028 |
jacketsforkids
|
24029 |
jacketsformen
|
24061 |
jacobsjp
|
24062 |
jacobspurse
|
24063 |
jacobsuk
|
24064 |
+
jadi maksimum
|
24065 |
jagody acai
|
24066 |
jagody-acai
|
24067 |
jagowho
|
24136 |
japonesa tatuage
|
24137 |
japonesa-tatuage
|
24138 |
japonesatatuage
|
24139 |
+
jasa pembuatan
|
24140 |
+
jasa-pembuatan
|
24141 |
jassen dames
|
24142 |
jassen neder
|
24143 |
jassen out
|
24147 |
jassendames
|
24148 |
jassenneder
|
24149 |
jassenout
|
24150 |
+
jayngarl
|
24151 |
jazz jers
|
24152 |
jazz-jers
|
24153 |
jazzjers
|
24315 |
job on the page
|
24316 |
job on the site
|
24317 |
job on the web
|
24318 |
+
job search engine
|
24319 |
+
job search site
|
24320 |
job usa
|
24321 |
job-mom
|
24322 |
+
job-search-engine
|
24323 |
+
job-search-site
|
24324 |
job-usa
|
24325 |
jobs mom
|
24326 |
jobs usa
|
24327 |
jobs-mom
|
24328 |
jobs-usa
|
24329 |
+
jobsearchengine
|
24330 |
+
jobsearchsite
|
24331 |
jogadore assiduos
|
24332 |
jogadore assíduos
|
24333 |
jogadore-assiduos
|
24355 |
jointpain
|
24356 |
jojobet
|
24357 |
joker casino
|
24358 |
+
joker gaming
|
24359 |
+
joker slot
|
24360 |
joker-123
|
24361 |
joker-casino
|
24362 |
+
joker-gaming
|
24363 |
+
joker-slot
|
24364 |
joker123
|
24365 |
jokercasino
|
24366 |
jokerfull
|
24367 |
+
jokerslot
|
24368 |
joma jewelery
|
24369 |
joma jewellery
|
24370 |
joma jewelry
|
24418 |
jordanbrand
|
24419 |
jordangamma
|
24420 |
jordangrise
|
24421 |
+
jordanian bookish
|
24422 |
jordankicks
|
24423 |
jordanmilan
|
24424 |
jordannoir
|
24482 |
juanjuan
|
24483 |
judi blackjack
|
24484 |
judi casino
|
24485 |
+
judi freebet
|
24486 |
judi online
|
24487 |
judi poker
|
24488 |
judi roulette
|
24489 |
+
judi slot
|
24490 |
judi-blackjack
|
24491 |
judi-casino
|
24492 |
+
judi-freebet
|
24493 |
judi-online
|
24494 |
judi-poker
|
24495 |
judi-roulette
|
24496 |
+
judi-slot
|
24497 |
judiblackjack
|
24498 |
judicasino
|
24499 |
judionline
|
24524 |
just cetirizine
|
24525 |
just like hypno
|
24526 |
just saying you
|
24527 |
+
just subscribe
|
24528 |
just wanna
|
24529 |
just-book-mark
|
24530 |
just-cetirizine
|
24531 |
+
just-subscribe
|
24532 |
just-wanna
|
24533 |
justcan do
|
24534 |
justcetirizine
|
24642 |
karuteie
|
24643 |
kasino
|
24644 |
kassino
|
24645 |
+
kasyno online
|
24646 |
+
kasyno-online
|
24647 |
kat.h.l.e.en
|
24648 |
kat.h.l.ee.n
|
24649 |
kat.h.l.een
|
24681 |
kawaiireview
|
24682 |
kawastrefa
|
24683 |
kazino
|
24684 |
+
keamanan data
|
24685 |
+
keamanan-data
|
24686 |
keen of read
|
24687 |
keep blogging!
|
24688 |
keep on blogging
|
24706 |
kensingtonparka
|
24707 |
keo nha cai
|
24708 |
kèo-bóng
|
24709 |
+
kepuasan konsumen
|
24710 |
kerja hotel
|
24711 |
kerja-hotel
|
24712 |
kerjahotel
|
24741 |
khẩu trang
|
24742 |
khau-trang
|
24743 |
khautrang
|
24744 |
+
khong web
|
24745 |
+
không web
|
24746 |
+
khong-web
|
24747 |
+
khongweb
|
24748 |
khttp
|
24749 |
khumbu north
|
24750 |
khumbu-north
|
24771 |
kidpantie
|
24772 |
kidpanty
|
24773 |
kids baby
|
24774 |
+
kids massage
|
24775 |
kids nike
|
24776 |
kids out
|
24777 |
kids ugg
|
24778 |
kids-baby
|
24779 |
+
kids-massage
|
24780 |
kids-nike
|
24781 |
kids-ugg
|
24782 |
kidsnike
|
24807 |
kindle-cash
|
24808 |
kindlecash
|
24809 |
king hack
|
24810 |
+
king pharm
|
24811 |
king slot
|
24812 |
king-hack
|
24813 |
+
king-pharm
|
24814 |
king-slot
|
24815 |
kinghack
|
24816 |
+
kingpharm
|
24817 |
kinh doanh
|
24818 |
kinh-doanh
|
24819 |
kinhdoanh
|
24947 |
kodekupon
|
24948 |
kolay bir web
|
24949 |
kolay-bir-web
|
24950 |
+
kolbex.pt
|
24951 |
kollagen intensiv
|
24952 |
kollagen-intensiv
|
24953 |
+
koltuk yikama
|
24954 |
+
koltuk yıkama
|
24955 |
+
koltuk-yikama
|
24956 |
kombat hack
|
24957 |
kombat x hack
|
24958 |
kombat-hack
|
24968 |
konforlu secenek
|
24969 |
konforlu seçenek
|
24970 |
konforlu-secenek
|
24971 |
+
kong izle
|
24972 |
+
kong-izle
|
24973 |
konkurs
|
24974 |
konopiami indyjskimi
|
24975 |
konopiami-indyjskimi
|
24997 |
koop-dsqu
|
24998 |
koopdsqu
|
24999 |
koopsted
|
25000 |
+
kop steroid
|
25001 |
+
köp steroid
|
25002 |
+
kop-steroid
|
25003 |
kope jassen
|
25004 |
kope-jassen
|
25005 |
kopejassen
|
25006 |
+
kopen growshop
|
25007 |
+
kopen-growshop
|
25008 |
kopfhoerer
|
25009 |
kopia-zapasowa
|
25010 |
kor out
|
25124 |
kreddit
|
25125 |
kreddyt
|
25126 |
kreddyyt
|
25127 |
+
kredi yonetim
|
25128 |
+
kredi yönetim
|
25129 |
+
kredi-yonetim
|
25130 |
kredit
|
25131 |
+
krediyonetim
|
25132 |
kredyt
|
25133 |
kredyyt
|
25134 |
+
kripto borsasi
|
25135 |
+
kripto egitim
|
25136 |
+
kripto eğitim
|
25137 |
+
kripto para
|
25138 |
+
kripto-borsasi
|
25139 |
+
kripto-egitim
|
25140 |
+
kripto-para
|
25141 |
+
kriptopara
|
25142 |
kristi longchamp
|
25143 |
kristi-longchamp
|
25144 |
kristilongchamp
|
25145 |
krossoverov
|
25146 |
ku42.
|
25147 |
+
kuat termurah
|
25148 |
+
kuat-termurah
|
25149 |
+
kuattermurah
|
25150 |
kugelbahn
|
25151 |
kult und genuss
|
25152 |
kulturtasche habe
|
25170 |
kurs-yevro
|
25171 |
kurta online
|
25172 |
kurta-online
|
25173 |
+
kurumsal web
|
25174 |
+
kurumsal-web
|
25175 |
kussin hartmann
|
25176 |
kussin-hartmann
|
25177 |
kussinhartmann
|
25269 |
landingpage
|
25270 |
landslagstroja
|
25271 |
landslagströja
|
25272 |
+
lang crypto
|
25273 |
+
lang-crypto
|
25274 |
lap lap
|
25275 |
lap-lap
|
25276 |
laplap
|
25407 |
laurentsandal
|
25408 |
laurenuk
|
25409 |
lavado de dinero
|
25410 |
+
law run from
|
25411 |
lawful page
|
25412 |
lawful-page
|
25413 |
lawoffice.net
|
25427 |
layout look great
|
25428 |
layout of your blog
|
25429 |
layout of your page
|
25430 |
+
layout of your site
|
25431 |
+
layout of your web
|
25432 |
layout-look-great
|
25433 |
layout...?
|
25434 |
lɑ
|
25449 |
leagle porn
|
25450 |
leagle-porn
|
25451 |
leaked1
|
|
|
25452 |
leaks-2020
|
25453 |
leaks-2021
|
25454 |
+
leaks-2022
|
25455 |
learn about keto
|
25456 |
learn about this blog
|
25457 |
learn about this issue
|
25473 |
learn+health
|
25474 |
learnface
|
25475 |
learnhelp
|
25476 |
+
learning speaking
|
25477 |
learningxchange
|
25478 |
learnpain
|
25479 |
learnpianohere
|
25490 |
lebron-shoe
|
25491 |
lebronshoe
|
25492 |
lebronxshoe
|
25493 |
+
lechenie narkomani
|
25494 |
+
lechenie-narkomani
|
25495 |
lechit narkomaniy
|
25496 |
lechit-narkomaniy
|
25497 |
led thumb
|
25508 |
legal cash
|
25509 |
legal hack
|
25510 |
legal kratom
|
25511 |
+
legal leaf offer
|
25512 |
legal porn
|
25513 |
+
legal sport
|
25514 |
legal steroid
|
25515 |
+
legal thc product
|
25516 |
legal-bud
|
25517 |
legal-cash
|
25518 |
legal-hack
|
25519 |
legal-kratom
|
25520 |
+
legal-leaf-offer
|
25521 |
legal-porn
|
25522 |
+
legal-sport
|
25523 |
legal-steroid
|
25524 |
+
legal-thc-product
|
25525 |
legalbud
|
25526 |
legalcash
|
25527 |
legalhack
|
25528 |
+
legalized sport
|
25529 |
+
legalized-sport
|
25530 |
+
legalsport
|
25531 |
legalsteroid
|
25532 |
legend hack
|
25533 |
legend-hack
|
25551 |
legit pharm
|
25552 |
legit script
|
25553 |
legit way
|
|
|
25554 |
legit-2020
|
25555 |
legit-2021
|
25556 |
+
legit-2022
|
25557 |
legit-drug
|
25558 |
legit-graph
|
25559 |
legit-pharm
|
25560 |
legit-script
|
25561 |
legit-way
|
|
|
25562 |
legit2020
|
25563 |
legit2021
|
25564 |
+
legit2022
|
25565 |
legitdrug
|
25566 |
legitgraph
|
25567 |
legitimate drug
|
25661 |
level market
|
25662 |
level-50
|
25663 |
level-market
|
25664 |
+
levelbusiness
|
25665 |
levelmarket
|
25666 |
levels dissertation
|
25667 |
levels-dissertation
|
25693 |
librarys.jsp
|
25694 |
librarys.php
|
25695 |
librium
|
25696 |
+
license key cheap
|
25697 |
+
license key free
|
25698 |
+
license-key-cheap
|
25699 |
+
license-key-free
|
25700 |
licensed appliance
|
25701 |
licensed-appliance
|
25702 |
licenzija
|
25705 |
lid-pants
|
25706 |
lies sound truth
|
25707 |
life sex
|
25708 |
+
life teaching
|
25709 |
life-sex
|
25710 |
+
life-teaching
|
25711 |
life.acne
|
25712 |
life.cert
|
25713 |
lifeinsur
|
25728 |
ligne médicament
|
25729 |
ligne-medicament
|
25730 |
ligne-médicament
|
25731 |
+
ligopartner
|
25732 |
liht therap
|
25733 |
liht-therap
|
25734 |
like & share
|
25748 |
like your blog
|
25749 |
like your video
|
25750 |
like your web
|
25751 |
+
liked your blog
|
25752 |
likes on facebook
|
25753 |
likes on instagram
|
25754 |
likes on snapchat
|
25768 |
liliporno
|
25769 |
limit hold'em
|
25770 |
limit hold’em
|
25771 |
+
limited free gem
|
25772 |
limited jers
|
25773 |
+
limited-free-gem
|
25774 |
limited-japan
|
25775 |
limited-jers
|
25776 |
limited-jp
|
25793 |
link change arrange
|
25794 |
link competence
|
25795 |
link creati
|
25796 |
+
link dapatkan
|
25797 |
link directory
|
25798 |
link download
|
25799 |
link exchang
|
25800 |
link issue
|
25801 |
link juice
|
25802 |
+
link logger
|
25803 |
link market
|
25804 |
link pyramid
|
25805 |
link redirect
|
25813 |
link to your online
|
25814 |
link track
|
25815 |
link vault
|
25816 |
+
link_go
|
25817 |
link-bait
|
25818 |
link-build
|
25819 |
link-camp
|
25820 |
link-click
|
25821 |
link-competence
|
25822 |
link-creati
|
25823 |
+
link-dapatkan
|
25824 |
link-directory
|
25825 |
link-download
|
25826 |
link-exchang
|
25827 |
+
link-go
|
25828 |
link-issue
|
25829 |
link-juice
|
25830 |
+
link-logger
|
25831 |
link-market
|
25832 |
link-pyramid
|
25833 |
link-redirect
|
25846 |
linkcamp
|
25847 |
linkclick
|
25848 |
linkdirect
|
25849 |
+
linkedin0
|
25850 |
+
linkedin1
|
25851 |
+
linkedin2
|
25852 |
+
linkedin3
|
25853 |
+
linkedin4
|
25854 |
+
linkedin5
|
25855 |
+
linkedin6
|
25856 |
+
linkedin7
|
25857 |
+
linkedin8
|
25858 |
+
linkedin9
|
25859 |
linkexchang
|
25860 |
linking camp
|
25861 |
linking issue
|
25872 |
linkissue
|
25873 |
linkjuice
|
25874 |
linklegend
|
25875 |
+
linklogger
|
25876 |
linkman
|
25877 |
linkmarket
|
25878 |
linkpyramid
|
25906 |
lip-filler
|
25907 |
lipi=urn
|
25908 |
lipitor
|
25909 |
+
liqulr
|
25910 |
lirtle effort
|
25911 |
lisinopril
|
25912 |
lisseur-pascher
|
25921 |
listen-news
|
25922 |
listen-to-youtube
|
25923 |
listentoyoutube
|
25924 |
+
listing from google
|
25925 |
listy,
|
25926 |
lite/wbb
|
25927 |
lite1/wbb
|
25953 |
livesex
|
25954 |
livesmale
|
25955 |
living by google
|
25956 |
+
living pores
|
25957 |
+
living-pores
|
25958 |
+
livingpores
|
25959 |
+
livingsocial discount
|
25960 |
livro advert
|
25961 |
livro marketing
|
25962 |
livro-advert
|
25993 |
loan fast
|
25994 |
loan lender
|
25995 |
loan online
|
25996 |
+
loan payday
|
25997 |
loan-canad
|
25998 |
loan-cash
|
25999 |
loan-comp
|
26001 |
loan-fast
|
26002 |
loan-lender
|
26003 |
loan-online
|
26004 |
+
loan-payday
|
26005 |
loan.bid
|
26006 |
loan.co
|
26007 |
loan.in
|
26008 |
loan.net
|
26009 |
+
loan|
|
26010 |
loanalys
|
26011 |
loancash
|
26012 |
loancomp
|
26014 |
loanfast
|
26015 |
loanlender
|
26016 |
loanonline
|
26017 |
+
loanpayday
|
26018 |
loans canad
|
26019 |
loans compan
|
26020 |
loans fast
|
26021 |
loans online
|
26022 |
+
loans payday
|
26023 |
loans-canad
|
26024 |
loans-compan
|
26025 |
loans-direct
|
26026 |
loans-fast
|
26027 |
loans-online
|
26028 |
+
loans-payday
|
26029 |
loans.co
|
26030 |
loans.in
|
26031 |
loans.net
|
26032 |
loans.xyz
|
26033 |
+
loans|
|
26034 |
loans1
|
26035 |
loans2
|
26036 |
loans3
|
26040 |
loansdirect
|
26041 |
loansfast
|
26042 |
loansonline
|
26043 |
+
loanspayday
|
26044 |
locate-cell-phone
|
26045 |
locatecellphone
|
26046 |
lociraj
|
26055 |
log/?
|
26056 |
logcabins
|
26057 |
login uk
|
26058 |
+
login wap
|
26059 |
login widget
|
26060 |
login-uk
|
26061 |
+
login-wap
|
26062 |
login-widget
|
26063 |
login.asp
|
26064 |
login.cfm
|
26133 |
long-lasting-duration
|
26134 |
long-penis
|
26135 |
longafter
|
|
|
26136 |
longchamp 2020
|
26137 |
longchamp 2021
|
26138 |
+
longchamp 2022
|
26139 |
longchamp aus
|
26140 |
longchamp bag
|
26141 |
longchamp doctor
|
26158 |
longchamp uk
|
26159 |
longchamp yama
|
26160 |
longchamp_
|
|
|
26161 |
longchamp-2020
|
26162 |
longchamp-2021
|
26163 |
+
longchamp-2022
|
26164 |
longchamp-aus
|
26165 |
longchamp-doctor
|
26166 |
longchamp-fabric
|
26187 |
longchamp.htm
|
26188 |
longchamp.jsp
|
26189 |
longchamp.php
|
|
|
26190 |
longchamp2020
|
26191 |
longchamp2021
|
26192 |
+
longchamp2022
|
26193 |
longchampaus
|
26194 |
longchampbag
|
26195 |
longchampdoctor
|
26244 |
look more page
|
26245 |
look more post
|
26246 |
look more web
|
26247 |
+
look my new
|
26248 |
look on-line
|
26249 |
look paying homage
|
26250 |
look your article
|
26288 |
los-replic
|
26289 |
lose at casino
|
26290 |
lose belly fat
|
26291 |
+
lose virginity
|
26292 |
lose weight motivat
|
26293 |
lose weight simply
|
26294 |
lose-belly-fat
|
26295 |
+
lose-virginity
|
26296 |
lose-weight
|
26297 |
losers beat
|
26298 |
losers outnumbered
|
26300 |
losers-outnumbered
|
26301 |
loseweight
|
26302 |
losing maany
|
26303 |
+
losing virginity
|
26304 |
+
losing-virginity
|
26305 |
losreplic
|
26306 |
loss weight
|
26307 |
loss-weight
|
26341 |
lottie maxi
|
26342 |
lottie-maxi
|
26343 |
lottiemaxi
|
26344 |
+
lotto power
|
26345 |
+
lotto_
|
26346 |
+
lotto-power
|
26347 |
lotto-tip
|
26348 |
+
lottopower
|
26349 |
lottotip
|
26350 |
loubiton
|
26351 |
louboutin bianca
|
26420 |
louisvuit.
|
26421 |
louisvuitton
|
26422 |
louiswuitton
|
26423 |
+
lova begravning
|
26424 |
+
lova-begravning
|
26425 |
+
lovabegravning
|
26426 |
love (:
|
26427 |
+
love =)
|
26428 |
love connect
|
26429 |
love cougar
|
26430 |
love perfect
|
26508 |
lpgn-laminin
|
26509 |
lpgn-moldova
|
26510 |
lpgn-product
|
26511 |
+
ltd. electric
|
26512 |
ltongealp
|
26513 |
ltonser
|
26514 |
lub cbd
|
26518 |
luck jers
|
26519 |
luck-jers
|
26520 |
luckjers
|
26521 |
+
lucky me i found
|
26522 |
lucky patcher
|
26523 |
lucky-patcher
|
26524 |
luckypatcher
|
26612 |
lvreplic
|
26613 |
lvsale
|
26614 |
lvuk
|
26615 |
+
lyrica for
|
26616 |
+
lyrica price
|
26617 |
+
lyrica-for
|
26618 |
+
lyrica-price
|
26619 |
lyrica.to
|
26620 |
lyrica4u
|
26621 |
+
lyricafor
|
26622 |
+
lyricaprice
|
26623 |
lⲟ
|
26624 |
lі
|
26625 |
lо
|
26693 |
magicmoncler
|
26694 |
magister kesehatan
|
26695 |
magister-kesehatan
|
26696 |
+
magnetic marketing
|
26697 |
+
magnetic-marketing
|
26698 |
+
magneticmarketing
|
26699 |
magnificent article
|
26700 |
magnificent blog
|
26701 |
magnificent good
|
26810 |
make blogging
|
26811 |
make comment due
|
26812 |
make csgo
|
26813 |
+
make good job
|
26814 |
make good using
|
26815 |
make hemp
|
26816 |
make may stay
|
26981 |
many extra popular
|
26982 |
many-utilizes
|
26983 |
manyy
|
26984 |
+
mapovych aplikaci
|
26985 |
+
mapovych-aplikaci
|
26986 |
maqnage
|
26987 |
maquiagem para
|
26988 |
maquiagem profes
|
27023 |
mariages simplif
|
27024 |
mariages-simplif
|
27025 |
marihuana
|
27026 |
+
marijuana attorn
|
27027 |
marijuana bene
|
27028 |
marijuana etf
|
27029 |
marijuana fact
|
27030 |
marijuana lawyer
|
27031 |
marijuana sample
|
27032 |
marijuana strain
|
27033 |
+
marijuana-attorn
|
27034 |
marijuana-bene
|
27035 |
marijuana-etf
|
27036 |
marijuana-fact
|
27073 |
market-xchange
|
27074 |
market.financ
|
27075 |
marketexchang
|
27076 |
+
marketing agency
|
27077 |
marketing blog
|
27078 |
marketing book
|
27079 |
marketing digital
|
27080 |
+
marketing effort
|
27081 |
marketing exchang
|
27082 |
marketing funnel
|
27083 |
marketing hero
|
27084 |
+
marketing letter
|
27085 |
marketing mark
|
27086 |
marketing monst
|
27087 |
marketing online
|
27088 |
marketing platform
|
27089 |
marketing prof
|
27090 |
marketing samu
|
27091 |
+
marketing search
|
27092 |
marketing service
|
27093 |
marketing software
|
27094 |
marketing specialist
|
27095 |
+
marketing strategy
|
27096 |
marketing tip
|
27097 |
marketing video clip
|
27098 |
marketing with social
|
27099 |
marketing with video
|
27100 |
marketing xchange
|
27101 |
marketing-advert
|
27102 |
+
marketing-agency
|
27103 |
marketing-and-advert
|
27104 |
marketing-approach
|
27105 |
marketing-blog
|
27106 |
marketing-book
|
27107 |
marketing-digital
|
27108 |
+
marketing-effort
|
27109 |
marketing-exchang
|
27110 |
marketing-funnel
|
27111 |
marketing-hero
|
27112 |
+
marketing-letter
|
27113 |
marketing-mark
|
27114 |
marketing-mix
|
27115 |
marketing-monst
|
27117 |
marketing-platform
|
27118 |
marketing-prof
|
27119 |
marketing-samu
|
27120 |
+
marketing-search
|
27121 |
marketing-service
|
27122 |
marketing-software
|
27123 |
marketing-specialist
|
27124 |
+
marketing-strategy
|
27125 |
marketing-tip
|
27126 |
marketing-video-clip
|
27127 |
marketing-xchange
|
27136 |
marketingplatform
|
27137 |
marketingprof
|
27138 |
marketingsamu
|
27139 |
+
marketingsearch
|
27140 |
marketingservice
|
27141 |
marketingtip
|
27142 |
marketingxchange
|
27210 |
massage erotic
|
27211 |
massage massage
|
27212 |
massage velvet
|
|
|
27213 |
massage-close
|
27214 |
massage-envy
|
27215 |
massage-erotic
|
27276 |
mastery-series
|
27277 |
mastery-since
|
27278 |
mastery-under
|
27279 |
+
masturbate her
|
27280 |
+
masturbate him
|
27281 |
+
masturbate the
|
27282 |
+
masturbate-her
|
27283 |
+
masturbate-him
|
27284 |
+
masturbate-the
|
27285 |
+
masturbates her
|
27286 |
+
masturbates him
|
27287 |
+
masturbates the
|
27288 |
+
masturbates-her
|
27289 |
+
masturbates-him
|
27290 |
+
masturbates-the
|
27291 |
+
masturbating her
|
27292 |
+
masturbating him
|
27293 |
+
masturbating the
|
27294 |
+
masturbating-her
|
27295 |
+
masturbating-him
|
27296 |
+
masturbating-the
|
27297 |
mat luoi
|
27298 |
mặt lưỡi
|
27299 |
mat-luoi
|
27309 |
material-stylish
|
27310 |
material, regards
|
27311 |
matiion
|
27312 |
+
matka gambl
|
27313 |
+
matka online
|
27314 |
+
matka play
|
27315 |
+
matka-gambl
|
27316 |
+
matka-online
|
27317 |
+
matka-play
|
27318 |
+
matkaonline
|
27319 |
+
matkaplay
|
27320 |
matluoi
|
27321 |
matters on the web
|
27322 |
matthews jers
|
27324 |
matthewsjers
|
27325 |
mattress clothes
|
27326 |
matural
|
27327 |
+
maverick movie
|
27328 |
+
maverick-movie
|
27329 |
+
maverickmovie
|
27330 |
max griffey
|
27331 |
max sale
|
27332 |
max-griffey
|
27560 |
medias-sociaux
|
27561 |
medical marijuana
|
27562 |
medical-marijuana
|
27563 |
+
medicament info
|
27564 |
+
medicament-info
|
27565 |
medicarefraud
|
27566 |
medicinez
|
27567 |
medicinz
|
27649 |
meja casino
|
27650 |
meja-casino
|
27651 |
mejacasino
|
27652 |
+
mejor calidad
|
27653 |
+
mejor credito
|
27654 |
+
mejor crédito
|
27655 |
+
mejor prestamo
|
27656 |
+
mejor préstamo
|
27657 |
mejor servicio
|
27658 |
+
mejor-calidad
|
27659 |
+
mejor-credito
|
27660 |
+
mejor-prestamo
|
27661 |
mejor-servicio
|
27662 |
+
mejorcredito
|
27663 |
mejores booster
|
27664 |
+
mejores credito
|
27665 |
+
mejores crédito
|
27666 |
+
mejores prestamo
|
27667 |
+
mejores préstamo
|
27668 |
mejores-booster
|
27669 |
+
mejores-credito
|
27670 |
+
mejores-prestamo
|
27671 |
+
mejorescredito
|
27672 |
+
mejoresprestamo
|
27673 |
+
mejorprestamo
|
27674 |
melatonin
|
27675 |
melhor preco
|
27676 |
melhor preço
|
27712 |
membership.jsp
|
27713 |
membership.php
|
27714 |
membershiphack
|
27715 |
+
membuka link ini
|
27716 |
memerangi keragu
|
27717 |
memerangi-keragu
|
27718 |
+
memevioro
|
27719 |
memoria javit
|
27720 |
memória javit
|
27721 |
memoria teszt
|
27764 |
men's timber
|
27765 |
men’s timber
|
27766 |
men+
|
27767 |
+
menang on line
|
27768 |
+
menang online
|
27769 |
+
menang-on-line
|
27770 |
+
menang-online
|
27771 |
menbarbour
|
27772 |
menboost
|
27773 |
mencheap
|
27844 |
mercedes-vip
|
27845 |
mercedesvip
|
27846 |
mercenary.co
|
|
|
27847 |
mercurial 2020
|
27848 |
mercurial 2021
|
27849 |
+
mercurial 2022
|
27850 |
mercurial vapo
|
|
|
27851 |
mercurial-2020
|
27852 |
mercurial-2021
|
27853 |
+
mercurial-2022
|
27854 |
mercurial-vapo
|
|
|
27855 |
mercurial2020
|
27856 |
mercurial2021
|
27857 |
+
mercurial2022
|
27858 |
mercurialvapo
|
27859 |
merely extremely
|
27860 |
merely wanna
|
27865 |
meridia
|
27866 |
mes hormone
|
27867 |
mes-hormone
|
27868 |
+
mesin slot
|
27869 |
+
mesin-slot
|
27870 |
message all around
|
27871 |
message erotic
|
27872 |
message the agency
|
27909 |
metronidazole
|
27910 |
metrostar
|
27911 |
meu teor send
|
27912 |
+
mezzanine finance
|
27913 |
+
mezzanine-finance
|
27914 |
mezzo louis
|
27915 |
mezzo-louis
|
27916 |
mezzolouis
|
27969 |
mild activ
|
27970 |
mild-activ
|
27971 |
milendress
|
27972 |
+
milf nipple
|
27973 |
+
milf porn
|
27974 |
milf_
|
27975 |
+
milf-nipple
|
27976 |
+
milf-porn
|
27977 |
+
milfnipple
|
27978 |
+
milfporn
|
27979 |
milfs_
|
27980 |
+
militari costume
|
27981 |
+
militari-costume
|
27982 |
+
military costume
|
27983 |
military friendly
|
27984 |
military vacation
|
27985 |
+
military-costume
|
27986 |
military-friendly
|
27987 |
military-vacation
|
27988 |
militaryfriendly
|
28072 |
mirror femme
|
28073 |
mirror-femme
|
28074 |
mirrorfemme
|
28075 |
+
mishapen
|
28076 |
miss hookup
|
28077 |
miss-hookup
|
28078 |
missed hookup
|
28152 |
mlsp-suit
|
28153 |
mlspweapon
|
28154 |
mmcenter.in
|
28155 |
+
mmm i really
|
28156 |
mmy blog
|
28157 |
mmy page
|
28158 |
mmy web
|
28245 |
moncle-site
|
28246 |
moncle-sito
|
28247 |
monclear
|
|
|
28248 |
moncler 2020
|
28249 |
moncler 2021
|
28250 |
+
moncler 2022
|
28251 |
moncler amster
|
28252 |
moncler andorra
|
28253 |
moncler barata
|
28302 |
moncler weste
|
28303 |
moncler westen
|
28304 |
moncler--
|
|
|
28305 |
moncler-2020
|
28306 |
moncler-2021
|
28307 |
+
moncler-2022
|
28308 |
moncler-amster
|
28309 |
moncler-andorra
|
28310 |
moncler-barata
|
28366 |
moncler.jsp
|
28367 |
moncler.php
|
28368 |
moncler`
|
|
|
28369 |
moncler2020
|
28370 |
moncler2021
|
28371 |
+
moncler2022
|
28372 |
moncleramster
|
28373 |
monclerandorra
|
28374 |
monclerbarata
|
28436 |
monetize you
|
28437 |
monetize-you
|
28438 |
money adder
|
28439 |
+
money bonus
|
28440 |
money buzz
|
28441 |
money fast
|
28442 |
money generat
|
28443 |
+
money malaysia
|
28444 |
money man uga
|
28445 |
money now loan
|
28446 |
money online
|
28449 |
money robot
|
28450 |
money vault
|
28451 |
money-adder
|
28452 |
+
money-bonus
|
28453 |
money-buzz
|
28454 |
money-fast
|
28455 |
money-game
|
28457 |
money-illusion
|
28458 |
money-loan
|
28459 |
money-mak
|
28460 |
+
money-malaysia
|
28461 |
money-now-loan
|
28462 |
money-online
|
28463 |
money-phone
|
28473 |
money.htm
|
28474 |
money.jsp
|
28475 |
money.php
|
28476 |
+
moneybonus
|
28477 |
moneybuzz
|
28478 |
moneyfast
|
28479 |
moneygame
|
28480 |
moneygenerat
|
28481 |
moneyillusion
|
28482 |
+
moneyline bet
|
28483 |
moneyloan
|
28484 |
moneymak
|
28485 |
moneyonline
|
28588 |
more clash of
|
28589 |
more effective!
|
28590 |
more eventually
|
28591 |
+
more message here
|
28592 |
more of your article
|
28593 |
more of your blog
|
28594 |
more of your post
|
28604 |
more-eventually
|
28605 |
more-lv
|
28606 |
more-smartly
|
28607 |
+
more>>>
|
28608 |
morelv
|
28609 |
morpg
|
28610 |
morre about
|
28645 |
motivation-book
|
28646 |
motor whole
|
28647 |
motor-whole
|
28648 |
+
motorhome cabinet
|
28649 |
+
motorhome lighting
|
28650 |
+
motorhome mechanic
|
28651 |
+
motorhome upgrade
|
28652 |
+
motorhome windshield
|
28653 |
+
motorhome-cabinet
|
28654 |
+
motorhome-lighting
|
28655 |
+
motorhome-mechanic
|
28656 |
+
motorhome-upgrade
|
28657 |
+
motorhome-windshield
|
28658 |
mount sex
|
28659 |
mount-sex
|
28660 |
mountsex
|
28667 |
movementpart
|
28668 |
mover los angeles
|
28669 |
movers los angeles
|
28670 |
+
movi.co
|
28671 |
movie are general
|
28672 |
movie full
|
28673 |
movie game play
|
28765 |
much-important
|
28766 |
much-utile
|
28767 |
muchgucci
|
28768 |
+
mucho mas articulo
|
28769 |
mucho tu post
|
28770 |
mudah beli
|
28771 |
mudah-beli
|
28775 |
muhammad-christ
|
28776 |
muhammadchrist
|
28777 |
muhst say
|
28778 |
+
muita artigo
|
28779 |
+
muita postagem
|
28780 |
+
muita-artigo
|
28781 |
+
muita-postagem
|
28782 |
mujer timberland
|
28783 |
mujer-timberland
|
28784 |
mujeres solteras
|
28896 |
my apple macbook
|
28897 |
my bebo
|
28898 |
my bitcoin
|
|
|
|
|
|
|
28899 |
my blg ;
|
28900 |
my blg :
|
28901 |
my blg;
|
28902 |
my blg:
|
28903 |
my blo look
|
|
|
|
|
|
|
28904 |
my blog ;
|
28905 |
my blog :
|
28906 |
+
my blog ..
|
28907 |
my blog …
|
28908 |
my blog audience
|
28909 |
my blog fer
|
28917 |
my blog..
|
28918 |
my blog…
|
28919 |
my blopg
|
|
|
|
|
|
|
28920 |
my boog ;
|
28921 |
my boog :
|
28922 |
my boog ..
|
28946 |
my own blog
|
28947 |
my own web
|
28948 |
my paage
|
28949 |
+
my page ;
|
28950 |
+
my page :
|
|
|
28951 |
my page ..
|
28952 |
my page …
|
28953 |
my page 24
|
28962 |
my pagge
|
28963 |
my personal own
|
28964 |
my ppage
|
28965 |
+
my profile link
|
28966 |
my pzge
|
28967 |
my sikte
|
28968 |
my site ;
|
28972 |
my site looks
|
28973 |
my site read
|
28974 |
my site rolnic
|
28975 |
+
my site too
|
28976 |
my site trek
|
28977 |
my site;
|
28978 |
my site:
|
28979 |
my site..
|
28980 |
my site…
|
28981 |
my sitee
|
|
|
|
|
|
|
28982 |
my sitte ;
|
28983 |
my sitte :
|
28984 |
my sitte ..
|
28988 |
my sitte:
|
28989 |
my sitte..
|
28990 |
my sitte…
|
28991 |
+
my sjte
|
28992 |
my social networks
|
28993 |
my ssite
|
28994 |
my vape
|
28996 |
my wallet is
|
28997 |
my wblg
|
28998 |
my wblog
|
28999 |
+
my web ;
|
29000 |
+
my web :
|
|
|
29001 |
my web ..
|
29002 |
my web …
|
29003 |
my web blog
|
29013 |
my web…
|
29014 |
my webb
|
29015 |
my weblg
|
29016 |
+
my weblog ;
|
29017 |
+
my weblog :
|
29018 |
+
my weblog ..
|
29019 |
+
my weblog …
|
29020 |
my weblog goes
|
29021 |
my weblog read
|
29022 |
my weblog trek
|
29023 |
my webpage
|
29024 |
+
my website ;
|
29025 |
+
my website :
|
29026 |
+
my website ..
|
29027 |
my website …
|
29028 |
my website goes
|
29029 |
my website read
|
29053 |
my-my
|
29054 |
my-new-ip
|
29055 |
my-online
|
29056 |
+
my-promo
|
29057 |
my-pzge
|
29058 |
my-sitte
|
29059 |
my-ssite
|
29096 |
mynocine-sans
|
29097 |
myonline
|
29098 |
myowndomain
|
29099 |
+
mypromo
|
29100 |
myqrop
|
29101 |
myresume
|
29102 |
myreview.co
|
29209 |
nam-nữ
|
29210 |
namacalnie zalega
|
29211 |
namacalnie-zalega
|
29212 |
+
name of lorem
|
29213 |
name on yolo
|
29214 |
name-brand
|
29215 |
name-on-yolo
|
29228 |
nanogold
|
29229 |
naproxen
|
29230 |
narkologicheskaya
|
29231 |
+
narkotikamissbruk
|
29232 |
naruto hottest
|
29233 |
naruto-hottest
|
29234 |
nashivki leibly
|
29314 |
ñç
|
29315 |
nce nce
|
29316 |
near near
|
29317 |
+
near_me
|
29318 |
+
nearby rv
|
29319 |
nearly like a clean
|
29320 |
neat article
|
29321 |
neat blog
|
29331 |
neat-web
|
29332 |
neatarticle
|
29333 |
neatblog
|
29334 |
+
neathfull
|
29335 |
neatly favor
|
29336 |
neatly favour
|
29337 |
neatly preferred
|
29349 |
need bytecoin
|
29350 |
need litecoin
|
29351 |
need sex
|
29352 |
+
need to strategy
|
29353 |
need wondrous
|
29354 |
need-bitcoin
|
29355 |
need-bytecoin
|
29357 |
need-sex
|
29358 |
needbitcoin
|
29359 |
needbytecoin
|
29360 |
+
needed it hard
|
29361 |
needlitecoin
|
29362 |
needmoney
|
29363 |
needs wondrous
|
29428 |
new large
|
29429 |
new manolo
|
29430 |
new mastery
|
29431 |
+
new porn
|
29432 |
new room decor
|
29433 |
new rooms decor
|
29434 |
new seo
|
29449 |
new-manolo
|
29450 |
new-mastery
|
29451 |
new-oakley
|
29452 |
+
new-porn
|
29453 |
new-proxy-list
|
29454 |
new-room-decor
|
29455 |
new-rooms-decor
|
29476 |
newjord
|
29477 |
newmanolo
|
29478 |
newoakley
|
29479 |
+
newporn
|
29480 |
newport 100s
|
29481 |
newport-100s
|
29482 |
newport100s
|
29494 |
newss.
|
29495 |
newvibram
|
29496 |
newwebsite
|
|
|
29497 |
newyear2020
|
29498 |
newyear2021
|
29499 |
+
newyear2022
|
29500 |
nexium.to
|
29501 |
nexium4u
|
29502 |
nexopia
|
29541 |
nfr.htm
|
29542 |
nfr.jsp
|
29543 |
nfr.php
|
29544 |
+
nft market
|
29545 |
+
nft-market
|
29546 |
+
nftmarket
|
29547 |
nghiệp google
|
29548 |
nghiep-a-z
|
29549 |
nghiệp-a-z
|
29771 |
no collateral
|
29772 |
no continu
|
29773 |
no copy right
|
29774 |
+
no credit check
|
29775 |
no fee apart
|
29776 |
no genuine difference
|
29777 |
no guarant
|
29783 |
no-continu
|
29784 |
no-copy-right
|
29785 |
no-credit
|
|
|
29786 |
no-fuss
|
29787 |
no-guarant
|
29788 |
no-hassle
|
29803 |
noir-homme
|
29804 |
noirhomme
|
29805 |
nolvadex
|
29806 |
+
nonstoreexit
|
29807 |
noo wonder
|
29808 |
noot sure
|
29809 |
nordstrom moncler
|
29877 |
nova coleção
|
29878 |
nova-colecao
|
29879 |
nova-coleção
|
29880 |
+
novice crypto
|
29881 |
+
novice-crypto
|
29882 |
novo negocio
|
29883 |
novo negócio
|
29884 |
novo-negocio
|
30189 |
oczyszczalnia przydomow
|
30190 |
oczyszczalnia-przydomow
|
30191 |
odchudzanie
|
30192 |
+
odds checker
|
30193 |
odds of affect
|
30194 |
+
odds-checker
|
30195 |
+
oddschecker
|
30196 |
odszkodowania
|
30197 |
oduvan4ik
|
30198 |
odziez
|
30212 |
of essay writing
|
30213 |
of herpes
|
30214 |
of internet
|
30215 |
+
of lucrative offer
|
30216 |
of manies
|
30217 |
of of the
|
30218 |
of on your blog
|
30306 |
officeerror
|
30307 |
official giub
|
30308 |
official moncler
|
30309 |
+
official porn
|
30310 |
official web
|
30311 |
official-giub
|
30312 |
official-moncler
|
30313 |
+
official-porn
|
30314 |
official-sale
|
30315 |
official-steeler
|
30316 |
official-style
|
30322 |
officialgiub
|
30323 |
officialmailsite
|
30324 |
officialmoncler
|
30325 |
+
officialporn
|
30326 |
officialsale
|
30327 |
officialsteeler
|
30328 |
officialstyle
|
30346 |
offline-forum
|
30347 |
ofhuman
|
30348 |
oficery
|
30349 |
+
oficial reparacione
|
30350 |
+
oficial-reparacione
|
30351 |
oficialniy sayt
|
30352 |
oficialniy-sayt
|
30353 |
+
oficialreparacione
|
30354 |
ofnews
|
30355 |
ogrodowyparasol
|
30356 |
ogrodowypokrowi
|
30378 |
olur oturum
|
30379 |
olur-oturum
|
30380 |
omalizumab
|
30381 |
+
omg площадка
|
30382 |
+
omgomgomg
|
30383 |
on board battery
|
30384 |
on da chia se
|
30385 |
ơn đã chia sẻ
|
30465 |
online albenda
|
30466 |
online albenza
|
30467 |
online bag
|
30468 |
+
online bahis
|
30469 |
online best
|
30470 |
online betting
|
30471 |
online boot
|
30504 |
online gaming play
|
30505 |
online gaming store
|
30506 |
online gefunden
|
30507 |
+
online gold
|
30508 |
online grant app
|
30509 |
online gratis
|
30510 |
online gry
|
30511 |
online heel
|
30512 |
online hn
|
30513 |
+
online indonesia
|
30514 |
online internet
|
30515 |
online journ
|
30516 |
online life coach
|
30517 |
online loan
|
30518 |
online longbow
|
30519 |
online m4a
|
30520 |
+
online matka
|
30521 |
online movie
|
30522 |
online mp3
|
30523 |
online mp4
|
30528 |
online pokie
|
30529 |
online profit
|
30530 |
online reader
|
30531 |
+
online real money
|
30532 |
online reddit
|
30533 |
online rewad
|
30534 |
online schuh
|
30536 |
online shoe
|
30537 |
online shop
|
30538 |
online site
|
30539 |
+
online slot
|
30540 |
+
online spiel
|
30541 |
online store selling
|
30542 |
online success
|
30543 |
online toos
|
30549 |
online weblog
|
30550 |
online webpage
|
30551 |
online website
|
|
|
30552 |
online-24
|
30553 |
online-albenda
|
30554 |
online-albenza
|
30555 |
online-bag
|
30556 |
+
online-bahis
|
30557 |
online-best
|
30558 |
online-betting
|
30559 |
online-blog
|
30586 |
online-gaming-play
|
30587 |
online-gaming-store
|
30588 |
online-gefunden
|
30589 |
+
online-gold
|
30590 |
online-grant-app
|
30591 |
online-gratis
|
30592 |
online-gry
|
30593 |
online-guide-of
|
30594 |
online-heel
|
30595 |
online-hn
|
30596 |
+
online-indonesia
|
30597 |
online-internet
|
30598 |
online-invest
|
30599 |
online-journ
|
30602 |
online-longbow
|
30603 |
online-m4a
|
30604 |
online-market
|
30605 |
+
online-matka
|
30606 |
online-med
|
30607 |
online-money
|
30608 |
online-movie
|
30624 |
online-shoe
|
30625 |
online-shop
|
30626 |
online-site
|
30627 |
+
online-slot
|
30628 |
+
online-spiel
|
30629 |
online-store
|
30630 |
online-success
|
30631 |
online-toos
|
30632 |
+
online-tutor
|
30633 |
online-unblock
|
30634 |
online-usa
|
30635 |
online-video-market
|
30637 |
online-webpage
|
30638 |
online-website
|
30639 |
online-zapatilla
|
|
|
30640 |
online,look
|
30641 |
online,shop
|
30642 |
online:look
|
30668 |
onlineforsale
|
30669 |
onlinefree
|
30670 |
onlinegambl
|
30671 |
+
onlinegame
|
30672 |
+
onlinegold
|
30673 |
onlineheel
|
30674 |
onlineinternet
|
30675 |
onlineinvest
|
30676 |
onlinejp
|
30677 |
onlineloan
|
30678 |
onlinem4a
|
30679 |
+
onlinematka
|
30680 |
onlinemed
|
30681 |
onlinemoney
|
30682 |
onlinemp3
|
30694 |
onlinesex
|
30695 |
onlineshoe
|
30696 |
onlineshop
|
30697 |
+
onlinespiel
|
30698 |
onlinestore
|
30699 |
+
onlinetutor
|
30700 |
onlinezapatilla
|
30701 |
onlpy
|
30702 |
only + free
|
30738 |
ooobrand
|
30739 |
ooowatch
|
30740 |
openair
|
30741 |
+
opendoar
|
30742 |
openlink?
|
30743 |
openning
|
30744 |
operated respir
|
30804 |
ordergeneric
|
30805 |
orderparafon
|
30806 |
ordersoma
|
30807 |
+
org download
|
30808 |
+
org-download
|
30809 |
organic hemp
|
30810 |
organic seo
|
30811 |
organic-hemp
|
30815 |
organizovana-zlo
|
30816 |
organogold
|
30817 |
orgazma
|
30818 |
+
orgdownload
|
30819 |
orghttp
|
30820 |
oriflame
|
30821 |
origami origami
|
31095 |
oxycontin
|
31096 |
oympia
|
31097 |
oyun avtomat
|
31098 |
+
oyun oyna
|
31099 |
oyun-avtomat
|
31100 |
+
oyun-oyna
|
31101 |
+
oyunoyna
|
31102 |
oρ
|
31103 |
oϲ
|
31104 |
oг
|
31151 |
page gives pleasant
|
31152 |
page is fastidious
|
31153 |
page is invaluable
|
31154 |
+
page is practical
|
31155 |
page is priceless
|
31156 |
+
page is really practical
|
31157 |
page is truly
|
31158 |
page link
|
31159 |
page of search engine
|
31207 |
pagss
|
31208 |
paid autosurf
|
31209 |
paid google
|
31210 |
+
paid online survey
|
31211 |
paid review
|
31212 |
paid-autosurf
|
31213 |
paid-google
|
31214 |
+
paid-online-survey
|
31215 |
paid-review
|
31216 |
pain-behind
|
31217 |
pain-relief
|
31438 |
paragraph is truly
|
31439 |
paragraph offer
|
31440 |
paragraph post
|
31441 |
+
paragraph present
|
31442 |
paragraph writ
|
31443 |
paragraph-at-this
|
31444 |
paragraph-here
|
31555 |
passionately fond
|
31556 |
passionately-fond
|
31557 |
passive income system
|
31558 |
+
passive revenue stream
|
31559 |
passive-income-system
|
31560 |
+
passive-revenue-stream
|
31561 |
passo_a_passo
|
31562 |
passo-a-passo
|
31563 |
passprefix
|
31589 |
pastebin.fun
|
31590 |
patagonia-zone
|
31591 |
patagoniazone
|
31592 |
+
paternity dna
|
31593 |
+
paternity-dna
|
31594 |
patience maxi
|
31595 |
patience-maxi
|
31596 |
patiencemaxi
|
31614 |
paxil
|
31615 |
pay_day
|
31616 |
pay-as-you-go
|
31617 |
+
payday cash
|
31618 |
payday loan
|
31619 |
+
payday-cash
|
31620 |
payday-loan
|
31621 |
payday-on
|
31622 |
payday.co
|
31626 |
payday.ru
|
31627 |
payday.su
|
31628 |
payday.za
|
31629 |
+
payday|
|
31630 |
+
paydaycash
|
31631 |
paydayloan
|
31632 |
paydaynote
|
31633 |
paydayon
|
31654 |
paypall
|
31655 |
paypalmoney
|
31656 |
payroll-calc
|
31657 |
+
paysafecard
|
|
|
|
|
|
|
31658 |
pazarlayan pezevengin
|
31659 |
pazarlayan-pezevengin
|
31660 |
pbrolme
|
31721 |
pefcret
|
31722 |
pen montblanc
|
31723 |
pen-montblanc
|
31724 |
+
pendik escort
|
31725 |
+
pendik eskort
|
31726 |
+
pendik-escort
|
31727 |
+
pendik-eskort
|
31728 |
penetrar uma
|
31729 |
penetrative sex
|
31730 |
penetrative-sex
|
31784 |
pension frankfurt
|
31785 |
pension-frankfurt
|
31786 |
pensmontblanc
|
31787 |
+
pent written content
|
31788 |
people about the subject
|
31789 |
people about the topic
|
31790 |
people about this subject
|
31791 |
people about this topic
|
31792 |
people can deeply
|
31793 |
+
people eat music
|
31794 |
people for the subject
|
31795 |
people for the topic
|
31796 |
people for this subject
|
31822 |
perabot kantor
|
31823 |
perabot-kantor
|
31824 |
percocet
|
31825 |
+
perder peso
|
31826 |
+
perder-peso
|
31827 |
+
perderpeso
|
31828 |
perfect blog
|
31829 |
perfect diet
|
31830 |
perfect interest
|
31871 |
perku versla
|
31872 |
perku verslą
|
31873 |
perku-versla
|
31874 |
+
permainan slot
|
31875 |
+
permainan-slot
|
31876 |
permission allow
|
31877 |
permission-allow
|
31878 |
permonth.co
|
31880 |
person-prov
|
31881 |
persona attribute
|
31882 |
personal blogroll
|
31883 |
+
personal loan
|
31884 |
personal pc
|
31885 |
personal personal
|
31886 |
personal pupil
|
31887 |
personal silicone
|
31888 |
personal stuffs
|
31889 |
+
personal_loan
|
31890 |
personal-blogroll
|
31891 |
personal-exper
|
31892 |
personal-injury
|
31893 |
+
personal-loan
|
31894 |
personal-natur
|
31895 |
personal-pc
|
31896 |
personal-personal
|
31904 |
personalised-silicone
|
31905 |
personalized silicone
|
31906 |
personalizedsilicone
|
31907 |
+
personalloan
|
31908 |
personalnatur
|
31909 |
personalpc
|
31910 |
personen daten
|
31912 |
personenbezogener daten
|
31913 |
personenbezogener-daten
|
31914 |
personnalis
|
31915 |
+
peruse google
|
31916 |
+
perusing google
|
31917 |
perxon
|
31918 |
pesimdesiniz
|
31919 |
peşimdesiniz
|
31946 |
pflegeversicherung
|
31947 |
pflegezusatzversicherung
|
31948 |
pg concern
|
31949 |
+
pg slot
|
31950 |
pg-concern
|
31951 |
+
pg-slot
|
31952 |
pg/blog
|
31953 |
pg/forum
|
31954 |
pg/page
|
31956 |
pg/profil
|
31957 |
pg/view
|
31958 |
pgconcern
|
31959 |
+
pgslot
|
31960 |
phan mem quan
|
31961 |
phần mềm quản
|
31962 |
phan-mem
|
31963 |
phần-mềm
|
31964 |
phan-mem-quan
|
31965 |
+
phap ly hung
|
31966 |
+
pháp lý hưng
|
31967 |
+
phap ly vung
|
31968 |
+
pháp lý vững
|
31969 |
+
phap-ly-hung
|
31970 |
+
phap-ly-vung
|
31971 |
+
pharm rx
|
31972 |
+
pharm store
|
31973 |
pharm_
|
31974 |
+
pharm-rx
|
31975 |
+
pharm-store
|
31976 |
pharm.
|
31977 |
pharma canad
|
31978 |
pharma euro
|
31992 |
pharmacy from
|
31993 |
pharmacy online
|
31994 |
pharmacy outlet
|
31995 |
+
pharmacy rx
|
31996 |
+
pharmacy store
|
31997 |
pharmacy without
|
31998 |
pharmacy_
|
31999 |
pharmacy-24
|
32002 |
pharmacy-from
|
32003 |
pharmacy-online
|
32004 |
pharmacy-outlet
|
32005 |
+
pharmacy-rx
|
32006 |
+
pharmacy-store
|
32007 |
pharmacy-without
|
32008 |
pharmacy24
|
32009 |
pharmacyat
|
32010 |
pharmacyonline
|
32011 |
pharmacyoutlet
|
32012 |
+
pharmacyrx
|
32013 |
pharmaeuro
|
32014 |
pharmancies_
|
32015 |
pharmaun
|
32016 |
pharmi
|
32017 |
pharmo
|
32018 |
+
pharmrx
|
32019 |
pharms
|
32020 |
pharmz
|
32021 |
pheaemon
|
32108 |
phpinfo
|
32109 |
phpoakley
|
32110 |
phttp
|
|
|
|
|
32111 |
phuc 2020
|
32112 |
phục 2020
|
32113 |
phuc 2021
|
32114 |
phục 2021
|
32115 |
+
phuc 2022
|
32116 |
+
phục 2022
|
32117 |
phục áo phông
|
32118 |
phục áo thun
|
32119 |
phục bon mua
|
32120 |
phuc hot
|
32121 |
phuc trend
|
|
|
32122 |
phuc-2020
|
32123 |
phuc-2021
|
32124 |
+
phuc-2022
|
32125 |
phuc-ao-phong
|
32126 |
phuc-ao-thun
|
32127 |
phuc-bon-mua
|
32128 |
phuc-hot
|
32129 |
phuc-trend
|
|
|
32130 |
phuc2020
|
32131 |
phuc2021
|
32132 |
+
phuc2022
|
32133 |
phucbonmua
|
32134 |
phuchot
|
32135 |
phuctrend
|
32140 |
physician-review
|
32141 |
physicians formula
|
32142 |
physicians-formula
|
32143 |
+
physique temperature
|
32144 |
+
physique-temperature
|
32145 |
phytoceramide
|
32146 |
pɦân phối
|
32147 |
pɦân-phối
|
32164 |
piece of writing
|
32165 |
piece off writing
|
32166 |
piece-chap
|
32167 |
+
piel besos
|
32168 |
+
piezas de alta
|
32169 |
+
piezas de pro
|
32170 |
pignee
|
32171 |
pigus kvepalai
|
32172 |
pigus-kvepalai
|
32192 |
pillsforsale
|
32193 |
pillsonline
|
32194 |
pillz
|
32195 |
+
pimped resume
|
32196 |
pimples free
|
32197 |
pimples-free
|
32198 |
pin dump
|
32200 |
pin, dump
|
32201 |
pine-and-onyx
|
32202 |
ping your self
|
32203 |
+
pink dining room
|
32204 |
pink large
|
32205 |
pink-large
|
32206 |
pinklarge
|
32259 |
pjbpro
|
32260 |
pjure breast
|
32261 |
pjure-breast
|
32262 |
+
pkv qq
|
32263 |
+
pkv-qq
|
32264 |
+
pkvqq
|
32265 |
pl/wiki
|
32266 |
place for naughty
|
32267 |
place-for-naughty
|
32304 |
plavix
|
32305 |
play film trailer
|
32306 |
play films trailer
|
32307 |
+
play fortuna
|
32308 |
play hack
|
32309 |
+
play matka
|
32310 |
play video review
|
32311 |
play videos review
|
32312 |
+
play website
|
32313 |
play-film-trailer
|
32314 |
play-films-trailer
|
32315 |
+
play-fortuna
|
32316 |
play-free
|
32317 |
play-hack
|
32318 |
+
play-matka
|
32319 |
play-online
|
32320 |
play-reel-king
|
32321 |
play-runescape
|
32322 |
play-video-review
|
32323 |
play-videos-review
|
32324 |
+
play-website
|
32325 |
playedd
|
32326 |
playerblock
|
32327 |
+
playfortuna
|
32328 |
playfree
|
32329 |
playher
|
32330 |
playing film trailer
|
32335 |
playing-films-trailer
|
32336 |
playing-video-review
|
32337 |
playing-videos-review
|
32338 |
+
playmatka
|
32339 |
playonline
|
32340 |
playstation code
|
32341 |
playstation-code
|
32342 |
playvid
|
32343 |
+
playwebsite
|
32344 |
plazajp
|
32345 |
pleasant article
|
32346 |
pleasant blog
|
32431 |
point ,
|
32432 |
point !
|
32433 |
point .
|
32434 |
+
point depression
|
32435 |
point generat
|
32436 |
+
point massage
|
32437 |
+
point_massage
|
32438 |
point-generat
|
32439 |
+
point-massage
|
32440 |
point|
|
32441 |
pointgenerat
|
32442 |
+
pointmassage
|
32443 |
points ,
|
32444 |
points !
|
32445 |
points .
|
32446 |
points generat
|
32447 |
points in feature
|
32448 |
+
points you have written
|
32449 |
points-generat
|
32450 |
points-to-think
|
32451 |
pointsgenerat
|
32452 |
poished
|
32453 |
poisk-nomera-tele
|
32454 |
pojap
|
32455 |
+
pok%c3%83_mon
|
32456 |
poke amulet
|
32457 |
poke cheat
|
32458 |
poke coin
|
32509 |
poker game
|
32510 |
poker machine
|
32511 |
poker match
|
32512 |
+
poker menang
|
32513 |
poker mistake
|
32514 |
poker money
|
32515 |
poker online
|
32517 |
poker republi
|
32518 |
poker room
|
32519 |
poker site
|
32520 |
+
poker slot
|
32521 |
poker soda
|
32522 |
poker strat
|
32523 |
poker terp
|
32546 |
poker-machine
|
32547 |
poker-man
|
32548 |
poker-match
|
32549 |
+
poker-menang
|
32550 |
poker-mistake
|
32551 |
poker-money
|
32552 |
poker-online
|
32554 |
poker-republi
|
32555 |
poker-room
|
32556 |
poker-site
|
32557 |
+
poker-slot
|
32558 |
poker-soda
|
32559 |
poker-strat
|
32560 |
poker-terp
|
32585 |
pokeronline
|
32586 |
pokerqq
|
32587 |
pokerrepubli
|
32588 |
+
pokerslot
|
32589 |
pokersoda
|
32590 |
pokerstrat
|
32591 |
pokertexas
|
32627 |
polosralph
|
32628 |
polsce pdf
|
32629 |
polsce-pdf
|
32630 |
+
polskie kasyno
|
32631 |
+
polskie-kasyno
|
32632 |
pomyslow prezent
|
32633 |
pomysłow prezent
|
32634 |
pomyslow-prezent
|
32668 |
porn app
|
32669 |
porn beer
|
32670 |
porn big
|
32671 |
+
porn clip
|
32672 |
porn cocuk
|
32673 |
porn comic
|
32674 |
porn dairy
|
32689 |
porn hot
|
32690 |
porn hub
|
32691 |
porn izle
|
32692 |
+
porn king
|
32693 |
porn lesb
|
32694 |
porn live
|
32695 |
porn lohan
|
32727 |
porn young
|
32728 |
porn_
|
32729 |
porn-
|
32730 |
+
porn-clip
|
32731 |
porn-hd
|
32732 |
porn-izle
|
32733 |
+
porn-king
|
32734 |
porn-play
|
32735 |
porn-podcast
|
32736 |
porn-rape
|
32743 |
pornapp
|
32744 |
pornbeer
|
32745 |
pornbig
|
32746 |
+
pornclip
|
32747 |
porncocuk
|
32748 |
porncomic
|
32749 |
porndairy
|
32765 |
pornhub
|
32766 |
pornhud
|
32767 |
pornizle
|
32768 |
+
pornking
|
32769 |
pornlesb
|
32770 |
pornlive
|
32771 |
pornlohan
|
32945 |
portray & decorat
|
32946 |
portray & decorat
|
32947 |
portray and decorat
|
32948 |
+
posamochod opinie
|
32949 |
positikon
|
32950 |
positive credit history
|
32951 |
positively helpful
|
32958 |
possible kill you
|
32959 |
possibly can constant
|
32960 |
possibly kill you
|
32961 |
+
possibly possibly
|
32962 |
possui publicidade
|
32963 |
possui zero
|
32964 |
possui-publicidade
|
32965 |
possui-zero
|
32966 |
post ::
|
32967 |
post aat
|
32968 |
+
post as well as
|
32969 |
post at this site
|
32970 |
post como este
|
32971 |
post composing
|
33008 |
post.real
|
33009 |
post.thank
|
33010 |
postcarf
|
33011 |
+
posted on your blog
|
33012 |
+
posted on your page
|
33013 |
+
posted on your site
|
33014 |
+
posted on your web
|
33015 |
postfully
|
33016 |
posting comment
|
33017 |
posting movies frequent
|
33101 |
ppvtraff
|
33102 |
pr článek
|
33103 |
pr článk
|
33104 |
+
pr-bookmark
|
33105 |
pra acabar
|
33106 |
pra-acabar
|
33107 |
prac licencjackich
|
33168 |
pragnanter firmen
|
33169 |
prägnanter firmen
|
33170 |
pragnanter-firmen
|
33171 |
+
pratik bilgiler
|
33172 |
+
pratik-bilgiler
|
33173 |
+
pratikbilgiler
|
33174 |
prawnik
|
33175 |
prazer sexual
|
33176 |
prazer-sexual
|
33177 |
prazosin
|
33178 |
+
prbookmark
|
33179 |
prdetty
|
33180 |
precios_
|
33181 |
precisely lots
|
33235 |
premature ejac
|
33236 |
premature-ejac
|
33237 |
prematureejac
|
33238 |
+
premium anschluss
|
33239 |
premium anti
|
33240 |
premium cig
|
33241 |
premium digit
|
33244 |
premium improve
|
33245 |
premium key
|
33246 |
premium out
|
33247 |
+
premium wiet
|
33248 |
+
premium wordpress
|
33249 |
premium-account
|
33250 |
+
premium-anschluss
|
33251 |
premium-anti
|
33252 |
premium-cig
|
33253 |
premium-digit
|
33255 |
premium-free
|
33256 |
premium-key
|
33257 |
premium-out
|
33258 |
+
premium-wiet
|
33259 |
+
premium-wordpress
|
33260 |
premium.ru
|
33261 |
premiumaccount
|
33262 |
premiumanti
|
33266 |
premiumfree
|
33267 |
premiumkey
|
33268 |
premiumout
|
33269 |
+
premiumwordpress
|
33270 |
prentice capital
|
33271 |
prentice-capital
|
33272 |
prenticecapital
|
33318 |
press-webpage
|
33319 |
pressuppose
|
33320 |
presta dinero
|
33321 |
+
présta dinero
|
33322 |
presta rapidos
|
33323 |
+
présta rapidos
|
33324 |
presta-dinero
|
33325 |
presta-rapidos
|
33326 |
prestadinero
|
33327 |
+
prestamo inmediato
|
33328 |
+
préstamo inmediato
|
33329 |
+
prestamo online
|
33330 |
+
préstamo online
|
33331 |
+
prestamo rapidos
|
33332 |
+
préstamo rapidos
|
33333 |
+
prestamo-inmediato
|
33334 |
+
prestamo-online
|
33335 |
+
prestamo-rapidos
|
33336 |
+
prestamoinmediato
|
33337 |
+
prestamoonline
|
33338 |
+
prestamorapidos
|
33339 |
+
prestamos inmediato
|
33340 |
+
préstamos inmediato
|
33341 |
+
prestamos online
|
33342 |
+
préstamos online
|
33343 |
+
prestamos personal
|
33344 |
+
préstamos personal
|
33345 |
prestamos rapidos
|
33346 |
+
préstamos rapidos
|
33347 |
+
prestamos-inmediato
|
33348 |
+
prestamos-online
|
33349 |
+
prestamos-personal
|
33350 |
prestamos-rapidos
|
33351 |
+
prestamosinmediato
|
33352 |
+
prestamosonline
|
33353 |
+
prestamospersonal
|
33354 |
prestamosrapidos
|
33355 |
prestarapidos
|
33356 |
pretty candy as
|
33369 |
prezzibors
|
33370 |
prezzigiub
|
33371 |
price cheap
|
33372 |
+
price for advair
|
33373 |
price now!
|
33374 |
+
price per click
|
33375 |
price philip
|
33376 |
price replic
|
33377 |
price sunglass
|
33378 |
price-cheap
|
33379 |
+
price-for-advair
|
33380 |
price-of-gold
|
33381 |
+
price-per-click
|
33382 |
price-philip
|
33383 |
price-replic
|
33384 |
price-sunglass
|
33432 |
privatamateur
|
33433 |
private amateur
|
33434 |
private ftp
|
33435 |
+
private universite
|
33436 |
private-amateur
|
33437 |
private-ftp
|
33438 |
private-label
|
33439 |
private-proxy
|
33440 |
+
private-universite
|
33441 |
privateamateur
|
33442 |
privateftp
|
33443 |
privatelabel
|
33457 |
prix-ugg
|
33458 |
prixchaus
|
33459 |
prixugg
|
33460 |
+
pro casino
|
33461 |
pro key
|
33462 |
pro medical
|
33463 |
pro pip
|
33464 |
pro review
|
33465 |
pro_site
|
33466 |
+
pro-casino
|
33467 |
pro-medical
|
33468 |
pro-pip
|
33469 |
pro-review
|
33485 |
probllem
|
33486 |
proc opport
|
33487 |
proc-opport
|
33488 |
+
procasino
|
33489 |
procedures-for
|
33490 |
proceed travel in
|
33491 |
proceed your writing
|
33540 |
profesionalidad y experiencia
|
33541 |
profesjonal
|
33542 |
professianal
|
33543 |
+
profession coach
|
33544 |
+
profession-coach
|
33545 |
professional 2020
|
33546 |
professional 2021
|
33547 |
+
professional 2022
|
33548 |
professional blog
|
33549 |
+
professional casino
|
33550 |
professional cosmet
|
33551 |
professional essay
|
33552 |
professional hypno
|
33553 |
professional poker
|
33554 |
professional top quality
|
33555 |
professional ugg
|
|
|
33556 |
professional-2020
|
33557 |
professional-2021
|
33558 |
+
professional-2022
|
33559 |
professional-blog
|
33560 |
+
professional-casino
|
33561 |
professional-cosmet
|
33562 |
professional-essay
|
33563 |
professional-hypno
|
33564 |
professional-poker
|
33565 |
professional-ugg
|
|
|
33566 |
professional2020
|
33567 |
professional2021
|
33568 |
+
professional2022
|
33569 |
professionalpoker
|
33570 |
professionals.co
|
33571 |
professionalugg
|
33572 |
+
profesyonel kurumsal
|
33573 |
+
profesyonel-kurumsal
|
33574 |
proficiency advantage
|
33575 |
proficiency badge
|
33576 |
proficiency course
|
33633 |
profitseek
|
33634 |
profitsreview
|
33635 |
program fault you
|
33636 |
+
program kasir
|
33637 |
program ppc
|
33638 |
+
program-kasir
|
33639 |
program-ppc
|
33640 |
programs on ways
|
33641 |
progress loan
|
33664 |
promo art
|
33665 |
promo artist
|
33666 |
promo bag
|
33667 |
+
promo click
|
33668 |
promo marketing
|
33669 |
promo shop
|
33670 |
promo store
|
33674 |
promo-art
|
33675 |
promo-artist
|
33676 |
promo-bag
|
33677 |
+
promo-click
|
33678 |
promo-marketing
|
33679 |
promo-shop
|
33680 |
promo-store
|
33681 |
promo-sys
|
33682 |
promo-team
|
33683 |
promo-voucher
|
33684 |
+
promo.store
|
33685 |
promo+
|
33686 |
promoart
|
33687 |
promobag
|
33688 |
promocja
|
33689 |
+
promoclick
|
33690 |
promocode
|
33691 |
promomarketing
|
33692 |
promos code
|
33735 |
propeer
|
33736 |
proper blog
|
33737 |
proper-ugg
|
33738 |
+
properly collectively
|
33739 |
+
properly, collectively
|
33740 |
propertiok
|
33741 |
property highly secure
|
33742 |
property pro
|
33744 |
propertypro
|
33745 |
properugg
|
33746 |
propip
|
33747 |
+
propiska sobstvennik
|
33748 |
+
propiska-sobstvennik
|
33749 |
propranolol
|
33750 |
proshop.ru
|
33751 |
prospects of decay
|
33752 |
+
prostaphytol
|
33753 |
prostate stimul
|
33754 |
prostate-stimul
|
33755 |
prostitutki
|
33756 |
+
prosubiekt
|
33757 |
protandim
|
33758 |
+
protection outcomes
|
33759 |
protein bene
|
33760 |
protein powder
|
33761 |
protein review
|
33767 |
protein-tozu
|
33768 |
proteinbene
|
33769 |
proteindiet
|
33770 |
+
proteinpulver
|
33771 |
proteintozu
|
33772 |
prova da oab
|
33773 |
prova-da-oab
|
33777 |
provewhether
|
33778 |
provide in the blog
|
33779 |
provide one thing back
|
33780 |
+
provided by knowledge
|
33781 |
+
provided_by_knowledge
|
33782 |
+
provided-by-knowledge
|
33783 |
provider proficient
|
33784 |
provider-proficient
|
33785 |
provigil
|
33896 |
pupil loan
|
33897 |
pupil-loan
|
33898 |
puppy hating dan
|
33899 |
+
purchase facebook
|
33900 |
purchase generic
|
33901 |
purchase guilt
|
33902 |
+
purchase instagram
|
33903 |
purchase pitch
|
33904 |
purchase privilege
|
33905 |
+
purchase sympathy
|
33906 |
+
purchase telegram
|
33907 |
purchase tiffany
|
33908 |
+
purchase tiktok
|
33909 |
+
purchase twitter
|
33910 |
+
purchase_sympathy
|
33911 |
+
purchase-facebook
|
33912 |
purchase-generic
|
33913 |
purchase-guilt
|
33914 |
+
purchase-instagram
|
33915 |
purchase-pitch
|
33916 |
purchase-privilege
|
33917 |
+
purchase-sympathy
|
33918 |
+
purchase-telegram
|
33919 |
purchase-tiffany
|
33920 |
+
purchase-tiktok
|
33921 |
+
purchase-twitter
|
33922 |
purchase!cock
|
33923 |
purchasegeneric
|
33924 |
purchases pitch
|
34023 |
qatarescort
|
34024 |
qatareskort
|
34025 |
qhttp
|
34026 |
+
qq 77
|
34027 |
+
qq 88
|
34028 |
qq blog
|
34029 |
qq online
|
34030 |
+
qq-77
|
34031 |
+
qq-88
|
34032 |
qq-blog
|
34033 |
qq-online
|
34034 |
qq.blog
|
34035 |
qq.online
|
34036 |
+
qq77
|
34037 |
+
qq88
|
34038 |
qqq
|
34039 |
qquality
|
34040 |
qsymia india
|
34132 |
quincyfemme
|
34133 |
quinoa stomach
|
34134 |
quinoa-stomach
|
34135 |
+
quintessence causing
|
34136 |
+
quit masturbat
|
34137 |
+
quit-masturbat
|
34138 |
quit-smok
|
34139 |
quit-smoking
|
34140 |
quit9to5
|
34188 |
racinghack
|
34189 |
radikal.ru
|
34190 |
radiocarpea
|
34191 |
+
raelnightclub
|
34192 |
+
raelxclub
|
34193 |
rahalat maroc
|
34194 |
rahalat-maroc
|
34195 |
raiders hat
|
34197 |
raidershat
|
34198 |
raloxifene
|
34199 |
ralph-lauren
|
34200 |
+
rambler.ru
|
34201 |
ramipril
|
34202 |
rank increase
|
34203 |
rank-build
|
34379 |
real-lesbian
|
34380 |
real-mastery
|
34381 |
real-money
|
34382 |
+
real-night-club
|
34383 |
+
real-nightclub
|
34384 |
+
real-x-club
|
34385 |
+
real-xclub
|
34386 |
realcasino
|
34387 |
realestate.co
|
34388 |
realestate.web
|
34394 |
reallky
|
34395 |
really a commonly
|
34396 |
really easy along
|
34397 |
+
really exceedingly
|
34398 |
really excellent info
|
34399 |
really fantastic info
|
34400 |
really fastidious
|
34401 |
really fruitful
|
34402 |
+
really good essay
|
34403 |
really good paragraph
|
34404 |
really interesting info
|
34405 |
really like this blog
|
34418 |
realmoney
|
34419 |
realms-full
|
34420 |
realmsfull
|
34421 |
+
realnightclub
|
34422 |
realtor promo
|
34423 |
realtor-promo
|
34424 |
+
realxclub
|
34425 |
reap the most effect
|
34426 |
+
rearacion
|
34427 |
reason your brand
|
34428 |
reason-your-brand
|
34429 |
reasonable_trendy_
|
34432 |
reasonabpe
|
34433 |
reasons your brand
|
34434 |
reasons-why
|
34435 |
+
reasons-you-will-never
|
34436 |
reasons-your-brand
|
34437 |
rebate supply
|
34438 |
rebate-supply
|
34462 |
reborn-web
|
34463 |
reccomend this
|
34464 |
reccomend-this
|
34465 |
+
reccommend
|
34466 |
receive carried
|
34467 |
receive-carried
|
34468 |
recent seo
|
34529 |
reconquista-perfeita
|
34530 |
records-data
|
34531 |
recordsdata
|
34532 |
+
recovery blog
|
34533 |
+
recovery-blog
|
34534 |
recovery-now
|
34535 |
recoverynow
|
34536 |
red christ
|
34537 |
+
red head nude
|
34538 |
red ugg
|
34539 |
red-bottom-shoe
|
34540 |
red-christ
|
34541 |
+
red-head-nude
|
34542 |
red-ugg
|
34543 |
red+bottom+shoe
|
34544 |
redact your preceding
|
34547 |
redchrist
|
34548 |
redeem playstation
|
34549 |
redeem-playstation
|
34550 |
+
redhead nude
|
34551 |
+
redhead-nude
|
34552 |
+
redheadnude
|
34553 |
redi_url
|
34554 |
redi-url
|
34555 |
redir.asp
|
34567 |
redireccion.jsp
|
34568 |
redireccion.php
|
34569 |
redirect_link
|
34570 |
+
redirect_to
|
34571 |
redirect-link
|
34572 |
+
redirect-to
|
34573 |
redirect.asp
|
34574 |
redirect.cfm
|
34575 |
redirect.cgi
|
34602 |
redsoleshoe
|
34603 |
reductil
|
34604 |
redugg
|
34605 |
+
redutor de barriga
|
34606 |
+
redutor-de-barriga
|
34607 |
+
redutordebarriga
|
34608 |
redwingjp
|
34609 |
reebok baseball
|
34610 |
reebok ital
|
34674 |
registration-paid
|
34675 |
registration-strat
|
34676 |
registrator
|
34677 |
+
registratsiya online
|
34678 |
+
registratsiya-online
|
34679 |
registry-clean
|
34680 |
registry-fix
|
34681 |
registry-repair
|
34690 |
regulados-de-forex
|
34691 |
regulate their gaming
|
34692 |
reguliatory
|
34693 |
+
reinforce energy
|
34694 |
+
reinforces energy
|
34695 |
reinigungsfirmen hab
|
34696 |
reirect
|
34697 |
rejersey.co
|
34742 |
relogios-replic
|
34743 |
relogios-réplica
|
34744 |
relogiosreplic
|
34745 |
+
relx infinity
|
34746 |
+
relx vape
|
34747 |
+
relx-infinity
|
34748 |
+
relx-vape
|
34749 |
+
relxinfinity
|
34750 |
+
relxvape
|
34751 |
remarkable article
|
34752 |
remarkable blog
|
34753 |
remarkable info
|
34823 |
renda extra
|
34824 |
renda-extra
|
34825 |
renewal amenit
|
34826 |
+
reno_tip
|
34827 |
+
reno-tip
|
34828 |
+
renovation_tip
|
34829 |
+
renovation-tip
|
34830 |
+
renown know
|
34831 |
rent luxury
|
34832 |
rent_in
|
34833 |
rent-luxury
|
34852 |
repairs near me
|
34853 |
repairs near you
|
34854 |
repairvirgin
|
34855 |
+
reparacion aire
|
34856 |
+
reparacion calenta
|
34857 |
+
reparacion cocina
|
34858 |
+
reparacion de aire
|
34859 |
+
reparacion de calenta
|
34860 |
+
reparacion de electro
|
34861 |
+
reparacion electro
|
34862 |
+
reparacion energetica
|
34863 |
+
reparacion frigorif
|
34864 |
+
reparacion lavadora
|
34865 |
+
reparacion-aire
|
34866 |
+
reparacion-calenta
|
34867 |
+
reparacion-cocina
|
34868 |
+
reparacion-de-aire
|
34869 |
+
reparacion-de-calenta
|
34870 |
+
reparacion-de-electro
|
34871 |
+
reparacion-electro
|
34872 |
+
reparacion-energetica
|
34873 |
+
reparacion-frigorif
|
34874 |
+
reparacion-lavadora
|
34875 |
+
reparacioncocina
|
34876 |
reparatii-masini-spa
|
34877 |
repeated galdi
|
34878 |
repeated-galdi
|
35060 |
resulthk
|
35061 |
resulthong
|
35062 |
results.htm
|
35063 |
+
resume creating
|
35064 |
+
resume creation
|
35065 |
+
resume creator
|
35066 |
+
resume drafter
|
35067 |
resume expert
|
35068 |
+
resume pimp
|
35069 |
+
resume sculpted
|
35070 |
resume-101
|
35071 |
+
resume-creating
|
35072 |
+
resume-creation
|
35073 |
+
resume-creator
|
35074 |
+
resume-drafter
|
35075 |
resume-expert
|
35076 |
+
resume-pimp
|
35077 |
+
resume-sculpted
|
35078 |
resume101
|
35079 |
resumeexpert
|
35080 |
resumes expert
|
35123 |
review my sitte
|
35124 |
review my web
|
35125 |
review online edit
|
35126 |
+
review reading
|
35127 |
review site
|
35128 |
review website
|
35129 |
review you tube
|
35131 |
review-bonus
|
35132 |
review-discount
|
35133 |
review-on
|
35134 |
+
review-reading
|
35135 |
review-sale
|
35136 |
review-site
|
35137 |
review-source
|
35150 |
reviewbonus
|
35151 |
reviewdiscount
|
35152 |
reviewon
|
35153 |
+
reviewreading
|
35154 |
reviews best
|
35155 |
reviews online
|
35156 |
+
reviews reading
|
35157 |
reviews you tube
|
35158 |
reviews youtube
|
35159 |
reviews-best
|
35160 |
reviews-on
|
35161 |
reviews-online
|
35162 |
+
reviews-reading
|
35163 |
reviews-today
|
35164 |
reviews-you-tube
|
35165 |
reviews-youtube
|
35178 |
reviewsite
|
35179 |
reviewson
|
35180 |
reviewsource
|
35181 |
+
reviewsreading
|
35182 |
reviewstoday
|
35183 |
reviewstv
|
35184 |
reviewthe
|
35239 |
ripoff the consumer
|
35240 |
ripoff their consumer
|
35241 |
ripoffreport
|
35242 |
+
rise online
|
35243 |
rise-hire
|
35244 |
+
rise-online
|
35245 |
risehire
|
35246 |
rizatriptan
|
35247 |
road of success
|
35305 |
ronniie
|
35306 |
roofingcontractor
|
35307 |
room by hour
|
35308 |
+
room design idea
|
35309 |
room-by-hour
|
35310 |
room-decorating-idea
|
35311 |
rooms by hour
|
35436 |
rượu đẹp
|
35437 |
ruou-dep
|
35438 |
ruproshop
|
35439 |
+
russia channel
|
35440 |
+
russia web
|
35441 |
+
russia-channel
|
35442 |
+
russia-web
|
35443 |
russia.ru
|
35444 |
+
russiachannel
|
35445 |
+
russian channel
|
35446 |
russian mis
|
35447 |
russian mr
|
35448 |
russian ms
|
35449 |
russian mulberry
|
35450 |
russian stalker
|
35451 |
+
russian web
|
35452 |
russian-army-good
|
35453 |
+
russian-channel
|
35454 |
russian-mis
|
35455 |
russian-mr
|
35456 |
russian-ms
|
35457 |
russian-mulberry
|
35458 |
russian-stalker
|
35459 |
+
russian-web
|
35460 |
+
russianchannel
|
35461 |
russianmis
|
35462 |
russianmr
|
35463 |
russianms
|
35464 |
russianmulberry
|
35465 |
+
russianweb
|
35466 |
+
russiaweb
|
35467 |
russkom nacionaliz
|
35468 |
russkom-nacionaliz
|
35469 |
rusztowania
|
35470 |
ruwordpress
|
35471 |
+
rv bathroom
|
35472 |
+
rv counter
|
35473 |
+
rv door
|
35474 |
+
rv fabric
|
35475 |
+
rv mechanic
|
35476 |
+
rv reno
|
35477 |
+
rv repair
|
35478 |
+
rv resto
|
35479 |
+
rv seat
|
35480 |
+
rv solar
|
35481 |
+
rv-bathroom
|
35482 |
+
rv-counter
|
35483 |
+
rv-door
|
35484 |
+
rv-fabric
|
35485 |
+
rv-mechanic
|
35486 |
+
rv-reno
|
35487 |
+
rv-repair
|
35488 |
+
rv-resto
|
35489 |
+
rv-seat
|
35490 |
+
rv-solar
|
35491 |
+
rx pharmacy
|
35492 |
rx-pharm
|
35493 |
rxpharm
|
35494 |
rг
|
35509 |
s:.
|
35510 |
s!.
|
35511 |
s.@
|
35512 |
+
s.|
|
35513 |
s.all
|
35514 |
s.for
|
35515 |
s.p.o.r.t
|
35543 |
sabosale
|
35544 |
saboshop
|
35545 |
sabouk
|
35546 |
+
sabung ayam
|
35547 |
+
sabung-ayam
|
35548 |
+
sabungayam
|
35549 |
sac celine
|
35550 |
sac chanel
|
35551 |
sac chloe
|
35778 |
samke amount
|
35779 |
samurai siege
|
35780 |
samurai-siege
|
35781 |
+
san go cong
|
35782 |
+
sàn gỗ công
|
35783 |
san pham
|
35784 |
sản phẩm
|
35785 |
san xuat
|
35786 |
sản xuất
|
35787 |
+
san-go-cong
|
35788 |
san-pham
|
35789 |
sản-phẩm
|
35790 |
san-xuat
|
35826 |
sanders-jers
|
35827 |
sandersjers
|
35828 |
sandypasch
|
35829 |
+
sangocong
|
35830 |
sans ordonnance
|
35831 |
sans-ordonnance
|
35832 |
sante blog
|
35846 |
sapui5
|
35847 |
sarees india
|
35848 |
sarees-india
|
35849 |
+
sat electrodomestico
|
35850 |
+
sat-electrodomestico
|
35851 |
satchelbag
|
35852 |
satcheldbag
|
35853 |
+
satisfaccion externa
|
35854 |
+
satisfacción externa
|
35855 |
+
satisfacciones externa
|
35856 |
+
satisfacciónes externa
|
35857 |
satisfied reading
|
35858 |
satisfied-reading
|
35859 |
satisfying existence
|
35860 |
satllite
|
35861 |
+
satta porn
|
35862 |
+
satta-porn
|
35863 |
+
sattaporn
|
35864 |
saudavel perder
|
35865 |
saudável perder
|
35866 |
saudavel-perder
|
35872 |
saved as a fave
|
35873 |
saved as a favorite
|
35874 |
saved as a favourite
|
35875 |
+
saved to bookmark
|
35876 |
savor a movie
|
35877 |
sawfwaf
|
35878 |
say about this article
|
35885 |
say this page
|
35886 |
say this site
|
35887 |
say this web
|
35888 |
+
say your article
|
35889 |
say your blog
|
35890 |
say your page
|
35891 |
+
say your post
|
35892 |
say your site
|
35893 |
say your web
|
35894 |
sayt vizitk
|
35954 |
schoenendsqu
|
35955 |
schoenenseite
|
35956 |
schoeneseite
|
35957 |
+
scholarship of your dream
|
35958 |
schon schon
|
35959 |
schon-schon
|
35960 |
school.a
|
36009 |
scraper-free
|
36010 |
scraper-software
|
36011 |
scraperfree
|
36012 |
+
screener seek
|
36013 |
script-buck
|
36014 |
scriptbuck
|
36015 |
+
sculpted resume
|
36016 |
sculpting bandage
|
36017 |
sculpting-bandage
|
36018 |
sd3546a
|
36022 |
sdfasd
|
36023 |
sdfklj
|
36024 |
sdfsdf
|
36025 |
+
sdfsfd
|
36026 |
sdlkfj
|
36027 |
seaddons
|
36028 |
seahawks jers
|
36035 |
search engines list
|
36036 |
search engines posi
|
36037 |
search engines pref
|
36038 |
+
search expired domain
|
36039 |
+
search expiring domain
|
36040 |
search ffor
|
36041 |
search gogle
|
36042 |
search master knowledge
|
36043 |
search optim
|
36044 |
search porn
|
36045 |
+
search_engine_you
|
36046 |
+
search_engines_you
|
36047 |
+
search_firm
|
36048 |
+
search-engine-
|
36049 |
+
search-engine-you
|
36050 |
+
search-engines-
|
36051 |
+
search-engines-you
|
36052 |
+
search-expired-
|
36053 |
+
search-expiring-
|
36054 |
search-gogle
|
36055 |
search-optim
|
36056 |
search-porn
|
36057 |
+
searchengine-
|
36058 |
searchengine.
|
36059 |
+
searchengine/
|
36060 |
+
searchengines-
|
36061 |
+
searchengines.
|
36062 |
+
searchengines/
|
36063 |
searchhing
|
36064 |
searching
|
36065 |
searchoptim
|
36066 |
searchporn
|
36067 |
+
seat cover shop
|
36068 |
seat presently
|
36069 |
+
seat-cover-shop
|
36070 |
+
seatcovershop
|
36071 |
seawaypab
|
36072 |
sec-leading
|
36073 |
secara free
|
36096 |
secureimage
|
36097 |
securesmtp
|
36098 |
security ip camera
|
36099 |
+
security quantity
|
36100 |
security-for
|
36101 |
security-ip-camera
|
36102 |
+
security-quantity
|
36103 |
see this blog
|
36104 |
see this site
|
36105 |
see this weblog
|
36106 |
see this website
|
36107 |
+
see your expertise
|
36108 |
seek engines
|
36109 |
seek-engines
|
36110 |
seeking for info
|
36111 |
+
seeking garbled
|
36112 |
seeking prospect
|
36113 |
seeking-prospect
|
36114 |
seekingman
|
36157 |
selecting-great-white
|
36158 |
self google
|
36159 |
self on instagram
|
36160 |
+
self-coin
|
36161 |
self-google
|
36162 |
self-help
|
36163 |
self-on-instagram
|
36164 |
+
selfcoin
|
36165 |
selfgoogle
|
36166 |
selfiestick
|
36167 |
sell dump
|
36177 |
selling-machine
|
36178 |
selllancel
|
36179 |
sellnow
|
36180 |
+
selot terlengkap
|
36181 |
+
selot-terlengkap
|
36182 |
sembol clan
|
36183 |
sembol-clan
|
36184 |
send earn
|
36216 |
seo barn
|
36217 |
seo blog
|
36218 |
seo bul
|
36219 |
+
seo business
|
36220 |
seo buy
|
36221 |
seo check
|
36222 |
seo cms
|
36262 |
seo-barn
|
36263 |
seo-blog
|
36264 |
seo-bul
|
36265 |
+
seo-business
|
36266 |
seo-buy
|
36267 |
seo-check
|
36268 |
seo-cms
|
36300 |
seo-widget
|
36301 |
seo-wise
|
36302 |
seo-with
|
36303 |
+
seo-x-business
|
36304 |
seo,
|
36305 |
seo?
|
36306 |
seo1337
|
36309 |
seoagenc
|
36310 |
seoalgo
|
36311 |
seobarn
|
36312 |
+
seobusiness
|
36313 |
seobuy
|
36314 |
seocheck
|
36315 |
seocms
|
36339 |
seowidget
|
36340 |
seowise
|
36341 |
seowith
|
36342 |
+
seoxbusiness
|
36343 |
sepid-shimi
|
36344 |
sepidshimi
|
36345 |
ser aprovado no
|
36353 |
serenityfull
|
36354 |
serial numberul
|
36355 |
serial-numberul
|
|
|
36356 |
serie tv 2020
|
36357 |
serie tv 2021
|
36358 |
+
serie tv 2022
|
36359 |
serie-tv-2020
|
36360 |
serie-tv-2021
|
36361 |
+
serie-tv-2022
|
36362 |
series erotic
|
|
|
36363 |
series tv 2020
|
36364 |
series tv 2021
|
36365 |
+
series tv 2022
|
36366 |
series-erotic
|
|
|
36367 |
series-tv-2020
|
36368 |
series-tv-2021
|
36369 |
+
series-tv-2022
|
36370 |
serieserotic
|
36371 |
seriestv
|
36372 |
serious ad invest
|
36390 |
servantappear
|
36391 |
served bitch
|
36392 |
served-bitch
|
|
|
36393 |
server 2020
|
36394 |
server 2021
|
36395 |
+
server 2022
|
36396 |
server coaching
|
36397 |
server download
|
|
|
36398 |
server-2020
|
36399 |
server-2021
|
36400 |
+
server-2022
|
36401 |
server-coaching
|
36402 |
server-download
|
36403 |
server.download
|
|
|
36404 |
server2020
|
36405 |
server2021
|
36406 |
+
server2022
|
36407 |
service near me
|
36408 |
service near you
|
36409 |
service now!
|
36421 |
services/service
|
36422 |
servicii profes
|
36423 |
servicii-profes
|
36424 |
+
servicio calenta
|
36425 |
+
servicio de reparacion
|
36426 |
+
servicio electro
|
36427 |
servicio postventa
|
36428 |
servicio servicio
|
36429 |
servicio tan robusto
|
36430 |
+
servicio tecnico calenta
|
36431 |
+
servicio tecnico electro
|
36432 |
servicio tecnico madrid
|
36433 |
servicio técnico madrid
|
36434 |
servicio tecnico oficial
|
36435 |
servicio técnico oficial
|
36436 |
+
servicio-calenta
|
36437 |
+
servicio-de-reparacion
|
36438 |
+
servicio-electro
|
36439 |
servicio-postventa
|
36440 |
servicio-servicio
|
36441 |
servicios los servicios
|
36444 |
servicios-pirata
|
36445 |
servicios-servicio
|
36446 |
servicios: servicio
|
36447 |
+
serviciotecnico
|
36448 |
servicos prestado
|
36449 |
serviços prestado
|
36450 |
servicos-prestado
|
36481 |
several websites can
|
36482 |
several-opportune
|
36483 |
sex advice
|
36484 |
+
sex beba
|
36485 |
sex blog
|
36486 |
sex budd
|
36487 |
sex cam
|
36488 |
+
sex capade
|
36489 |
+
sex chat
|
36490 |
sex clermont
|
36491 |
sex club
|
36492 |
sex dat
|
36506 |
sex kat
|
36507 |
sex kontakt
|
36508 |
sex live
|
36509 |
+
sex love
|
36510 |
sex mama
|
36511 |
sex mount
|
36512 |
sex movie
|
36513 |
sex mp
|
36514 |
sex naked
|
36515 |
+
sex on video
|
36516 |
sex papa
|
36517 |
sex pc
|
36518 |
sex porn
|
36539 |
sex zit je
|
36540 |
sex_
|
36541 |
sex-advice
|
36542 |
+
sex-beba
|
36543 |
sex-blog
|
36544 |
sex-budd
|
36545 |
sex-cam
|
36546 |
+
sex-capade
|
36547 |
+
sex-chat
|
36548 |
sex-clermont
|
36549 |
sex-club
|
36550 |
sex-dat
|
36565 |
sex-kat
|
36566 |
sex-kontakt
|
36567 |
sex-live
|
36568 |
+
sex-love
|
36569 |
sex-mama
|
36570 |
sex-mount
|
36571 |
sex-movie
|
36572 |
sex-mp
|
36573 |
sex-naked
|
36574 |
+
sex-on-video
|
36575 |
sex-papa
|
36576 |
sex-pc
|
36577 |
sex-porn
|
36602 |
sex>
|
36603 |
sex2call
|
36604 |
sexadvice
|
36605 |
+
sexbeba
|
36606 |
sexblog
|
36607 |
sexbudd
|
36608 |
sexcam
|
36609 |
+
sexcapade
|
36610 |
+
sexchat
|
36611 |
sexclub
|
36612 |
sexdat
|
36613 |
sexelist
|
36625 |
sexkat
|
36626 |
sexkontakt
|
36627 |
sexlive
|
36628 |
+
sexlove
|
36629 |
sexmama
|
36630 |
sexmount
|
36631 |
sexmovie
|
36638 |
sexo-brutal
|
36639 |
sexo-mon
|
36640 |
sexomon
|
36641 |
+
sexonvideo
|
36642 |
sexpapa
|
36643 |
sexpc
|
36644 |
sexporn
|
36678 |
sexvid
|
36679 |
sexvirgin
|
36680 |
sexweb
|
36681 |
+
sexy baccarat
|
36682 |
sexy blog
|
36683 |
sexy escort
|
36684 |
sexy eskort
|
36700 |
sexy women
|
36701 |
sexy_
|
36702 |
sexy-app
|
36703 |
+
sexy-baccarat
|
36704 |
sexy-blog
|
36705 |
sexy-escort
|
36706 |
sexy-eskort
|
36730 |
sexy.php
|
36731 |
sexy2call
|
36732 |
sexyapp
|
36733 |
+
sexybaccarat
|
36734 |
sexyblog
|
36735 |
sexyescort
|
36736 |
sexyeskort
|
36751 |
sg-launch
|
36752 |
sgames.co
|
36753 |
sglaunch
|
36754 |
+
shade theme
|
36755 |
+
shade-theme
|
36756 |
shag.ru
|
36757 |
shame on google
|
36758 |
shanghai date
|
36891 |
shemale-porn
|
36892 |
shemale-sex
|
36893 |
shemale-vid
|
36894 |
+
shiba coin
|
36895 |
+
shiba-coin
|
36896 |
+
shibacoin
|
36897 |
shield your self
|
36898 |
shift dress
|
36899 |
shift-dress
|
36900 |
shiftdress
|
36901 |
+
shipping winning
|
36902 |
+
shipping-winning
|
36903 |
shirt cease
|
36904 |
shirt cheap
|
36905 |
shirt custom
|
37012 |
shoeonline
|
37013 |
shoeout
|
37014 |
shoepromo
|
|
|
37015 |
shoes 2020
|
37016 |
shoes 2021
|
37017 |
+
shoes 2022
|
37018 |
shoes america
|
37019 |
shoes announce
|
37020 |
shoes dior
|
37031 |
shoes web store
|
37032 |
shoes woman
|
37033 |
shoes women
|
|
|
37034 |
shoes-2020
|
37035 |
shoes-2021
|
37036 |
+
shoes-2022
|
37037 |
shoes-america
|
37038 |
shoes-cheap
|
37039 |
shoes-cloth
|
37056 |
shoes.mobi
|
37057 |
shoes.name
|
37058 |
shoes+
|
|
|
37059 |
shoes2020
|
37060 |
shoes2021
|
37061 |
+
shoes2022
|
37062 |
shoesale
|
37063 |
shoesamerica
|
37064 |
shoescloth
|
37076 |
shoesuk
|
37077 |
shoesus
|
37078 |
shoeuk
|
37079 |
+
shonuji
|
37080 |
shoot-tequila
|
37081 |
shop bán phụ
|
37082 |
shop blog
|
37089 |
shop makeup
|
37090 |
shop online
|
37091 |
shop our homecoming
|
37092 |
+
shop place near
|
37093 |
+
shop places near
|
37094 |
shop sell perfume
|
37095 |
shop sells perfume
|
37096 |
shop thai
|
37111 |
shop-online
|
37112 |
shop-our-homecoming
|
37113 |
shop-pin
|
37114 |
+
shop-place-near
|
37115 |
+
shop-places-near
|
37116 |
shop-shoe
|
37117 |
shop-thai
|
37118 |
shop-to-you
|
37171 |
short ugg
|
37172 |
short-bodycon
|
37173 |
short-ugg
|
37174 |
+
shortedlink
|
37175 |
shorttermloan
|
37176 |
shortugg
|
37177 |
shot.you
|
37216 |
si#mple
|
37217 |
sia ottimo
|
37218 |
sia-ottimo
|
37219 |
+
sialis0
|
37220 |
+
sialis1
|
37221 |
+
sialis2
|
37222 |
+
sialis3
|
37223 |
+
sialis4
|
37224 |
+
sialis5
|
37225 |
+
sialis6
|
37226 |
+
sialis7
|
37227 |
+
sialis8
|
37228 |
+
sialis9
|
37229 |
sibutramine
|
37230 |
+
side promo
|
37231 |
+
side-promo
|
37232 |
+
sidepromo
|
37233 |
sidify prog
|
37234 |
sidify-prog
|
37235 |
sieg heil
|
37354 |
sistemas-bolsa
|
37355 |
sistemas-populare
|
37356 |
sistershit
|
|
|
|
|
37357 |
site ::
|
37358 |
site !
|
|
|
37359 |
site (:
|
37360 |
site =)
|
37361 |
+
site about animal
|
37362 |
site amor
|
37363 |
site and comment
|
37364 |
site and save
|
37373 |
site is extreme
|
37374 |
site is fastidious
|
37375 |
site is invaluable
|
37376 |
+
site is practical
|
37377 |
site is priceless
|
37378 |
+
site is really practical
|
37379 |
site is truly
|
37380 |
site link
|
37381 |
site load speed
|
37385 |
site now ;)
|
37386 |
site offer
|
37387 |
site offic
|
37388 |
+
site optim
|
37389 |
site owner
|
37390 |
site particular
|
37391 |
site platform
|
37394 |
site proprietor
|
37395 |
site provid
|
37396 |
site que fale
|
37397 |
+
site selot
|
37398 |
+
site stresser
|
37399 |
site taste
|
37400 |
site technique
|
37401 |
site theme
|
37419 |
site-link
|
37420 |
site-offer
|
37421 |
site-offic
|
37422 |
+
site-optim
|
37423 |
site-owner
|
37424 |
site-particular
|
37425 |
site-platform
|
37427 |
site-post
|
37428 |
site-proprietor
|
37429 |
site-provid
|
37430 |
+
site-selot
|
37431 |
+
site-stresser
|
37432 |
site-taste
|
37433 |
site-technique
|
37434 |
site-theme
|
37441 |
site:-
|
37442 |
site:)
|
37443 |
site? my web
|
|
|
|
|
37444 |
site.vip
|
37445 |
site/essay
|
37446 |
site24
|
37467 |
sitemizi-siyaret
|
37468 |
sitemizi-ziyaret
|
37469 |
siteoffic
|
37470 |
+
siteoptim
|
37471 |
sites and blogs
|
37472 |
sites luke
|
37473 |
sites on the internet
|
37477 |
sites24
|
37478 |
sitesi tıkla
|
37479 |
sitesi-tıkla
|
37480 |
+
sitestresser
|
37481 |
siteuffic
|
37482 |
sitevip
|
37483 |
siteweb
|
37495 |
sitougg
|
37496 |
situs ilegal
|
37497 |
situs judi
|
37498 |
+
situs online
|
37499 |
+
situs permainan
|
37500 |
situs poker
|
37501 |
situs qq
|
37502 |
+
situs slot
|
37503 |
situs togel
|
37504 |
+
situs_slot
|
37505 |
situs-ilegal
|
37506 |
situs-judi
|
37507 |
+
situs-online
|
37508 |
+
situs-permainan
|
37509 |
situs-poker
|
37510 |
situs-qq
|
37511 |
+
situs-slot
|
37512 |
situs-togel
|
37513 |
situsqq
|
37514 |
siutpd
|
37542 |
skilledblog
|
37543 |
skillset expert
|
37544 |
skillset-expert
|
37545 |
+
skin care cosmetic
|
37546 |
skin club
|
37547 |
+
skin concept
|
37548 |
skin pigment
|
37549 |
skin_pigment
|
37550 |
+
skin-care-cosmetic
|
37551 |
skin-care-review
|
37552 |
skin-club
|
37553 |
+
skin-concept
|
37554 |
skin-pigment
|
37555 |
skincare-review
|
37556 |
skincare-work
|
37557 |
skincarereview
|
37558 |
skincarework
|
37559 |
skinclub
|
37560 |
+
skinconcept
|
37561 |
skinnys review
|
37562 |
skinnys-review
|
37563 |
skinnysreview
|
37584 |
skortimber
|
37585 |
skup-aut
|
37586 |
skup,aut
|
37587 |
+
sky pharm
|
37588 |
+
sky-pharm
|
37589 |
+
skypharm
|
37590 |
skyrocket you
|
37591 |
skyrocket-you
|
37592 |
+
sleazy attorn
|
37593 |
sleazy lawyer
|
37594 |
+
sleazy-attorn
|
37595 |
sleazy-lawyer
|
37596 |
sledge baseball
|
37597 |
sledge bat
|
37616 |
slipperskhaki
|
37617 |
slme genuine
|
37618 |
slongchamp
|
37619 |
+
slot depo
|
37620 |
+
slot gacor
|
37621 |
+
slot game
|
37622 |
slot machine
|
37623 |
+
slot online
|
37624 |
+
slot qq
|
37625 |
+
slot tempat
|
37626 |
+
slot terbaik
|
37627 |
+
slot terbesar
|
37628 |
+
slot terga
|
37629 |
+
slot terlengkap
|
37630 |
+
slot terpercaya
|
37631 |
+
slot_gacor
|
37632 |
+
slot-depo
|
37633 |
+
slot-gacor
|
37634 |
+
slot-game
|
37635 |
slot-machine
|
37636 |
+
slot-online
|
37637 |
+
slot-qq
|
37638 |
+
slot-tempat
|
37639 |
+
slot-terbaik
|
37640 |
+
slot-terbesar
|
37641 |
+
slot-terga
|
37642 |
+
slot-terlengkap
|
37643 |
+
slot-terpercaya
|
37644 |
+
slotgacor
|
37645 |
slotmachine
|
37646 |
+
slotonline
|
37647 |
+
slotqq
|
37648 |
slots blackjack
|
37649 |
slots machine
|
37650 |
+
slots online
|
37651 |
slots rtp
|
37652 |
+
slots_on_the_internet
|
37653 |
slots-blackjack
|
37654 |
slots-machine
|
37655 |
+
slots-on-the-internet
|
37656 |
+
slots-online
|
37657 |
slots-rtp
|
37658 |
slots, blackjack
|
37659 |
slotsmachine
|
37715 |
smarketoreview
|
37716 |
smarketosecret
|
37717 |
smarketosoftware
|
37718 |
+
smart casino
|
37719 |
smart hoverboard
|
37720 |
smart-balance
|
37721 |
+
smart-buy
|
37722 |
+
smart-casino
|
37723 |
smart-drug
|
37724 |
smart-hoverboard
|
37725 |
smart-watch-gps
|
37726 |
smartbalance
|
37727 |
smartbeting
|
37728 |
smartbets
|
37729 |
+
smartbuy
|
37730 |
+
smartcasino
|
37731 |
smartdrug
|
37732 |
smarthoverboard
|
37733 |
smartly written article
|
37739 |
smith-sold
|
37740 |
smithsold
|
37741 |
smm pannel
|
37742 |
+
smm supreme
|
37743 |
+
smm-supreme
|
37744 |
+
smmsupreme
|
37745 |
smnall
|
37746 |
smok priv
|
37747 |
smok-priv
|
37758 |
smurf account
|
37759 |
smurf-account
|
37760 |
smurfaccount
|
37761 |
+
snabb leveran
|
37762 |
+
snabb-leveran
|
37763 |
snapback-cap
|
37764 |
snapbacks
|
37765 |
snapchat ++
|
37766 |
snapchat intro
|
37767 |
+
snapchat like
|
37768 |
snapchat monetiz
|
37769 |
snapchat money
|
37770 |
snapchat privado
|
37772 |
snapchat you tube
|
37773 |
snapchat youtube
|
37774 |
snapchat-intro
|
37775 |
+
snapchat-like
|
37776 |
snapchat-monetiz
|
37777 |
snapchat-money
|
37778 |
snapchat-privado
|
37854 |
socaltms
|
37855 |
soccer betting
|
37856 |
soccer jersey sale
|
37857 |
+
soccer wager
|
37858 |
soccer-betting
|
37859 |
soccer-jersey-sale
|
37860 |
+
soccer-wager
|
37861 |
soccerbet
|
37862 |
soccerjerseyclub
|
37863 |
soccerjerseysale
|
37864 |
soccerjerseysclub
|
37865 |
+
soccerwager
|
37866 |
sociable worker
|
37867 |
social butler
|
37868 |
social buzz
|
37911 |
softsecret
|
37912 |
software beneath
|
37913 |
software house
|
37914 |
+
software kasir
|
37915 |
software program operate
|
37916 |
software secret
|
37917 |
software-beneath
|
37918 |
software-house
|
37919 |
+
software-kasir
|
37920 |
software-program-operate
|
37921 |
software-secret
|
37922 |
software.in
|
37990 |
solicitar un presta
|
37991 |
solicitar-un-presta
|
37992 |
solicitous afternoon
|
37993 |
+
solidcord german
|
37994 |
+
solidcord philip
|
37995 |
+
solidcord platform
|
37996 |
+
solidcord-platform
|
37997 |
+
solidcordplatform
|
37998 |
+
solidray german
|
37999 |
+
solidray official
|
38000 |
+
solidray philip
|
38001 |
+
solidray platform
|
38002 |
+
solidray-german
|
38003 |
+
solidray-official
|
38004 |
+
solidray-philip
|
38005 |
+
solidray-platform
|
38006 |
+
solidraygerman
|
38007 |
+
solidrayofficial
|
38008 |
+
solidrayphilip
|
38009 |
+
solidrayplatform
|
38010 |
solo cheat
|
38011 |
solo-cheat
|
38012 |
solução
|
38027 |
some %
|
38028 |
some coinage
|
38029 |
some extra ass
|
38030 |
+
some free gem
|
38031 |
some functionalitie
|
38032 |
some genuinely great
|
38033 |
some ideas are new
|
38037 |
some real interest
|
38038 |
some really interest
|
38039 |
some-coinage
|
38040 |
+
some-free-gem
|
38041 |
some-functionalitie
|
38042 |
somedias
|
38043 |
somee one
|
38061 |
soon:)
|
38062 |
sosial media
|
38063 |
sosial-media
|
38064 |
+
soulmate sketch
|
38065 |
+
soulmate-sketch
|
38066 |
+
soulmatesketch
|
38067 |
sound like you know
|
38068 |
source blossom
|
38069 |
source of incomes
|
38119 |
sparkle-ugg
|
38120 |
sparkleugg
|
38121 |
speaking approximate
|
38122 |
+
speaking learning
|
38123 |
special approximate
|
38124 |
special daay
|
38125 |
special-approximate
|
38130 |
specials-wood
|
38131 |
specialty-transfer
|
38132 |
specialtytransfer
|
38133 |
+
specific as feasible
|
38134 |
specific gift
|
38135 |
specific-gift
|
38136 |
+
specifics as feasible
|
38137 |
specifucally
|
38138 |
+
speculative institute
|
38139 |
spedified
|
38140 |
speed proxi
|
38141 |
speed proxy
|
38166 |
spicy-bbw
|
38167 |
spider solitaire
|
38168 |
spider-solitaire
|
38169 |
+
spiel automat
|
38170 |
+
spiel casino
|
38171 |
+
spiel-automat
|
38172 |
+
spiel-casino
|
38173 |
+
spielautomat
|
38174 |
+
spielcasino
|
38175 |
spielleiterin be
|
38176 |
spielleiterin ist
|
38177 |
spilivanie derev'yev
|
38178 |
spilivanie derev’yev
|
38179 |
+
spilivanie derevyev
|
38180 |
+
spilivanie-derevyev
|
38181 |
spip.asp
|
38182 |
spip.cfm
|
38183 |
spip.ctr
|
38285 |
sprawdzone narzedzia
|
38286 |
sprawdzone narzędzia
|
38287 |
sprawdzone-narzedzia
|
|
|
38288 |
sprawdzonenarzedzia
|
|
|
38289 |
sprinkler tune
|
38290 |
sprinkler-tune
|
38291 |
sprinklertune
|
38292 |
+
sprinter awning
|
38293 |
+
sprinter body
|
38294 |
sprinter repair
|
38295 |
+
sprinter-awning
|
38296 |
+
sprinter-body
|
38297 |
sprinter-repair
|
38298 |
sprzataniu powier
|
38299 |
sprzataniu-powier
|
38396 |
steroid-satin
|
38397 |
steroid-scam
|
38398 |
steroid-siparis
|
38399 |
+
steroidapoteket
|
38400 |
steroidcounter
|
38401 |
steroidfake
|
38402 |
steroidler online
|
38423 |
steroidsripoff
|
38424 |
steroidsscam
|
38425 |
stevewynnloan
|
38426 |
+
stew about hosting
|
38427 |
+
stew about upgrade
|
38428 |
stewart furniture
|
38429 |
stewart patio
|
38430 |
stewart-furniture
|
38565 |
strategies-for
|
38566 |
strategii binarny
|
38567 |
strategii-binarny
|
38568 |
+
strategy a visit
|
38569 |
strategy for increasing more
|
38570 |
strategy-for
|
38571 |
stratificat.
|
38669 |
stumpmaster
|
38670 |
stunning blog
|
38671 |
stunning brilliance
|
38672 |
+
stunning page
|
38673 |
+
stunning post
|
38674 |
+
stunning quest
|
|
|
|
|
38675 |
stunning site
|
38676 |
+
stunning story
|
|
|
38677 |
stunning web
|
38678 |
stunningq
|
38679 |
style design for you
|
38695 |
sua postagem
|
38696 |
sua-mulher
|
38697 |
sua-pagina
|
|
|
38698 |
sua-postagem
|
38699 |
sub & fav
|
38700 |
sub & like
|
38759 |
substance deal
|
38760 |
substance-deal
|
38761 |
substancedeal
|
38762 |
+
substantive congestion
|
38763 |
subtitle indo
|
38764 |
subtitle-indo
|
38765 |
subtitleindo
|
38791 |
successblog
|
38792 |
successful article
|
38793 |
successful blog
|
38794 |
+
successful marketing
|
38795 |
successful page
|
38796 |
successful post
|
38797 |
successful site
|
38798 |
successful web
|
38799 |
successful-article
|
38800 |
successful-blog
|
38801 |
+
successful-marketing
|
38802 |
successful-page
|
38803 |
successful-post
|
38804 |
successful-site
|
38904 |
super-comp
|
38905 |
super-fortnite
|
38906 |
super-locksmith
|
38907 |
+
super-positive customer
|
38908 |
+
super-positive-customer
|
38909 |
super-real
|
38910 |
superaffiliate
|
38911 |
superarticle
|
38944 |
superiorcompan
|
38945 |
superiorresourc
|
38946 |
superiorsport
|
38947 |
+
superlative thesis
|
38948 |
superlocksmith
|
38949 |
superseller
|
38950 |
superstar class
|
39072 |
swarovski-jp
|
39073 |
swarovskijap
|
39074 |
swarovskijp
|
39075 |
+
swedish massage
|
39076 |
+
swedish_massage
|
39077 |
+
swedish-massage
|
39078 |
+
swedishmassage
|
39079 |
sweet article
|
39080 |
sweet blog
|
39081 |
sweet cum
|
39237 |
takie poglosk
|
39238 |
takie pogłosk
|
39239 |
takie-poglosk
|
39240 |
+
takim blogu
|
39241 |
takin note
|
39242 |
takin-note
|
39243 |
taking curcumin
|
39244 |
taking-curcumin
|
39245 |
+
takipci hilesi
|
39246 |
+
takipçi hilesi
|
39247 |
takipci satin
|
39248 |
takipçi satın
|
39249 |
takipci_satin
|
39250 |
+
takipci-hilesi
|
39251 |
takipci-satin
|
39252 |
takje care
|
39253 |
takje-care
|
39378 |
taschenleerer leder
|
39379 |
taschenleerer-leder
|
39380 |
taschenlongchamp
|
39381 |
+
tasinma firmasi
|
39382 |
+
tasinma-firmasi
|
39383 |
+
taşınma firması
|
39384 |
taskss
|
39385 |
tastegood.co
|
39386 |
tatoo cheap
|
39436 |
tatuagens feminin
|
39437 |
tatuagens_
|
39438 |
tatuagens-feminin
|
39439 |
+
tavsiye 360
|
39440 |
tavsiye filmler izle
|
39441 |
+
tavsiye-360
|
39442 |
tavsiye-filmler-izle
|
39443 |
+
tavsiye360
|
39444 |
tax book
|
39445 |
tax debt
|
39446 |
tax idea
|
39479 |
teamwork-coach
|
39480 |
teamworkcoach
|
39481 |
technique kids
|
39482 |
+
technique of blog
|
39483 |
techniue
|
39484 |
technolgy news
|
39485 |
technolgy-news
|
39487 |
technological-globe
|
39488 |
tecnicas para voce
|
39489 |
técnicas para você
|
39490 |
+
tecnico electrodomestico
|
39491 |
+
tecnico oficial
|
39492 |
tecnico y asistencia tecnica
|
39493 |
técnico y asistencia tecnica
|
39494 |
tecnico y servicio tecnica
|
39495 |
técnico y servicio tecnica
|
39496 |
+
tecnico-electrodomestico
|
39497 |
+
tecnico-oficial
|
39498 |
+
tecnicooficial
|
39499 |
teen cam
|
39500 |
teen female
|
39501 |
teen lesb
|
39526 |
teenpussy
|
39527 |
teens cam
|
39528 |
teens porn
|
39529 |
+
teens sex
|
39530 |
teens webcam
|
39531 |
teens-cam
|
39532 |
teens-porn
|
39533 |
+
teens-sex
|
39534 |
teens-webcam
|
39535 |
teenscam
|
39536 |
teensex
|
39537 |
teensporn
|
39538 |
+
teenssex
|
39539 |
teenswebcam
|
39540 |
teenvirgin
|
39541 |
teenwebcam
|
39544 |
teeshollis
|
39545 |
teeth teeth
|
39546 |
tegs:
|
39547 |
+
tek tek google
|
39548 |
+
tek-tek-google
|
39549 |
tekhbez
|
39550 |
+
tele entulho
|
39551 |
tele gratuit
|
39552 |
tele realite
|
39553 |
télé réalité
|
39554 |
+
tele-entulho
|
39555 |
tele-gratuit
|
39556 |
tele-realite
|
39557 |
télé-réalité
|
39558 |
+
teleentulho
|
39559 |
telefono de informacion
|
39560 |
teléfono de información
|
39561 |
telegratuit
|
39562 |
telepon-
|
39563 |
telerealite
|
39564 |
téléréalité
|
39565 |
+
television channel for
|
39566 |
+
television channels for
|
39567 |
telhadista-em
|
39568 |
telling everything concern
|
39569 |
tem.p.test
|
39593 |
tengo una web
|
39594 |
tennisstream
|
39595 |
tenormin
|
39596 |
+
teor de qualidade
|
39597 |
terima barang
|
39598 |
terima-barang
|
39599 |
term dinner
|
39625 |
test.in
|
39626 |
test.tumblr
|
39627 |
test1.
|
39628 |
+
tested resume
|
39629 |
testimonail
|
39630 |
testosterona
|
39631 |
testosterone-boost
|
39735 |
that youre
|
39736 |
that-gia-re
|
39737 |
that-i-may-subscribe
|
|
|
39738 |
that, great article
|
39739 |
that, great blog
|
39740 |
that, great page
|
39886 |
theme for blog
|
39887 |
theme generat
|
39888 |
theme of your blog
|
39889 |
+
theme of your page
|
39890 |
theme of your site
|
39891 |
+
theme of your web
|
39892 |
theme sale
|
39893 |
theme-basic
|
39894 |
theme-generat
|
39937 |
thetwo
|
39938 |
theuniversity
|
39939 |
they are discussing online
|
39940 |
+
they dont
|
39941 |
they loophole
|
39942 |
they the t
|
39943 |
they-loophole
|
40020 |
this blog:
|
40021 |
this blog's post
|
40022 |
this blog’s post
|
40023 |
+
this blogs post
|
40024 |
this complete blog
|
40025 |
this complete page
|
40026 |
this complete post
|
40065 |
this post will assist
|
40066 |
this proficiency
|
40067 |
this publish
|
40068 |
+
this pure article
|
40069 |
+
this pure blog
|
40070 |
+
this pure page
|
40071 |
+
this pure site
|
40072 |
+
this pure web
|
40073 |
this site before
|
40074 |
this site certain
|
40075 |
this site defin
|
40165 |
thomassabosale
|
40166 |
thomassabouk
|
40167 |
thomassabous
|
40168 |
+
thor love
|
40169 |
+
thor-love
|
40170 |
+
thorlove
|
40171 |
thornhill ambassador
|
40172 |
thornhill-ambassador
|
40173 |
thornhillambassador
|
40189 |
thousand%
|
40190 |
thportfol
|
40191 |
three %
|
40192 |
+
three posts are $
|
40193 |
thriloed
|
40194 |
thrity
|
40195 |
throat blow
|
40207 |
through the web
|
40208 |
through this blog
|
40209 |
through this web
|
40210 |
+
through your article
|
40211 |
through your blog
|
40212 |
+
through your page
|
40213 |
+
through your post
|
40214 |
+
through your web
|
40215 |
through-a-blog
|
40216 |
through-that-blog
|
40217 |
through-that-web
|
40309 |
tiktok beğeni
|
40310 |
tiktok fan
|
40311 |
tiktok intro
|
40312 |
+
tiktok like
|
40313 |
tiktok monetiz
|
40314 |
tiktok money
|
40315 |
tiktok privado
|
40320 |
tiktok-fan
|
40321 |
tiktok-hack
|
40322 |
tiktok-intro
|
40323 |
+
tiktok-like
|
40324 |
tiktok-monetiz
|
40325 |
tiktok-money
|
40326 |
tiktok-privado
|
40429 |
tinydick
|
40430 |
tinytowtim
|
40431 |
tion?i
|
40432 |
+
tip:the
|
40433 |
tipblog
|
40434 |
tipo más habit
|
40435 |
tipo-mas-habit
|
40436 |
tips beberapa
|
40437 |
tips blog
|
40438 |
tips daily
|
|
|
40439 |
tips for 2020
|
40440 |
tips for 2021
|
40441 |
+
tips for 2022
|
40442 |
tips for a success
|
40443 |
tips for success
|
40444 |
tips membeli
|
40510 |
to daylight
|
40511 |
to ddo
|
40512 |
to gget
|
40513 |
+
to look to for
|
40514 |
to my blog
|
40515 |
to my page
|
40516 |
to my sire
|
40540 |
to-truly
|
40541 |
to.p.ic
|
40542 |
to.pi.c
|
40543 |
+
toan dau tu
|
40544 |
+
toàn đầu tư
|
40545 |
+
toan-dau-tu
|
40546 |
toasterovensnow
|
40547 |
tobuy.in
|
40548 |
today news
|
40657 |
top stop
|
40658 |
top tier
|
40659 |
top top
|
40660 |
+
top venture capital
|
40661 |
top vid
|
40662 |
top viral
|
40663 |
top_bank
|
40694 |
top-tier
|
40695 |
top-tool
|
40696 |
top-top
|
40697 |
+
top-venture-capital
|
40698 |
top-vid
|
40699 |
top-viral
|
40700 |
top.asses
|
40713 |
topbvlgar
|
40714 |
topcontractor
|
40715 |
topdatabase
|
40716 |
+
topdatalist
|
40717 |
topfakeid
|
40718 |
topforum
|
40719 |
topfreecam
|
40803 |
totosly
|
40804 |
touche. great
|
40805 |
touche. so
|
40806 |
+
tour site
|
40807 |
tour-discount
|
40808 |
+
tour-site
|
40809 |
tourdiscount
|
40810 |
+
toursite
|
40811 |
towarowe anna lewandowska
|
40812 |
town|
|
40813 |
toys,sex
|
40820 |
tracing service
|
40821 |
tracing-service
|
40822 |
tracingservice
|
40823 |
+
track a phone
|
40824 |
track hyperlink
|
40825 |
+
track-a-phone
|
40826 |
track-back
|
40827 |
track-click
|
40828 |
track-hyperlink
|
40841 |
trackertrace
|
40842 |
trackertracing
|
40843 |
trackhyperlink
|
40844 |
+
tracking a phone
|
40845 |
tracking-a-phone
|
40846 |
tradaoquan
|
40847 |
trade_you
|
40848 |
trading-method
|
40849 |
+
traditional bath design
|
40850 |
+
traditional bathroom design
|
40851 |
+
traffic attorn
|
40852 |
traffic bot
|
40853 |
traffic exchang
|
40854 |
traffic ivy
|
40855 |
+
traffic lawyer
|
40856 |
traffic software
|
40857 |
+
traffic-attorn
|
40858 |
traffic-bot
|
40859 |
traffic-exchang
|
40860 |
traffic-ivy
|
40861 |
+
traffic-lawyer
|
40862 |
traffic-software
|
40863 |
trafficbot
|
40864 |
trafficivy
|
40865 |
trafficvance
|
40866 |
trafficz
|
40867 |
traffscience
|
40868 |
+
trailer counter
|
40869 |
+
trailer fabric
|
40870 |
+
trailer reno
|
40871 |
+
trailer resto
|
40872 |
trailer sale
|
40873 |
+
trailer solar
|
40874 |
+
trailer-counter
|
40875 |
+
trailer-fabric
|
40876 |
+
trailer-reno
|
40877 |
+
trailer-resto
|
40878 |
trailer-sale
|
40879 |
+
trailer-solar
|
40880 |
trailersale
|
40881 |
train pet dog
|
40882 |
training pet dog
|
40933 |
trello freetalk
|
40934 |
trello-freetalk
|
40935 |
tremendous blog
|
40936 |
+
tremendous feminist
|
40937 |
tremendous post
|
40938 |
tremendous site
|
40939 |
tremendous web
|
40969 |
trial a bit
|
40970 |
trial-software-install
|
40971 |
trickphoto
|
40972 |
+
triệu đồng
|
40973 |
trik selalu
|
40974 |
trik-selalu
|
40975 |
trimethoprim
|
40980 |
trimoxazole-tablet
|
40981 |
triviatrivia
|
40982 |
trollapp
|
40983 |
+
trong game
|
40984 |
+
trong-game
|
40985 |
trong-top-5
|
40986 |
trong-top-10
|
40987 |
trong-top-five
|
40994 |
trovaprezzi
|
40995 |
trruly
|
40996 |
truc-tiep-bong-da
|
40997 |
+
truck center
|
40998 |
+
truck centre
|
40999 |
+
truck counter
|
41000 |
+
truck paint
|
41001 |
+
truck reno
|
41002 |
+
truck resto
|
41003 |
+
truck-center
|
41004 |
+
truck-centre
|
41005 |
+
truck-counter
|
41006 |
+
truck-paint
|
41007 |
+
truck-reno
|
41008 |
+
truck-resto
|
41009 |
true search
|
41010 |
truly a fastidious
|
41011 |
truly data you
|
41012 |
+
truly enjoy
|
41013 |
truly fastidious
|
41014 |
truly fruitful
|
41015 |
truly peaked
|
41016 |
+
truly pleasant thing
|
41017 |
truly sharing nice
|
41018 |
truly suppose
|
41019 |
truly thk
|
41020 |
truly typically
|
41021 |
truly very
|
41022 |
truly when some
|
41023 |
+
truly-enjoy
|
41024 |
truly-fastidious
|
41025 |
truly-fruitful
|
41026 |
truly-peaked
|
41045 |
trumptrump
|
41046 |
trumpvote
|
41047 |
trumpwon
|
41048 |
+
trust website
|
41049 |
+
trust-website
|
41050 |
+
trusted website
|
41051 |
+
trusted-website
|
41052 |
+
trusting website
|
41053 |
+
trusting-website
|
41054 |
truth however
|
41055 |
truth teaching article
|
41056 |
truth-however
|
41119 |
turtle-home
|
41120 |
turtlehome
|
41121 |
turystyka
|
41122 |
+
tutor near me
|
41123 |
tutorial.asp
|
41124 |
tutorial.cfm
|
41125 |
tutorial.ctr
|
41149 |
twit.t.
|
41150 |
twitter advert
|
41151 |
twitter intro
|
41152 |
+
twitter like
|
41153 |
twitter monetiz
|
41154 |
twitter money
|
41155 |
twitter privado
|
41159 |
twitter-advert
|
41160 |
twitter-hack
|
41161 |
twitter-intro
|
41162 |
+
twitter-like
|
41163 |
twitter-monetiz
|
41164 |
twitter-money
|
41165 |
twitter-privado
|
41166 |
twitter-shop
|
41167 |
twitter-takipci
|
41168 |
two %
|
41169 |
+
two posts are $
|
41170 |
twoj blog
|
41171 |
twój blog
|
41172 |
twojego blog
|
41206 |
ua-eqt-sup
|
41207 |
uae escort
|
41208 |
uae eskort
|
41209 |
+
uae shop
|
41210 |
uae-escort
|
41211 |
uae-eskort
|
41212 |
+
uae-shop
|
41213 |
+
uae.shop
|
41214 |
uaeescort
|
41215 |
uaeeskort
|
41216 |
uaepearl
|
41217 |
+
uaeshop
|
41218 |
uaewomensclub
|
41219 |
uau incrivel
|
41220 |
uau incrível
|
41627 |
unique-interact
|
41628 |
uniquebroker
|
41629 |
uniqueinteract
|
41630 |
+
unirae
|
41631 |
+
united stattes
|
41632 |
unitedidesign
|
41633 |
+
unitted states
|
41634 |
universal key
|
41635 |
universal-key
|
41636 |
universalkey
|
41637 |
+
university suggest
|
41638 |
+
university_suggest
|
41639 |
+
university-suggest
|
41640 |
unknown.co
|
41641 |
unknown.in
|
41642 |
unknown.pl
|
41670 |
unlockiphone
|
41671 |
unlockmobil
|
41672 |
unlockphone
|
41673 |
+
unlucky reality
|
41674 |
+
unlucky-reality
|
41675 |
unono chaus
|
41676 |
unono-chaus
|
41677 |
unonochaus
|
41765 |
upgrade-your-bed
|
41766 |
upgrade-your-living
|
41767 |
upgradekey
|
41768 |
+
upholstery cost
|
41769 |
+
upholstery couch
|
41770 |
+
upholstery-cost
|
41771 |
+
upholstery-couch
|
41772 |
upload and promo
|
41773 |
upload foto
|
41774 |
upload-file
|
41936 |
uuse
|
41937 |
uustore
|
41938 |
uy/image
|
41939 |
+
uygun fiyatlarla
|
41940 |
+
uygun-fiyatlarla
|
41941 |
uг
|
41942 |
uѕ
|
41943 |
v buck buy
|
42019 |
value-web
|
42020 |
valueble
|
42021 |
valueserver
|
42022 |
+
van bathroom
|
42023 |
+
van body
|
42024 |
+
van counter
|
42025 |
+
van sound
|
42026 |
+
van washing
|
42027 |
+
van-bathroom
|
42028 |
+
van-body
|
42029 |
+
van-counter
|
42030 |
+
van-sound
|
42031 |
+
van-washing
|
42032 |
+
vanguard education
|
42033 |
vanilla balance
|
42034 |
vanilla gift
|
42035 |
vanilla-balance
|
42042 |
vape cart
|
42043 |
vape clearance
|
42044 |
vape cloud
|
42045 |
+
vape daily
|
42046 |
vape e-juice
|
42047 |
vape ejuice
|
42048 |
vape juice
|
42056 |
vape-cart
|
42057 |
vape-clearance
|
42058 |
vape-cloud
|
42059 |
+
vape-daily
|
42060 |
vape-e-juice
|
42061 |
vape-ejuice
|
42062 |
vape-juice
|
42069 |
vapecart
|
42070 |
vapeclearance
|
42071 |
vapecloud
|
42072 |
+
vapedaily
|
42073 |
vapeejuice
|
42074 |
vapejuice
|
42075 |
vapepen
|
42079 |
vaper-ejuice
|
42080 |
vaperejuice
|
42081 |
vapes cart
|
42082 |
+
vapes daily
|
42083 |
vapes kit
|
42084 |
vapes-cart
|
42085 |
+
vapes-daily
|
42086 |
vapes-kit
|
42087 |
vapesave
|
42088 |
vapescart
|
42089 |
+
vapesdaily
|
42090 |
vapestick
|
42091 |
vapo save
|
42092 |
vapo-save
|
42093 |
vapor cloud
|
42094 |
+
vapor daily
|
42095 |
vapor ix
|
42096 |
vapor juice
|
42097 |
vapor pen
|
42098 |
vapor stick
|
42099 |
vapor x
|
42100 |
vapor-cloud
|
42101 |
+
vapor-daily
|
42102 |
vapor-ix
|
42103 |
vapor-juice
|
42104 |
vapor-pen
|
42105 |
vapor-stick
|
42106 |
vapor-x
|
42107 |
vaporcloud
|
42108 |
+
vapordaily
|
42109 |
vaporix
|
42110 |
vaporizer pen
|
42111 |
vaporizer-pen
|
42112 |
vaporjuice
|
42113 |
vaporpen
|
42114 |
+
vapors daily
|
42115 |
+
vapors-daily
|
42116 |
+
vaporsdaily
|
42117 |
vaporstick
|
42118 |
vaporx
|
42119 |
vaposave
|
42120 |
+
vapour daily
|
42121 |
vapour ix
|
42122 |
vapour juice
|
42123 |
vapour pen
|
42124 |
vapour stick
|
42125 |
vapour x
|
42126 |
vapour-cloud
|
42127 |
+
vapour-daily
|
42128 |
vapour-ix
|
42129 |
vapour-juice
|
42130 |
vapour-pen
|
42131 |
vapour-stick
|
42132 |
vapour-x
|
42133 |
vapourcloud
|
42134 |
+
vapourdaily
|
42135 |
vapourix
|
42136 |
vapourizer pen
|
42137 |
vapourizer-pen
|
42138 |
vapourjuice
|
42139 |
+
vapours daily
|
42140 |
+
vapours-daily
|
42141 |
+
vapoursdaily
|
42142 |
vapourstick
|
42143 |
vapourx
|
42144 |
varabella
|
42146 |
variant1
|
42147 |
variant2
|
42148 |
variant3
|
42149 |
+
vay tiền mặt
|
42150 |
vbucks
|
42151 |
vbyj
|
42152 |
vc free
|
42212 |
vergin-porn
|
42213 |
verginporn
|
42214 |
verify itunes should
|
42215 |
+
verify my site
|
42216 |
verify online
|
42217 |
verify their site
|
42218 |
verify-out
|
42306 |
vetementfemme
|
42307 |
vetementhomme
|
42308 |
veterinarnaya
|
42309 |
+
vetranarian
|
42310 |
vetrinary
|
42311 |
vf gratuit
|
42312 |
vf-gratuit
|
42381 |
video it would also
|
42382 |
video magnif
|
42383 |
video marketing
|
42384 |
+
video on sex
|
42385 |
video ought not
|
42386 |
video para canal
|
42387 |
vídeo para canal
|
42415 |
video-erotic
|
42416 |
video-magnif
|
42417 |
video-marketing
|
42418 |
+
video-on-sex
|
42419 |
video-para-canal
|
42420 |
video-poker
|
42421 |
video-pokie
|
42548 |
viewblog
|
42549 |
viewentry
|
42550 |
viewer to click
|
42551 |
+
viewers of article
|
42552 |
+
viewers of blog
|
42553 |
+
viewers of page
|
42554 |
+
viewers of site
|
42555 |
+
viewers of web
|
42556 |
viewers to click
|
42557 |
viewijng
|
42558 |
viewlink
|
42562 |
viewtopic
|
42563 |
vigara
|
42564 |
vigrx
|
42565 |
+
viktminskning
|
42566 |
villa-for-rent
|
42567 |
villas-for-rent
|
42568 |
vimax
|
42648 |
virgin porn
|
42649 |
virgin-porn
|
42650 |
virginporn
|
42651 |
+
virtual coach
|
42652 |
virtual credit
|
42653 |
virtual funds
|
42654 |
virtual sex
|
42655 |
+
virtual-coach
|
42656 |
virtual-credit
|
42657 |
virtual-funds
|
42658 |
virtual-sex
|
42709 |
visit-web
|
42710 |
visitant
|
42711 |
visitar blog
|
42712 |
+
visitar mi sitio
|
42713 |
visitar-blog
|
42714 |
visited android app
|
42715 |
visited blog
|
42796 |
vk.cc
|
42797 |
vkews
|
42798 |
vkgnfx
|
42799 |
+
vod request
|
42800 |
+
vod service
|
42801 |
+
vod-request
|
42802 |
+
vod-service
|
42803 |
vodstreaming
|
42804 |
vogue toms
|
42805 |
vogue-toms
|
43030 |
warfarinonline
|
43031 |
warmjp
|
43032 |
warranty high
|
43033 |
+
warriors jers
|
43034 |
+
warriors-jers
|
43035 |
+
warriorsjers
|
43036 |
wars cheat
|
43037 |
wars hack
|
43038 |
wars-cheat
|
43046 |
warts-garden
|
43047 |
wartsclinic
|
43048 |
wartsgarden
|
43049 |
+
was consice
|
43050 |
was ddoing
|
43051 |
was pretty candy
|
43052 |
wasbusiness
|
43061 |
watch seiko
|
43062 |
watch the best movie
|
43063 |
watch this site
|
43064 |
+
watch this video
|
43065 |
watch-full-length
|
43066 |
watch-hdonline
|
43067 |
watch-instant
|
43070 |
watch-replic
|
43071 |
watch-seiko
|
43072 |
watch-this-site
|
43073 |
+
watch-this-video
|
43074 |
watch-trailer-and
|
43075 |
watch-vid
|
43076 |
watch-watch
|
43093 |
wating for you
|
43094 |
watte ausgestopft
|
43095 |
watte-ausgestopft
|
43096 |
+
wave depression
|
43097 |
+
wave-depression
|
43098 |
way of amateur
|
43099 |
way of blog
|
43100 |
way your design
|
43132 |
wearinbed
|
43133 |
weave-hair
|
43134 |
weavehair
|
43135 |
+
web about animal
|
43136 |
web anal
|
43137 |
web based college
|
43138 |
web blog;
|
43151 |
web is extreme
|
43152 |
web is fastidious
|
43153 |
web is invaluable
|
43154 |
+
web is practical
|
43155 |
web is priceless
|
43156 |
+
web is really practical
|
43157 |
web is truly
|
43158 |
web market
|
43159 |
web online
|
43160 |
web optim
|
43161 |
web owner
|
43162 |
+
web page ;
|
43163 |
+
web page :
|
43164 |
web page ..
|
43165 |
web page …
|
43166 |
web page daily
|
43176 |
web property
|
43177 |
web scheme
|
43178 |
web seo
|
43179 |
+
web sex
|
43180 |
web sie
|
43181 |
web sikte
|
43182 |
web site ..
|
43189 |
web sites post
|
43190 |
web sitte
|
43191 |
web sjte
|
43192 |
+
web stresser
|
43193 |
web sute
|
43194 |
web therefore
|
43195 |
web through google
|
43228 |
web-property
|
43229 |
web-scheme
|
43230 |
web-seo
|
43231 |
+
web-sex
|
43232 |
web-sie
|
43233 |
web-site
|
43234 |
web-sitte
|
43235 |
web-sjte
|
43236 |
web-solution
|
43237 |
+
web-stresser
|
43238 |
web-therefore
|
43239 |
web-traff
|
43240 |
web-user-acquire
|
43254 |
webbmaster
|
43255 |
webcam babe
|
43256 |
webcam site
|
43257 |
+
webcam teen
|
43258 |
webcam-babe
|
43259 |
webcam-site
|
43260 |
+
webcam-teen
|
43261 |
webcambabe
|
43262 |
webcamchat
|
43263 |
webcamsite
|
43264 |
+
webcamteen
|
43265 |
webcontent
|
43266 |
webdesign.co
|
43267 |
webdl
|
43275 |
weblog link
|
43276 |
weblog post
|
43277 |
weblog thank
|
43278 |
+
weblog unintention
|
43279 |
weblog-link
|
43280 |
weblog. thank
|
43281 |
weblogg
|
43303 |
webpage from
|
43304 |
webpage is loading
|
43305 |
webpage it is
|
|
|
43306 |
webpage on regular
|
43307 |
webpage post
|
43308 |
webpage thank
|
43312 |
webpage-for-any
|
43313 |
webpage-from
|
43314 |
webpage-is-loading
|
|
|
43315 |
webpage-visit
|
43316 |
webpage-you
|
43317 |
webpage;
|
43323 |
webpage’s article
|
43324 |
webpage’s blog
|
43325 |
webpage’s post
|
43326 |
+
webpagelink
|
43327 |
webpages article
|
43328 |
webpages blog
|
43329 |
webpages post
|
43348 |
websit was
|
43349 |
websit-was
|
43350 |
website ..
|
43351 |
+
website …
|
43352 |
website anjing
|
43353 |
website as friend
|
43354 |
website bookmark
|
43361 |
website everyday
|
43362 |
website for every
|
43363 |
website from where
|
43364 |
+
website india
|
43365 |
website inquiry
|
43366 |
website is a center
|
43367 |
website is a centre
|
43368 |
+
website is appreciate
|
43369 |
+
website is beneficial
|
43370 |
+
website is benefit
|
43371 |
website is loading
|
43372 |
website it help
|
43373 |
website kami
|
43395 |
website through google
|
43396 |
website traff
|
43397 |
website training
|
43398 |
+
website unintention
|
43399 |
website usa
|
43400 |
website using
|
43401 |
website visit
|
43402 |
+
website was ;
|
43403 |
+
website was :
|
43404 |
website was ..
|
43405 |
website was …
|
43406 |
website was..
|
43420 |
website-everyday
|
43421 |
website-for-essay
|
43422 |
website-for-every
|
43423 |
+
website-india
|
43424 |
website-inquiry
|
43425 |
website-is-loading
|
43426 |
website-it-help
|
43445 |
website; this
|
43446 |
website. thank
|
43447 |
website..
|
43448 |
+
website…
|
43449 |
website.keep
|
43450 |
website's article
|
43451 |
website's post
|
43453 |
website’s post
|
43454 |
website}
|
43455 |
website1
|
43456 |
+
websitelink
|
43457 |
websitelook
|
43458 |
websitenet
|
43459 |
websiteonline
|
43491 |
websolution
|
43492 |
webssite
|
43493 |
webste
|
43494 |
+
webstresser
|
43495 |
websute
|
43496 |
webtherefore
|
43497 |
webviewconsult
|
43536 |
welcome-to-my-site
|
43537 |
welcome-to-my-web
|
43538 |
welcometonginx
|
43539 |
+
welcoming muted
|
43540 |
+
welcoming, muted
|
43541 |
well donme
|
43542 |
well informed people
|
43543 |
well written!
|
43593 |
wewe will
|
43594 |
wewewe
|
43595 |
what assets is
|
43596 |
+
what blog does
|
43597 |
what does turn
|
43598 |
what theyre
|
43599 |
what up dear
|
43600 |
+
what weblog does
|
43601 |
+
what website does
|
43602 |
what youre
|
43603 |
what-blog
|
43604 |
what-does-turn
|
43642 |
where-sell
|
43643 |
where-to-buy
|
43644 |
where-to-get
|
43645 |
+
where-to-purchase
|
43646 |
where-to-sell
|
43647 |
where+can
|
43648 |
where+to
|
43652 |
wheresell
|
43653 |
wheretobuy
|
43654 |
wheretoget
|
43655 |
+
whgile
|
43656 |
+
whho did
|
43657 |
+
whho has
|
43658 |
+
whho will
|
43659 |
which blog platform
|
43660 |
which site platform
|
43661 |
which weblog platform
|
43675 |
whn the
|
43676 |
whn you
|
43677 |
who don know
|
43678 |
+
who dont
|
43679 |
who theyre
|
43680 |
who usess
|
43681 |
+
who youre
|
43682 |
whoa this
|
43683 |
whoa-this
|
43684 |
whoah this
|
43698 |
wholesale hand
|
43699 |
wholesale iphone
|
43700 |
wholesale jers
|
43701 |
+
wholesale jewel
|
43702 |
wholesale jord
|
43703 |
wholesale led
|
43704 |
wholesale mlb
|
43724 |
wholesale-hand
|
43725 |
wholesale-iphone
|
43726 |
wholesale-jers
|
43727 |
+
wholesale-jewel
|
43728 |
wholesale-jord
|
43729 |
wholesale-led
|
43730 |
wholesale-mac
|
43747 |
wholesalefree
|
43748 |
wholesalehand
|
43749 |
wholesalejers
|
|
|
43750 |
wholesalejord
|
43751 |
wholesaleled
|
43752 |
wholesalemac
|
43766 |
whorebutt
|
43767 |
whttp
|
43768 |
whwn choos
|
43769 |
+
why but this
|
43770 |
why designing shabby
|
43771 |
why_designing_shabby
|
43772 |
why-designing-shabby
|
43787 |
więcej tutaj
|
43788 |
wiecej-tutaj
|
43789 |
więcej-tutaj
|
43790 |
+
wiet soort
|
43791 |
+
wiet zaden
|
43792 |
+
wiet-soort
|
43793 |
+
wiet-zaden
|
43794 |
+
wietsoort
|
43795 |
+
wietzaden
|
43796 |
wife app
|
43797 |
wife-app
|
43798 |
wife-tube
|
43859 |
willebijoux
|
43860 |
willesold
|
43861 |
willhemp
|
43862 |
+
willl the
|
43863 |
wilson jers
|
43864 |
wilson-jers
|
43865 |
wilsonjers
|
43911 |
wirh you
|
43912 |
wise quote
|
43913 |
wise-quote
|
43914 |
+
wish online
|
43915 |
+
wish-online
|
43916 |
wishing for blog
|
43917 |
+
wishonline
|
43918 |
wispy lash
|
43919 |
wispy-lash
|
43920 |
witamina jest
|
43936 |
with prepaid plastic
|
43937 |
with professional skill
|
43938 |
with retinoid
|
43939 |
+
with these site
|
43940 |
with thhe
|
43941 |
with this blog
|
43942 |
with this page showing?
|
43977 |
withthose
|
43978 |
withwebtraffic
|
43979 |
withwebvisit
|
43980 |
+
witth my
|
43981 |
+
witth our
|
43982 |
+
witth the
|
43983 |
+
witth this
|
43984 |
+
witth your
|
43985 |
wiuth a
|
43986 |
wiuth the
|
43987 |
wlasciwy blog
|
44089 |
wonderful homepage
|
44090 |
wonderful informative
|
44091 |
wonderful online
|
44092 |
+
wonderful paragraph
|
44093 |
wonderful post
|
44094 |
wonderful publish
|
44095 |
wonderful read!
|
44102 |
wonderful-homepage
|
44103 |
wonderful-informative
|
44104 |
wonderful-online
|
44105 |
+
wonderful-paragraph
|
44106 |
wonderful-post
|
44107 |
wonderful-publish
|
44108 |
wonderful-read
|
44231 |
words-essay
|
44232 |
woriing
|
44233 |
work !!
|
44234 |
+
work doer
|
44235 |
work you have here
|
44236 |
work you write
|
44237 |
+
work-doer
|
44238 |
work-review
|
44239 |
work-you-write
|
44240 |
work!excellent
|
44241 |
work!fantastic
|
44242 |
work!wonderful
|
44243 |
workable symptom
|
44244 |
+
workdoer
|
44245 |
working, great job
|
44246 |
workout-sale
|
44247 |
workoutsale
|
44360 |
write any article
|
44361 |
write any essay
|
44362 |
write any paper
|
44363 |
+
write college homework
|
44364 |
write my article
|
44365 |
write my essay
|
44366 |
write my paper
|
44367 |
write news title
|
44368 |
+
write on the blog
|
44369 |
+
write on the internet
|
44370 |
+
write on the net
|
44371 |
+
write on the page
|
44372 |
+
write on the web
|
44373 |
write subsequent
|
44374 |
write the e-book
|
44375 |
write the ebook
|
44433 |
writinghelper
|
44434 |
writingpaper
|
44435 |
writingservice
|
44436 |
+
written on the blog
|
44437 |
+
written on the internet
|
44438 |
+
written on the net
|
44439 |
+
written on the page
|
44440 |
+
written on the web
|
44441 |
wrote an really
|
44442 |
wrote the e-book
|
44443 |
wtf brand
|
44653 |
y pezone
|
44654 |
y teta
|
44655 |
y tetona
|
44656 |
+
y tte sigo
|
44657 |
y-culo
|
44658 |
y-pezone
|
44659 |
y-teta
|
44675 |
yahoo’s front page
|
44676 |
yahoo’s home page
|
44677 |
yahoospy
|
44678 |
+
yandas medya
|
44679 |
+
yandaş medya
|
44680 |
+
yandas-medya
|
44681 |
+
yandasmedya
|
44682 |
yangin cıkıs
|
44683 |
yangin kapisi
|
44684 |
yangin merdiveni
|
44698 |
yeezy3
|
44699 |
yeezyboost
|
44700 |
yhttp
|
44701 |
+
yil hediyeleri
|
44702 |
+
yil-hediyeleri
|
44703 |
yiur blog
|
44704 |
yiur business
|
44705 |
yiur info
|
44706 |
+
yıl hediyeleri
|
44707 |
yjjcw
|
44708 |
yk cheap
|
44709 |
yk-cheap
|
44797 |
you for the blog
|
44798 |
you for the post
|
44799 |
you for the share
|
44800 |
+
you forthe
|
44801 |
you gucci
|
44802 |
you is very effective
|
44803 |
you mayy
|
44869 |
you’re sill
|
44870 |
you”ll
|
44871 |
you”re
|
44872 |
+
you@example
|
44873 |
you`ll
|
44874 |
you`re
|
44875 |
youcanwear
|
44897 |
your asthma so
|
44898 |
your bed furniture
|
44899 |
your bedroom play
|
44900 |
+
your bitcoin
|
44901 |
your blog kept
|
44902 |
your blog might
|
44903 |
your blog on
|
44928 |
your lover
|
44929 |
your lung area
|
44930 |
your marketer
|
44931 |
+
your marketing
|
44932 |
your mode of describ
|
44933 |
your mode of explain
|
44934 |
your movie to put
|
44965 |
your site really
|
44966 |
your site seem
|
44967 |
your site..
|
44968 |
+
your site…
|
44969 |
your sites prior
|
44970 |
your sites really
|
44971 |
your sites seem
|
45008 |
your wweb
|
45009 |
your zits
|
45010 |
your-account
|
45011 |
+
your-bitcoin
|
45012 |
your-blog
|
45013 |
your-blog-real
|
45014 |
your-blogs-real
|
45029 |
your-loan
|
45030 |
your-lover
|
45031 |
your-marketer
|
45032 |
+
your-marketing
|
45033 |
your-new-important
|
45034 |
your-new-stuff-regular
|
45035 |
your-next-blog
|
45064 |
your.mail@
|
45065 |
youraccount
|
45066 |
yourbanker
|
45067 |
+
yourbitcoin
|
45068 |
yourblog
|
45069 |
yourbudget
|
45070 |
yourcredit
|
45120 |
youtube mp4
|
45121 |
youtube sens
|
45122 |
youtube snap
|
45123 |
+
youtube takip
|
45124 |
youtube vi
|
45125 |
youtube-com
|
45126 |
youtube-down
|
45132 |
youtube-mp4
|
45133 |
youtube-sens
|
45134 |
youtube-snap
|
45135 |
+
youtube-takip
|
45136 |
youtube-vi
|
45137 |
youtube: how
|
45138 |
youtube:how
|
45145 |
youtubers earn
|
45146 |
youtubesens
|
45147 |
youtubesnap
|
45148 |
+
youtubetakip
|
45149 |
youtubetomp3
|
45150 |
youtubetomp4
|
45151 |
youtubetv
|
45152 |
youtubevi
|
45153 |
+
youtucam
|
45154 |
youtvplay
|
45155 |
youu
|
45156 |
youur
|
45199 |
z http
|
45200 |
z.@
|
45201 |
zabaw
|
45202 |
+
zaden kopen
|
45203 |
+
zaden-kopen
|
45204 |
zafar islamov
|
45205 |
zafar-islamov
|
45206 |
zafarislamov
|
45492 |
адекватного муж
|
45493 |
адекватного-муж
|
45494 |
админу
|
45495 |
+
активировать счет
|
45496 |
+
алкогол
|
45497 |
альтернатива
|
45498 |
анальной ебли
|
45499 |
андроид
|
45533 |
бесплатная-демо
|
45534 |
бесплатная-диаг
|
45535 |
бесплатно
|
|
|
|
|
|
|
|
|
45536 |
бетор фирма
|
45537 |
бетор-фирма
|
45538 |
беторфирма
|
45550 |
бутик отел
|
45551 |
бутик-отел
|
45552 |
быстро!
|
45553 |
+
в ватсап
|
45554 |
валка деревьев
|
45555 |
валка-деревьев
|
45556 |
вариантов дизайна несколько
|
45595 |
винтовой-нас
|
45596 |
вклады сбербанк
|
45597 |
вклады-сбербанк
|
45598 |
+
во ватсап
|
45599 |
вольво (
|
45600 |
вольво-вольво
|
45601 |
вот - http
|
45602 |
вот http
|
45603 |
вот: http
|
45604 |
+
временная регистрация
|
45605 |
все подробно
|
45606 |
все-подробно
|
45607 |
всем привет
|
45626 |
гадание-online
|
45627 |
гей питер
|
45628 |
гей-питер
|
45629 |
+
гидра сайт
|
45630 |
глубокое глот
|
45631 |
глубокое-глот
|
45632 |
говорим гово
|
45639 |
говорю-гово
|
45640 |
головные устройс
|
45641 |
головные-устройс
|
45642 |
+
город топ
|
45643 |
грузоперевозки
|
45644 |
давайте обсудим
|
45645 |
давайте-обсудим
|
45680 |
длительное лечени
|
45681 |
длительное-лечени
|
45682 |
для взлома
|
45683 |
+
для ип
|
45684 |
для сайт
|
45685 |
для тела
|
45686 |
для-взлома
|
45697 |
доставка
|
45698 |
доход
|
45699 |
драйвера
|
45700 |
+
душу на простор
|
45701 |
ԁa
|
45702 |
ԁe
|
45703 |
ԁi
|
45729 |
заболевани
|
45730 |
загородный дом
|
45731 |
загородный-дом
|
45732 |
+
зайти на официальную
|
45733 |
зайти на сайт
|
45734 |
зайти-на-сайт
|
45735 |
заказ
|
45760 |
игровые
|
45761 |
игровые автом
|
45762 |
игровые-автом
|
45763 |
+
игровых автомат
|
45764 |
иж пневмо
|
45765 |
изготовлен
|
45766 |
инете
|
45852 |
леонбет
|
45853 |
лечение зависимости
|
45854 |
лечение мето
|
45855 |
+
лечение наркомании
|
45856 |
лечение-зависимости
|
45857 |
+
лечение-мето
|
45858 |
+
лечение-наркомании
|
45859 |
лечить наркомани
|
45860 |
лечить-наркомани
|
45861 |
лига легенд
|
45870 |
любит глубокое
|
45871 |
любит-глубокое
|
45872 |
магаз
|
45873 |
+
магазин гидра
|
45874 |
маркет
|
45875 |
массажер тренажер
|
45876 |
массажер-тренажер
|
45967 |
оs
|
45968 |
оt
|
45969 |
оv
|
45970 |
+
образец обслуживания
|
45971 |
обрезка деревьев
|
45972 |
обрезка-деревьев
|
45973 |
обучение
|
45989 |
открыть сайт
|
45990 |
открыть-сайт
|
45991 |
отличные
|
45992 |
+
официальную гидру
|
45993 |
официальный сайт
|
45994 |
официальный-сайт
|
45995 |
официальных
|
46019 |
платки-батик
|
46020 |
платок батик
|
46021 |
платок-батик
|
46022 |
+
плей фортуна
|
46023 |
+
плейфортуна
|
46024 |
под ключ
|
46025 |
под-ключ
|
46026 |
подарки
|
46107 |
продолжительном-сроке
|
46108 |
производство
|
46109 |
промо
|
46110 |
+
прописка собственник
|
46111 |
проститутки
|
46112 |
просыпаются филосо
|
46113 |
просыпаются-филосо
|
46138 |
реальный-кардинг
|
46139 |
реальный-муж
|
46140 |
регистратор
|
46141 |
+
регистрация найти
|
46142 |
реестр специал
|
46143 |
реестр-специал
|
46144 |
результаты лечени
|
46194 |
с№
|
46195 |
сµ
|
46196 |
сайт hydra
|
46197 |
+
сайт omg
|
46198 |
сайт визитк
|
46199 |
сайт очень
|
46200 |
сайт рассылки
|
46283 |
сроке службы
|
46284 |
сроке-службы
|
46285 |
сруба
|
46286 |
+
ссылке
|
46287 |
статей
|
46288 |
стать богатым
|
46289 |
стать-богатым
|
46368 |
фитнесс клуб
|
46369 |
фитнесс-клуб
|
46370 |
форекс
|
46371 |
+
фортуна зеркало
|
46372 |
форум
|
46373 |
фото
|
46374 |
футбол
|
46415 |
эротика
|
46416 |
эротиче
|
46417 |
эротичес
|
46418 |
+
эти строки
|
46419 |
этот сайт
|
46420 |
этот-сайт
|
46421 |
юридической
|
46423 |
язык-алматы
|
46424 |
языка алматы
|
46425 |
языка-алматы
|
46426 |
+
якості link
|
46427 |
яндekc
|
46428 |
ԝa
|
46429 |
ԝe
|
46466 |
איפור לכלה
|
46467 |
איפור ערב
|
46468 |
בכירים בהייטק
|
46469 |
+
דירות דיסקרטיות
|
46470 |
+
דירות-דיסקרטיות
|
46471 |
ויקיפדיה
|
46472 |
חשפניות
|
46473 |
טכנאי מזגנים
|
46477 |
מאפרת מקצועית
|
46478 |
מתקין מזגנים
|
46479 |
תיקון מזגנים
|
46480 |
+
آگهی ارزان
|
46481 |
آموزش شرط
|
46482 |
أخبار , اخبار
|
46483 |
أخبار اخبار
|
46492 |
اخبار الرياضة
|
46493 |
اخبار, الرياضة
|
46494 |
اخر اخبار
|
46495 |
+
ادائیگی
|
46496 |
ارائه ی تخصصی
|
46497 |
ارخص سيرفر
|
46498 |
از وبلاگ
|
46499 |
ازواج حكاية
|
46500 |
ازواج,حكاية
|
46501 |
افراد ارزان
|
46502 |
+
افراد همجنس
|
46503 |
افضل شركه
|
46504 |
افلام اونلاين
|
46505 |
اقل اسعار
|
46524 |
اونلاين,انمي
|
46525 |
ايجي بست
|
46526 |
ايفون مجانية
|
46527 |
+
بازاریابی
|
46528 |
بازی انفجار
|
46529 |
+
باکرگی
|
46530 |
+
برندهای مختلف
|
46531 |
بست افلام
|
46532 |
بست,افلام
|
46533 |
بغایت مهمی
|
46536 |
بهترین
|
46537 |
بيع متابعين
|
46538 |
پازل باند
|
46539 |
+
تبخال ها
|
46540 |
تحميل العاب
|
46541 |
تخصصی ترین
|
46542 |
تخصصی نمای
|
46549 |
تعلم الماني
|
46550 |
تعلم, الماني
|
46551 |
تعلم,الماني
|
46552 |
+
تلویزیون ارزان
|
46553 |
جفت درمانی
|
46554 |
جمال مكياج
|
46555 |
جمال, مكياج
|
46556 |
جمال,مكياج
|
46557 |
+
جنسی برای
|
46558 |
حبيبة كوميديا
|
46559 |
حبيبة,كوميديا
|
46560 |
حزينه حزينة
|
46561 |
حزينه, حزينة
|
46562 |
حزينه,حزينة
|
46563 |
خبر عن الرياضة
|
46564 |
+
خرید تلویزیون
|
46565 |
+
خرید رپورتاژ
|
46566 |
خسارة الوزن
|
46567 |
خصم,كود
|
46568 |
خلاصه داستان - دانلود
|
46569 |
خلاصه داستان : دانلود
|
46570 |
خلاصه داستان-دانلود
|
46571 |
+
خود ارضايي
|
46572 |
داستان سکسی
|
46573 |
دانلود آهنگ
|
46574 |
دانلود فیلم سکسی
|
46577 |
دستگاه حضور
|
46578 |
دورات تدريب
|
46579 |
ديالى،علوم
|
46580 |
+
رابطه جنسی
|
46581 |
+
رپورتاژ آگهی
|
46582 |
رتويت تويتر
|
46583 |
زواج المسيار
|
46584 |
زواج سعودية
|
46587 |
زواج,مسيار
|
46588 |
زياده متابعين
|
46589 |
ساک
|
46590 |
+
سایت زیر
|
46591 |
+
سنگ کلیه
|
46592 |
سوپر
|
46593 |
سوريا أرخص
|
46594 |
سوريا,أرخص
|
46610 |
فقدان-الوزن
|
46611 |
قم نجار
|
46612 |
قیمت نبشی
|
46613 |
+
قیمت و خرید
|
46614 |
كاشف الذهب
|
46615 |
كاشف المعادن
|
46616 |
كاشفات الذهب
|
46627 |
كوفيد تمارين
|
46628 |
كوفيد, تمارين
|
46629 |
كوفيد,تمارين
|
46630 |
+
کرپٹوکرنسی
|
46631 |
کیر
|
46632 |
لتحميل
|
46633 |
لرش المبيد ات
|
46637 |
لماني,تعلم
|
46638 |
لمكافحه الحشر ات
|
46639 |
لمكافحه الحشرات
|
46640 |
+
لیست قیمت
|
46641 |
+
مارکتینگ
|
46642 |
متابعين انستقرام
|
46643 |
متابعين سناب
|
46644 |
متجرالبخور
|
46654 |
مشاهدة الافلام
|
46655 |
مشاوره خانواده
|
46656 |
معاهد تدريب
|
46657 |
+
مقالات انگلیسی
|
46658 |
مقاله و بلاگ
|
46659 |
منوعات حبيبة
|
46660 |
موقع سؤال
|
46662 |
موقع سناره
|
46663 |
موقع صنديد
|
46664 |
نجار بالدما
|
46665 |
+
نقد فیلم
|
46666 |
+
نمایشگاه گناه
|
46667 |
نمو الشعر
|
46668 |
نيوز , اخبار
|
46669 |
نيوز اخبار
|
46670 |
نيوز, اخبار
|
46671 |
+
نیکو ویروس
|
46672 |
ها و بلاگ
|
46673 |
و بلاگ ها
|
46674 |
+
واریکوسل
|
46675 |
+
وب سایت
|
46676 |
وب وجود
|
46677 |
+
وبسایت
|
46678 |
وبلاگ نویسان
|
46679 |
وظائف
|
46680 |
ขาย
|
46731 |
검증사이트
|
46732 |
게임
|
46733 |
경마배팅
|
46734 |
+
놀이터 보너
|
46735 |
+
놀이터보너
|
46736 |
대출
|
46737 |
+
레이디알바
|
46738 |
로얄카지노
|
46739 |
루이비통
|
46740 |
리그중계
|
46743 |
먹튀
|
46744 |
무료쿠폰
|
46745 |
바카라
|
46746 |
+
보너스
|
46747 |
보험
|
46748 |
블랙잭
|
46749 |
성인사이트
|
46754 |
안마
|
46755 |
야구중계
|
46756 |
야동
|
46757 |
+
여우알바
|
46758 |
여자친구
|
46759 |
온라인카지노
|
46760 |
+
유흥구인
|
46761 |
+
유흥업소
|
46762 |
이트 순위
|
46763 |
인터넷카지노
|
46764 |
장기렌트
|
46766 |
축구중계
|
46767 |
출장업소
|
46768 |
카지노
|
46769 |
+
쿠폰
|
46770 |
태풍티비
|
46771 |
토토
|
46772 |
트위터
|
46773 |
+
파워볼
|
46774 |
파워볼사이트
|
46775 |
포인트받
|
46776 |
+
피자가게
|
46777 |
필수적이다
|
46778 |
+
후불
|
46779 |
アークテリクス
|
46780 |
アイホン
|
46781 |
アウトレット
|
46806 |
オークリー
|
46807 |
おざ
|
46808 |
オロビアンコ
|
46809 |
+
オンラインカジノ
|
46810 |
お客
|
46811 |
お店を
|
46812 |
お金を
|
46876 |
パワハラ
|
46877 |
バンクオブアメリカ
|
46878 |
バンズ
|
46879 |
+
ビットコイン
|
46880 |
ビトン
|
46881 |
ブーツ
|
46882 |
ファッショ
|
46930 |
信息平台
|
46931 |
倒
|
46932 |
借錢網
|
46933 |
+
優惠
|
46934 |
光碟破解
|
46935 |
全球华人
|
46936 |
公式
|
46959 |
商城
|
46960 |
块钱
|
46961 |
基測|
|
46962 |
+
壯陽
|
46963 |
外贸
|
46964 |
+
大除毛
|
46965 |
奖网
|
46966 |
好評
|
46967 |
婚庆礼仪
|
46988 |
投注网站
|
46989 |
摔死女
|
46990 |
攜心山
|
46991 |
+
春藥
|
46992 |
晶燈
|
46993 |
服务
|
46994 |
札入れ
|
47043 |
茅
|
47044 |
荷物
|
47045 |
落枕
|
47046 |
+
藥專
|
47047 |
血症
|
47048 |
行動電源
|
47049 |
装着
|
47075 |
锘縉
|
47076 |
锟斤拷
|
47077 |
门户网
|
47078 |
+
除毛雷射
|
47079 |
革の
|
47080 |
靴
|
47081 |
韓国音楽
|
assets/css/admin.css
CHANGED
@@ -1,99 +1,525 @@
|
|
1 |
:root {
|
2 |
-
--zerospam-primary: #
|
|
|
|
|
|
|
|
|
3 |
}
|
4 |
|
5 |
-
.zerospam-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
display: inline-block;
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
}
|
17 |
|
18 |
-
.zerospam-
|
19 |
-
|
20 |
-
|
21 |
-
vertical-align: sub;
|
22 |
}
|
23 |
|
24 |
-
|
25 |
-
|
26 |
-
.zerospam-notice,
|
27 |
-
.zerospam-module {
|
28 |
-
background: #fff;
|
29 |
-
border: 1px solid #ccd0d4;
|
30 |
-
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
31 |
}
|
32 |
|
33 |
-
.
|
34 |
-
|
35 |
-
.zerospam-module {
|
36 |
-
box-sizing: border-box;
|
37 |
-
padding: 30px;
|
38 |
}
|
39 |
|
40 |
-
.zerospam-
|
41 |
-
|
42 |
-
|
|
|
43 |
}
|
44 |
|
45 |
-
.zerospam-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
display: flex;
|
47 |
-
|
48 |
-
|
49 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
50 |
}
|
51 |
|
52 |
-
.zerospam-
|
53 |
-
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
55 |
}
|
56 |
|
57 |
-
.zerospam-
|
58 |
-
|
59 |
}
|
60 |
|
61 |
-
|
62 |
-
|
63 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
}
|
|
|
65 |
|
66 |
-
|
67 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
68 |
}
|
|
|
69 |
|
70 |
-
|
71 |
-
|
72 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
}
|
74 |
}
|
75 |
|
76 |
-
.zerospam-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
display: flex;
|
78 |
flex-wrap: wrap;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
}
|
80 |
|
81 |
-
.zerospam-
|
82 |
-
|
83 |
-
|
|
|
84 |
}
|
85 |
|
86 |
-
.zerospam-
|
87 |
-
margin-bottom: 0;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88 |
}
|
89 |
|
90 |
-
.zerospam-
|
91 |
-
|
92 |
-
|
93 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
94 |
}
|
95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
.zerospam-modal {
|
|
|
97 |
box-sizing: border-box;
|
98 |
left: 50%;
|
99 |
max-width: 600px;
|
@@ -108,7 +534,6 @@
|
|
108 |
width: 100%;
|
109 |
z-index: 1;
|
110 |
}
|
111 |
-
|
112 |
.zerospam-modal.is-active {
|
113 |
opacity: 1;
|
114 |
visibility: visible;
|
@@ -126,9 +551,7 @@
|
|
126 |
top: 15px;
|
127 |
width: 15px;
|
128 |
}
|
129 |
-
|
130 |
-
.zerospam-close-modal::before,
|
131 |
-
.zerospam-close-modal::after {
|
132 |
background: #23282d;
|
133 |
content: "";
|
134 |
display: block;
|
@@ -138,127 +561,14 @@
|
|
138 |
top: 0;
|
139 |
width: 3px;
|
140 |
}
|
141 |
-
|
142 |
.zerospam-close-modal::before {
|
143 |
transform: rotate(45deg);
|
144 |
}
|
145 |
-
|
146 |
.zerospam-close-modal::after {
|
147 |
transform: rotate(-45deg);
|
148 |
}
|
149 |
|
150 |
-
.zerospam-
|
151 |
-
align-items: center;
|
152 |
-
display: flex;
|
153 |
-
flex-wrap: wrap;
|
154 |
-
}
|
155 |
-
|
156 |
-
.zerospam-modal-title,
|
157 |
-
.zerospam-modal-subtitle {
|
158 |
-
width: 50%;
|
159 |
-
}
|
160 |
-
|
161 |
-
.zerospam-modal-headline,
|
162 |
-
.zerospam-modal-list {
|
163 |
-
width: 100%;
|
164 |
-
}
|
165 |
-
|
166 |
-
.zerospam-modal-list li {
|
167 |
-
display: flex;
|
168 |
-
justify-content: space-between;
|
169 |
-
padding: 5px;
|
170 |
-
}
|
171 |
-
|
172 |
-
.zerospam-modal-list li strong,
|
173 |
-
.zerospam-modal-list li span {
|
174 |
-
width: 50%;
|
175 |
-
}
|
176 |
-
|
177 |
-
.zerospam-modal-list li:nth-child(odd) {
|
178 |
-
background: #f9f9f9;
|
179 |
-
}
|
180 |
-
|
181 |
-
.zerospam-modal-subtitle {
|
182 |
-
text-align: right;
|
183 |
-
}
|
184 |
-
|
185 |
-
/* Tabs */
|
186 |
-
.zerospam-settings-tabs .form-table,
|
187 |
-
.zerospam-tab {
|
188 |
-
display: none;
|
189 |
-
}
|
190 |
-
|
191 |
-
.zerospam-settings-tabs h2 {
|
192 |
-
background: #fff;
|
193 |
-
border: 1px solid #ccd0d4;
|
194 |
-
box-shadow: 0 1px 1px rgb(0 0 0 / 4%);
|
195 |
-
display: block;
|
196 |
-
cursor: pointer;
|
197 |
-
margin: 15px 0 0 0;
|
198 |
-
padding: 15px 20px;
|
199 |
-
}
|
200 |
-
|
201 |
-
.zerospam-settings-tabs .form-table {
|
202 |
-
background: #fff;
|
203 |
-
border: 1px solid #ccd0d4;
|
204 |
-
border-top: 0;
|
205 |
-
margin: 0;
|
206 |
-
padding: 20px;
|
207 |
-
}
|
208 |
-
|
209 |
-
.zerospam-settings-tabs .form-table.is-active,
|
210 |
-
.zerospam-tab.is-active {
|
211 |
-
display: block;
|
212 |
-
}
|
213 |
-
|
214 |
-
.zerospam-modal form {
|
215 |
-
display: flex;
|
216 |
-
flex-wrap: wrap;
|
217 |
-
}
|
218 |
-
|
219 |
-
.zerospam-modal form label {
|
220 |
-
display: flex;
|
221 |
-
flex-wrap: wrap;
|
222 |
-
margin-bottom: 10px;
|
223 |
-
width: 100%;
|
224 |
-
}
|
225 |
-
|
226 |
-
.zerospam-modal form label[for="blocked-ip"],
|
227 |
-
.zerospam-modal form label[for="blocked-type"],
|
228 |
-
.zerospam-modal form label[for="blocked-start-date"],
|
229 |
-
.zerospam-modal form label[for="blocked-end-date"] {
|
230 |
-
width: 50%;
|
231 |
-
}
|
232 |
-
|
233 |
-
.zerospam-modal form label[for="location-type"],
|
234 |
-
.zerospam-modal form label[for="location-key"],
|
235 |
-
.zerospam-modal form.zerospam-block-location-form label[for="blocked-type"] {
|
236 |
-
width: calc(100% / 3);
|
237 |
-
}
|
238 |
-
|
239 |
-
.zerospam-modal input[type="text"],
|
240 |
-
.zerospam-modal input[type="datetime-local"],
|
241 |
-
.zerospam-modal select {
|
242 |
-
width: 100%;
|
243 |
-
}
|
244 |
-
|
245 |
-
.zerospam-modal input[type="submit"] {
|
246 |
-
margin-top: 16px;
|
247 |
-
}
|
248 |
-
|
249 |
-
/* Type theming */
|
250 |
-
.zerospam-type-blocked::before,
|
251 |
-
.zerospam-type-login::before,
|
252 |
-
.zerospam-type-registration::before,
|
253 |
-
.zerospam-type-comment::before,
|
254 |
-
.zerospam-type-fluent_form::before,
|
255 |
-
.zerospam-type-wpforms::before,
|
256 |
-
.zerospam-type-contactform7::before,
|
257 |
-
.zerospam-type-givewp::before,
|
258 |
-
.zerospam-type-memberpress_registration::before,
|
259 |
-
.zerospam-type-memberpress_login::before,
|
260 |
-
.zerospam-type-mailchimp4wp::before,
|
261 |
-
.zerospam-type-woocommerce_registration::before {
|
262 |
background-position: center;
|
263 |
background-repeat: no-repeat;
|
264 |
background-size: contain;
|
@@ -269,122 +579,186 @@
|
|
269 |
vertical-align: sub;
|
270 |
width: 16px;
|
271 |
}
|
272 |
-
|
273 |
-
/* Type: blocked */
|
274 |
.zerospam-type-blocked {
|
275 |
color: var(--zerospam-primary);
|
276 |
}
|
277 |
-
|
278 |
.zerospam-type-blocked::before {
|
279 |
background-image: url("../img/icon.svg");
|
280 |
}
|
281 |
-
|
282 |
-
/* Type: login, registration, comment */
|
283 |
-
.zerospam-type-login::before,
|
284 |
-
.zerospam-type-registration::before,
|
285 |
-
.zerospam-type-comment::before {
|
286 |
background-image: url("../img/icon-wordpress.svg");
|
287 |
}
|
288 |
-
|
289 |
-
/* Type: fluent_form */
|
290 |
.zerospam-type-fluent_form::before {
|
291 |
background-image: url("../img/icon-fluent-forms.svg");
|
292 |
}
|
293 |
-
|
294 |
-
|
|
|
295 |
.zerospam-type-wpforms::before {
|
296 |
-
background-image: url("
|
297 |
}
|
298 |
-
|
299 |
-
/* Type: contactform7 */
|
300 |
.zerospam-type-contactform7::before {
|
301 |
-
background-image: url("
|
302 |
}
|
303 |
-
|
304 |
-
/* Type: memberpress_registration, memberpress_login */
|
305 |
-
.zerospam-type-memberpress_registration::before,
|
306 |
-
.zerospam-type-memberpress_login::before {
|
307 |
background-image: url("../img/icon-memberpress.svg");
|
308 |
}
|
309 |
-
|
310 |
-
/* Type: givewp */
|
311 |
.zerospam-type-givewp::before {
|
312 |
-
background-image: url("
|
313 |
}
|
314 |
-
|
315 |
-
/* Type: mailchimp4wp */
|
316 |
.zerospam-type-mailchimp4wp::before {
|
317 |
background-image: url("../img/icon-mc4wp.svg");
|
318 |
}
|
319 |
-
|
320 |
-
/* Type: woocommerce_registration */
|
321 |
.zerospam-type-woocommerce_registration::before {
|
322 |
-
background-image: url("
|
323 |
}
|
324 |
-
|
325 |
-
|
326 |
-
.zerospam-callout {
|
327 |
-
flex-wrap: nowrap;
|
328 |
-
}
|
329 |
-
|
330 |
-
.zerospam-callout-col {
|
331 |
-
padding: 30px;
|
332 |
-
width: 100%;
|
333 |
-
}
|
334 |
}
|
335 |
|
336 |
.zerospam-list {
|
|
|
337 |
margin: 0;
|
|
|
338 |
}
|
339 |
-
|
340 |
-
.zerospam-list li {
|
341 |
align-items: center;
|
342 |
-
|
343 |
display: flex;
|
344 |
-
|
345 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
346 |
}
|
347 |
|
348 |
-
.zerospam-
|
349 |
-
|
350 |
-
|
351 |
}
|
352 |
|
353 |
-
|
354 |
-
|
355 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
356 |
}
|
357 |
|
358 |
-
.zerospam-
|
359 |
-
|
360 |
-
|
|
|
361 |
}
|
362 |
|
363 |
-
.zerospam-
|
364 |
-
|
|
|
365 |
}
|
366 |
|
367 |
-
.zerospam-
|
368 |
-
|
369 |
-
width: 8%;
|
370 |
}
|
371 |
|
372 |
-
|
373 |
-
|
374 |
-
|
|
|
375 |
}
|
376 |
|
377 |
-
.zerospam-
|
378 |
-
|
379 |
-
|
|
|
|
|
|
|
|
|
|
|
380 |
}
|
381 |
|
382 |
-
.zerospam-
|
383 |
-
|
|
|
|
|
|
|
|
|
384 |
}
|
385 |
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
}
|
390 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
:root {
|
2 |
+
--zerospam-primary: #3f0008;
|
3 |
+
--zerospam-secondary: #840012;
|
4 |
+
--zerospam-accent: #ff2929;
|
5 |
+
--zerospam-trinary: #be0000;
|
6 |
+
--zerospam-success: #69b86b;
|
7 |
}
|
8 |
|
9 |
+
.zerospam-form .description, .zerospam-block__content, .zerospam-form td {
|
10 |
+
color: var(--zerospam-primary);
|
11 |
+
display: block;
|
12 |
+
font-size: 0.8125rem;
|
13 |
+
line-height: 1.384615385rem;
|
14 |
+
margin: 0 0 0.5625rem 0;
|
15 |
+
}
|
16 |
+
|
17 |
+
.zerospam-table-form .button,
|
18 |
+
.zerospam-form .button, .zerospam-block .button {
|
19 |
+
backface-visibility: hidden;
|
20 |
+
background: var(--zerospam-trinary);
|
21 |
+
border: 1px solid transparent;
|
22 |
+
border-radius: 3px;
|
23 |
+
box-shadow: 0 2px 1px rgba(28, 31, 63, 0.06);
|
24 |
+
color: #fff;
|
25 |
display: inline-block;
|
26 |
+
font-size: 0.875rem;
|
27 |
+
font-weight: 500;
|
28 |
+
line-height: 1;
|
29 |
+
min-height: 0;
|
30 |
+
outline: none;
|
31 |
+
padding: 0.875rem 2rem;
|
32 |
+
transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
|
33 |
+
}
|
34 |
+
.zerospam-table-form .button:active,
|
35 |
+
.zerospam-form .button:active, .zerospam-block .button:active, .zerospam-table-form .button:focus,
|
36 |
+
.zerospam-form .button:focus, .zerospam-block .button:focus {
|
37 |
+
background-color: var(--zerospam-accent);
|
38 |
+
box-shadow: 0 4px 6px rgba(28, 31, 63, 0.08);
|
39 |
+
border-color: var(--zerospam-accent);
|
40 |
+
color: #fff;
|
41 |
+
}
|
42 |
+
.zerospam-table-form .button:hover,
|
43 |
+
.zerospam-form .button:hover, .zerospam-block .button:hover {
|
44 |
+
background-color: var(--zerospam-trinary);
|
45 |
+
border: 1px solid transparent;
|
46 |
+
box-shadow: 0 4px 6px rgba(28, 31, 63, 0.08);
|
47 |
+
color: #fff;
|
48 |
+
transform: translate(0, -2px);
|
49 |
+
}
|
50 |
+
.zerospam-table-form .button-primary.button,
|
51 |
+
.zerospam-form .button-primary.button, .zerospam-block .button-primary.button {
|
52 |
+
background: var(--zerospam-accent);
|
53 |
+
}
|
54 |
+
.zerospam-table-form .button-primary.button:focus,
|
55 |
+
.zerospam-form .button-primary.button:focus, .zerospam-block .button-primary.button:focus {
|
56 |
+
color: #fff;
|
57 |
}
|
58 |
|
59 |
+
.zerospam-list--data-actions .button, .zerospam-table-form .column-actions .button {
|
60 |
+
font-size: 11px;
|
61 |
+
padding: 0.4rem 0.5rem;
|
|
|
62 |
}
|
63 |
|
64 |
+
#wpcontent {
|
65 |
+
padding-left: 0 !important;
|
|
|
|
|
|
|
|
|
|
|
66 |
}
|
67 |
|
68 |
+
.wrap {
|
69 |
+
margin-left: 12px;
|
|
|
|
|
|
|
70 |
}
|
71 |
|
72 |
+
.zerospam-small-icon {
|
73 |
+
height: 18px;
|
74 |
+
vertical-align: sub;
|
75 |
+
width: auto;
|
76 |
}
|
77 |
|
78 |
+
.zerospam-header {
|
79 |
+
background-color: var(--zerospam-secondary);
|
80 |
+
background-image: url("../img/logo-flat.svg");
|
81 |
+
background-position: 0.5rem 0.5rem;
|
82 |
+
background-repeat: no-repeat;
|
83 |
+
background-size: 100px;
|
84 |
+
padding: 1.5rem 1.5rem 1.5rem 8rem;
|
85 |
+
}
|
86 |
+
@media (min-width: 782px) {
|
87 |
+
.zerospam-header {
|
88 |
+
align-items: center;
|
89 |
+
display: flex;
|
90 |
+
justify-content: space-between;
|
91 |
+
}
|
92 |
+
}
|
93 |
+
.zerospam-header a {
|
94 |
+
color: var(--zerospam-accent);
|
95 |
+
}
|
96 |
+
.zerospam-header__status {
|
97 |
+
align-items: center;
|
98 |
+
background-color: #fff;
|
99 |
+
border-radius: 3px;
|
100 |
+
column-gap: 8px;
|
101 |
display: flex;
|
102 |
+
padding: 10px 15px;
|
103 |
+
}
|
104 |
+
|
105 |
+
@media (min-width: 782px) {
|
106 |
+
.zerospam-dashboard {
|
107 |
+
column-gap: 3rem;
|
108 |
+
display: grid;
|
109 |
+
grid-template-columns: 200px 1fr;
|
110 |
+
grid-template-rows: auto;
|
111 |
+
}
|
112 |
+
}
|
113 |
+
.zerospam-dashboard a {
|
114 |
+
color: var(--zerospam-accent);
|
115 |
}
|
116 |
|
117 |
+
a.zerospam-dashboard__menu-link {
|
118 |
+
align-items: center;
|
119 |
+
border: 1px solid transparent;
|
120 |
+
border-radius: 3px;
|
121 |
+
color: var(--zerospam-primary);
|
122 |
+
column-gap: 8px;
|
123 |
+
display: flex;
|
124 |
+
font-size: 0.875rem;
|
125 |
+
font-weight: 400;
|
126 |
+
line-height: normal;
|
127 |
+
margin: 0;
|
128 |
+
padding: 0.6875rem 0.5rem 0.6875rem 1rem;
|
129 |
+
text-decoration: none;
|
130 |
+
}
|
131 |
+
a.zerospam-dashboard__menu-link:hover {
|
132 |
+
color: var(--zerospam-primary);
|
133 |
+
}
|
134 |
+
a.zerospam-dashboard__menu-link--active, a.zerospam-dashboard__menu-link:focus {
|
135 |
+
background-color: #fff;
|
136 |
+
font-weight: 500;
|
137 |
+
}
|
138 |
+
a.zerospam-dashboard__menu-link--active {
|
139 |
+
border-color: #e3e6ef;
|
140 |
+
box-shadow: 0 1px 4px rgba(18, 25, 97, 0.08);
|
141 |
+
margin-top: 0.125rem;
|
142 |
}
|
143 |
|
144 |
+
.zerospam-dashboard__menu-icon {
|
145 |
+
width: 18px;
|
146 |
}
|
147 |
|
148 |
+
.zerospam-block__grid {
|
149 |
+
align-items: center;
|
150 |
+
column-gap: 30px;
|
151 |
+
row-gap: 30px;
|
152 |
+
display: grid;
|
153 |
+
grid-template-columns: 1fr;
|
154 |
+
}
|
155 |
+
@media (min-width: 782px) {
|
156 |
+
.zerospam-block__grid {
|
157 |
+
grid-template-columns: 65% 1fr;
|
158 |
}
|
159 |
+
}
|
160 |
|
161 |
+
.zerospam-block, .zerospam-form tr {
|
162 |
+
background: #fff;
|
163 |
+
border: 1px solid #e3e6ef;
|
164 |
+
border-radius: 3px;
|
165 |
+
box-shadow: 0 1px 4px rgba(18, 25, 97, 0.08);
|
166 |
+
box-sizing: border-box;
|
167 |
+
width: 100%;
|
168 |
+
}
|
169 |
+
.zerospam-block__content, .zerospam-form td {
|
170 |
+
border-top: 1px solid #ebebf2;
|
171 |
+
display: block;
|
172 |
+
margin: 0;
|
173 |
+
padding: 1rem 1rem 1.25rem;
|
174 |
+
}
|
175 |
+
.zerospam-block__content code, .zerospam-form td code {
|
176 |
+
font-size: 0.85em;
|
177 |
+
}
|
178 |
+
.zerospam-block__content--supports {
|
179 |
+
align-items: center;
|
180 |
+
column-gap: 8px;
|
181 |
+
display: flex;
|
182 |
+
flex-wrap: wrap;
|
183 |
+
}
|
184 |
+
.zerospam-block__headline, .zerospam-form th {
|
185 |
+
box-sizing: border-box;
|
186 |
+
color: var(--zerospam-primary);
|
187 |
+
display: block;
|
188 |
+
font-size: 0.875rem;
|
189 |
+
font-weight: 500;
|
190 |
+
line-height: 2.875rem;
|
191 |
+
margin: 0;
|
192 |
+
padding: 0 0 0 1.0625rem;
|
193 |
+
width: 100%;
|
194 |
+
}
|
195 |
+
.zerospam-block--callout .zerospam-block__content, .zerospam-block--callout .zerospam-form td, .zerospam-form .zerospam-block--callout td {
|
196 |
+
padding: 2rem 3rem;
|
197 |
+
}
|
198 |
+
.zerospam-block--callout .zerospam-block__content h3, .zerospam-block--callout .zerospam-form td h3, .zerospam-form .zerospam-block--callout td h3 {
|
199 |
+
font-size: 24px;
|
200 |
+
font-weight: bold;
|
201 |
+
line-height: 1.2;
|
202 |
+
}
|
203 |
+
.zerospam-block--callout .zerospam-block__content .button, .zerospam-block--callout .zerospam-form td .button, .zerospam-form .zerospam-block--callout td .button {
|
204 |
+
margin-top: 0.7rem;
|
205 |
+
}
|
206 |
+
.zerospam-block--success .zerospam-block__content, .zerospam-block--success .zerospam-form td, .zerospam-form .zerospam-block--success td, .zerospam-block--error .zerospam-block__content, .zerospam-block--error .zerospam-form td, .zerospam-form .zerospam-block--error td, .zerospam-block--notice .zerospam-block__content, .zerospam-block--notice .zerospam-form td, .zerospam-form .zerospam-block--notice td {
|
207 |
+
position: relative;
|
208 |
+
color: #fff;
|
209 |
+
font-size: 13px;
|
210 |
+
padding: 1.3rem 2rem;
|
211 |
+
}
|
212 |
+
.zerospam-block--notice {
|
213 |
+
background: var(--zerospam-success);
|
214 |
+
}
|
215 |
+
.zerospam-block--success, .zerospam-block--error {
|
216 |
+
margin-bottom: 1rem;
|
217 |
+
}
|
218 |
+
.zerospam-block--success .zerospam-block__content, .zerospam-block--success .zerospam-form td, .zerospam-form .zerospam-block--success td, .zerospam-block--error .zerospam-block__content, .zerospam-block--error .zerospam-form td, .zerospam-form .zerospam-block--error td {
|
219 |
+
padding-left: 60px;
|
220 |
+
}
|
221 |
+
.zerospam-block--success .zerospam-block__content::before, .zerospam-block--success .zerospam-form td::before, .zerospam-form .zerospam-block--success td::before, .zerospam-block--error .zerospam-block__content::before, .zerospam-block--error .zerospam-form td::before, .zerospam-form .zerospam-block--error td::before {
|
222 |
+
background-position: center;
|
223 |
+
background-repeat: no-repeat;
|
224 |
+
background-size: contain;
|
225 |
+
border: 1px solid #fff;
|
226 |
+
border-radius: 100%;
|
227 |
+
content: "";
|
228 |
+
display: inline-block;
|
229 |
+
height: 25px;
|
230 |
+
left: 1.5rem;
|
231 |
+
position: absolute;
|
232 |
+
top: 18px;
|
233 |
+
width: 25px;
|
234 |
+
}
|
235 |
+
.zerospam-block--success .zerospam-block__content::before, .zerospam-block--success .zerospam-form td::before, .zerospam-form .zerospam-block--success td::before {
|
236 |
+
background-color: #fff;
|
237 |
+
background-image: url("../img/icon-success.svg");
|
238 |
+
}
|
239 |
+
.zerospam-block--error .zerospam-block__content, .zerospam-block--error .zerospam-form td, .zerospam-form .zerospam-block--error td {
|
240 |
+
background-color: var(--zerospam-accent);
|
241 |
+
color: #fff;
|
242 |
+
}
|
243 |
+
.zerospam-block--error .zerospam-block__content::before, .zerospam-block--error .zerospam-form td::before, .zerospam-form .zerospam-block--error td::before {
|
244 |
+
background-color: var(--zerospam-accent);
|
245 |
+
background-image: url("../img/icon-x.svg?sd");
|
246 |
+
}
|
247 |
+
@media (min-width: 782px) {
|
248 |
+
.zerospam-block--map {
|
249 |
+
width: calc(60% - var(--zerospam-block-gap));
|
250 |
+
}
|
251 |
+
}
|
252 |
+
@media (min-width: 782px) {
|
253 |
+
.zerospam-block--list {
|
254 |
+
width: calc(40% - var(--zerospam-block-gap));
|
255 |
}
|
256 |
+
}
|
257 |
|
258 |
+
.zerospam-blocks {
|
259 |
+
--zerospam-block-gap: 0.875rem;
|
260 |
+
display: flex;
|
261 |
+
flex-wrap: wrap;
|
262 |
+
margin-left: calc(var(--zerospam-block-gap) / 2 * -1);
|
263 |
+
margin-right: calc(var(--zerospam-block-gap) / 2 * -1);
|
264 |
+
}
|
265 |
+
.zerospam-blocks .zerospam-block, .zerospam-blocks .zerospam-form tr, .zerospam-form .zerospam-blocks tr {
|
266 |
+
margin: calc(var(--zerospam-block-gap) / 2);
|
267 |
+
}
|
268 |
+
.zerospam-blocks .zerospam-block--facebook, .zerospam-blocks .zerospam-block--twitter {
|
269 |
+
background-color: transparent;
|
270 |
+
border: 0;
|
271 |
+
box-shadow: none;
|
272 |
+
}
|
273 |
+
@media (min-width: 782px) {
|
274 |
+
.zerospam-blocks .zerospam-block--facebook {
|
275 |
+
width: 340px;
|
276 |
+
}
|
277 |
+
}
|
278 |
+
@media (min-width: 782px) {
|
279 |
+
.zerospam-blocks .zerospam-block--twitter {
|
280 |
+
width: calc(100% - var(--zerospam-block-gap) * 2 - 340px);
|
281 |
}
|
282 |
}
|
283 |
|
284 |
+
.zerospam-table-form .column-actions {
|
285 |
+
column-gap: 5px;
|
286 |
+
display: flex;
|
287 |
+
}
|
288 |
+
.zerospam-table-form .tablenav-pages .current-page {
|
289 |
+
width: auto;
|
290 |
+
}
|
291 |
+
.zerospam-table-form .tablenav {
|
292 |
+
align-items: center;
|
293 |
display: flex;
|
294 |
flex-wrap: wrap;
|
295 |
+
height: auto;
|
296 |
+
margin: 0 0 1rem 0;
|
297 |
+
padding-top: 0;
|
298 |
+
}
|
299 |
+
.zerospam-table-form .tablenav .actions {
|
300 |
+
align-items: center;
|
301 |
+
column-gap: 5px;
|
302 |
+
display: flex;
|
303 |
+
padding: 0;
|
304 |
+
}
|
305 |
+
.zerospam-table-form .tablenav .actions select {
|
306 |
+
float: none;
|
307 |
+
margin-right: 0;
|
308 |
+
}
|
309 |
+
.zerospam-table-form .tablenav .tablenav-pages {
|
310 |
+
flex-grow: 1;
|
311 |
+
float: none;
|
312 |
+
margin: 0;
|
313 |
+
text-align: right;
|
314 |
+
}
|
315 |
+
.zerospam-table-form .tablenav.bottom {
|
316 |
+
margin: 1rem 0 0 0;
|
317 |
+
}
|
318 |
+
.zerospam-table-form p.search-box {
|
319 |
+
align-items: center;
|
320 |
+
column-gap: 5px;
|
321 |
+
display: flex;
|
322 |
+
margin-bottom: 5px;
|
323 |
+
float: none;
|
324 |
+
}
|
325 |
+
.zerospam-table-form .search-box input[name=s] {
|
326 |
+
float: none;
|
327 |
+
margin: 0;
|
328 |
+
}
|
329 |
+
|
330 |
+
.zerospam-table-form .regular-text,
|
331 |
+
.zerospam-form .regular-text {
|
332 |
+
width: 100%;
|
333 |
+
}
|
334 |
+
.zerospam-table-form .code,
|
335 |
+
.zerospam-form .code {
|
336 |
+
font-size: 0.8rem;
|
337 |
+
}
|
338 |
+
.zerospam-table-form select,
|
339 |
+
.zerospam-table-form input[type=text],
|
340 |
+
.zerospam-table-form input[type=url],
|
341 |
+
.zerospam-table-form input[type=number],
|
342 |
+
.zerospam-table-form input[type=search],
|
343 |
+
.zerospam-table-form input[type=datetime-local],
|
344 |
+
.zerospam-table-form textarea,
|
345 |
+
.zerospam-form select,
|
346 |
+
.zerospam-form input[type=text],
|
347 |
+
.zerospam-form input[type=url],
|
348 |
+
.zerospam-form input[type=number],
|
349 |
+
.zerospam-form input[type=search],
|
350 |
+
.zerospam-form input[type=datetime-local],
|
351 |
+
.zerospam-form textarea {
|
352 |
+
border: 1px solid var(--zerospam-trinary);
|
353 |
+
color: var(--zerospam-primary);
|
354 |
+
max-width: none;
|
355 |
+
padding: 0.45rem 1rem;
|
356 |
+
width: 100%;
|
357 |
+
}
|
358 |
+
.zerospam-table-form select:hover,
|
359 |
+
.zerospam-table-form input[type=text]:hover,
|
360 |
+
.zerospam-table-form input[type=url]:hover,
|
361 |
+
.zerospam-table-form input[type=number]:hover,
|
362 |
+
.zerospam-table-form input[type=search]:hover,
|
363 |
+
.zerospam-table-form input[type=datetime-local]:hover,
|
364 |
+
.zerospam-table-form textarea:hover,
|
365 |
+
.zerospam-form select:hover,
|
366 |
+
.zerospam-form input[type=text]:hover,
|
367 |
+
.zerospam-form input[type=url]:hover,
|
368 |
+
.zerospam-form input[type=number]:hover,
|
369 |
+
.zerospam-form input[type=search]:hover,
|
370 |
+
.zerospam-form input[type=datetime-local]:hover,
|
371 |
+
.zerospam-form textarea:hover {
|
372 |
+
color: var(--zerospam-primary);
|
373 |
+
}
|
374 |
+
.zerospam-table-form select:focus,
|
375 |
+
.zerospam-table-form input[type=text]:focus,
|
376 |
+
.zerospam-table-form input[type=url]:focus,
|
377 |
+
.zerospam-table-form input[type=number]:focus,
|
378 |
+
.zerospam-table-form input[type=search]:focus,
|
379 |
+
.zerospam-table-form input[type=datetime-local]:focus,
|
380 |
+
.zerospam-table-form textarea:focus,
|
381 |
+
.zerospam-form select:focus,
|
382 |
+
.zerospam-form input[type=text]:focus,
|
383 |
+
.zerospam-form input[type=url]:focus,
|
384 |
+
.zerospam-form input[type=number]:focus,
|
385 |
+
.zerospam-form input[type=search]:focus,
|
386 |
+
.zerospam-form input[type=datetime-local]:focus,
|
387 |
+
.zerospam-form textarea:focus {
|
388 |
+
border: 1px solid var(--zerospam-trinary);
|
389 |
+
box-shadow: none;
|
390 |
+
}
|
391 |
+
.zerospam-table-form input[type=radio],
|
392 |
+
.zerospam-table-form input[type=checkbox],
|
393 |
+
.zerospam-form input[type=radio],
|
394 |
+
.zerospam-form input[type=checkbox] {
|
395 |
+
display: none;
|
396 |
+
}
|
397 |
+
.zerospam-table-form input[type=radio] + label,
|
398 |
+
.zerospam-table-form input[type=checkbox] + label,
|
399 |
+
.zerospam-form input[type=radio] + label,
|
400 |
+
.zerospam-form input[type=checkbox] + label {
|
401 |
+
display: inline-block;
|
402 |
+
margin-bottom: 0.2rem;
|
403 |
+
position: relative;
|
404 |
+
}
|
405 |
+
.zerospam-table-form input[type=radio] + label::before, .zerospam-table-form input[type=radio] + label::after,
|
406 |
+
.zerospam-table-form input[type=checkbox] + label::before,
|
407 |
+
.zerospam-table-form input[type=checkbox] + label::after,
|
408 |
+
.zerospam-form input[type=radio] + label::before,
|
409 |
+
.zerospam-form input[type=radio] + label::after,
|
410 |
+
.zerospam-form input[type=checkbox] + label::before,
|
411 |
+
.zerospam-form input[type=checkbox] + label::after {
|
412 |
+
content: "";
|
413 |
+
cursor: pointer;
|
414 |
+
}
|
415 |
+
.zerospam-table-form input[type=radio] + label::before,
|
416 |
+
.zerospam-table-form input[type=checkbox] + label::before,
|
417 |
+
.zerospam-form input[type=radio] + label::before,
|
418 |
+
.zerospam-form input[type=checkbox] + label::before {
|
419 |
+
background: var(--zerospam-trinary);
|
420 |
+
border: 2px solid transparent;
|
421 |
+
border-radius: 15px;
|
422 |
+
box-shadow: inset 0 1px 2px rgba(90, 97, 105, 0.15);
|
423 |
+
display: inline-block;
|
424 |
+
height: 1.125rem;
|
425 |
+
margin-right: 0.5rem;
|
426 |
+
padding: 0.1275rem;
|
427 |
+
position: relative;
|
428 |
+
vertical-align: middle;
|
429 |
+
transition: all 0.25s ease;
|
430 |
+
transition-duration: 0.2s;
|
431 |
+
transition-property: background-color, border-color, color, fill, stroke;
|
432 |
+
transition-timing-function: cubic-bezier(0.4, 0, 0.1, 1);
|
433 |
+
width: 2.625rem;
|
434 |
+
}
|
435 |
+
.zerospam-table-form input[type=radio] + label::after,
|
436 |
+
.zerospam-table-form input[type=checkbox] + label::after,
|
437 |
+
.zerospam-form input[type=radio] + label::after,
|
438 |
+
.zerospam-form input[type=checkbox] + label::after {
|
439 |
+
background: #fff center no-repeat url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjQ3NDkgMi41MjUxYS41ODMzLjU4MzMgMCAwMDAgLjgyNUw0LjEyNDggNWwtMS42NSAxLjY1YS41ODMzLjU4MzMgMCAxMC44MjUuODI0OWwxLjY1LTEuNjUgMS42NDk5IDEuNjVhLjU4MzMuNTgzMyAwIDEwLjgyNS0uODI1TDUuNzc0NiA1bDEuNjUtMS42NWEuNTgzMy41ODMzIDAgMTAtLjgyNS0uODI0OWwtMS42NSAxLjY1LTEuNjQ5OS0xLjY1YS41ODMzLjU4MzMgMCAwMC0uODI1IDB6IiBmaWxsPSIjOTA5MkIyIi8+PC9zdmc+);
|
440 |
+
background-size: 0.625rem;
|
441 |
+
border-radius: 50%;
|
442 |
+
box-shadow: 0 1px 4px rgba(24, 24, 72, 0.12);
|
443 |
+
display: block;
|
444 |
+
height: 1.125rem;
|
445 |
+
left: 4px;
|
446 |
+
position: absolute;
|
447 |
+
top: 4px;
|
448 |
+
transition: all 0.25s ease;
|
449 |
+
transition-duration: 0.2s;
|
450 |
+
transition-property: background, left;
|
451 |
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
452 |
+
width: 1.125rem;
|
453 |
+
z-index: 1;
|
454 |
+
}
|
455 |
+
.zerospam-table-form input[type=radio]:checked + label::before,
|
456 |
+
.zerospam-table-form input[type=checkbox]:checked + label::before,
|
457 |
+
.zerospam-form input[type=radio]:checked + label::before,
|
458 |
+
.zerospam-form input[type=checkbox]:checked + label::before {
|
459 |
+
background: var(--zerospam-accent);
|
460 |
+
}
|
461 |
+
.zerospam-table-form input[type=radio]:checked + label::after,
|
462 |
+
.zerospam-table-form input[type=checkbox]:checked + label::after,
|
463 |
+
.zerospam-form input[type=radio]:checked + label::after,
|
464 |
+
.zerospam-form input[type=checkbox]:checked + label::after {
|
465 |
+
background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI3IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yLjY2NjcgNC4zOTA1TDYuODYxOS4xOTUzYS42NjY3LjY2NjcgMCAwMS45NDI4Ljk0MjhsLTUuMTM4IDUuMTM4TC4xOTUzIDMuODA0N2EuNjY2Ny42NjY3IDAgMDEuOTQyOC0uOTQyOGwxLjUyODYgMS41Mjg2eiIgZmlsbD0iIzNFN0RBNiIvPjwvc3ZnPg==);
|
466 |
+
background-size: 0.5rem;
|
467 |
+
left: 1.7rem;
|
468 |
}
|
469 |
|
470 |
+
.zerospam-form-field-container {
|
471 |
+
align-items: center;
|
472 |
+
column-gap: 10px;
|
473 |
+
display: flex;
|
474 |
}
|
475 |
|
476 |
+
.zerospam-form-field {
|
477 |
+
margin-bottom: 0.6875rem;
|
478 |
+
}
|
479 |
+
.zerospam-form-field > label {
|
480 |
+
color: var(--zerospam-primary);
|
481 |
+
display: block;
|
482 |
+
font-size: 0.8125rem;
|
483 |
+
line-height: 1.384615385rem;
|
484 |
+
margin: 0 0 5px 0;
|
485 |
}
|
486 |
|
487 |
+
.zerospam-form-fields {
|
488 |
+
--zerospam-block-gap: 0.875rem;
|
489 |
+
display: flex;
|
490 |
+
flex-wrap: wrap;
|
491 |
+
margin-left: calc(var(--zerospam-block-gap) / 2 * -1);
|
492 |
+
margin-right: calc(var(--zerospam-block-gap) / 2 * -1);
|
493 |
+
}
|
494 |
+
.zerospam-form-fields .zerospam-form-field {
|
495 |
+
margin: calc(var(--zerospam-block-gap) / 2);
|
496 |
+
width: calc(100% - var(--zerospam-block-gap));
|
497 |
+
}
|
498 |
+
.zerospam-form-fields .zerospam-form-field--half {
|
499 |
+
width: calc(50% - var(--zerospam-block-gap));
|
500 |
}
|
501 |
|
502 |
+
.zerospam-form > h2 {
|
503 |
+
display: none;
|
504 |
+
}
|
505 |
+
.zerospam-form tbody {
|
506 |
+
display: grid;
|
507 |
+
grid-column-gap: 0.875rem;
|
508 |
+
grid-row-gap: 0.875rem;
|
509 |
+
grid-template-columns: 1fr;
|
510 |
+
}
|
511 |
+
@media (min-width: 782px) {
|
512 |
+
.zerospam-form tbody {
|
513 |
+
grid-template-columns: 1fr 1fr;
|
514 |
+
}
|
515 |
+
}
|
516 |
+
.zerospam-form tr {
|
517 |
+
box-sizing: border-box;
|
518 |
+
display: block;
|
519 |
+
position: relative;
|
520 |
+
}
|
521 |
.zerospam-modal {
|
522 |
+
box-shadow: 0 0 4rem 100vw rgba(0, 0, 0, 0.5);
|
523 |
box-sizing: border-box;
|
524 |
left: 50%;
|
525 |
max-width: 600px;
|
534 |
width: 100%;
|
535 |
z-index: 1;
|
536 |
}
|
|
|
537 |
.zerospam-modal.is-active {
|
538 |
opacity: 1;
|
539 |
visibility: visible;
|
551 |
top: 15px;
|
552 |
width: 15px;
|
553 |
}
|
554 |
+
.zerospam-close-modal::before, .zerospam-close-modal::after {
|
|
|
|
|
555 |
background: #23282d;
|
556 |
content: "";
|
557 |
display: block;
|
561 |
top: 0;
|
562 |
width: 3px;
|
563 |
}
|
|
|
564 |
.zerospam-close-modal::before {
|
565 |
transform: rotate(45deg);
|
566 |
}
|
|
|
567 |
.zerospam-close-modal::after {
|
568 |
transform: rotate(-45deg);
|
569 |
}
|
570 |
|
571 |
+
.zerospam-type-blocked::before, .zerospam-type-login::before, .zerospam-type-registration::before, .zerospam-type-comment::before, .zerospam-type-fluent_form::before, .zerospam-type-wpforms::before, .zerospam-type-contactform7::before, .zerospam-type-givewp::before, .zerospam-type-memberpress_registration::before, .zerospam-type-memberpress_login::before, .zerospam-type-mailchimp4wp::before, .zerospam-type-woocommerce_registration::before, .zerospam-type-gravityforms::before, .zerospam-type-formidable::before {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
572 |
background-position: center;
|
573 |
background-repeat: no-repeat;
|
574 |
background-size: contain;
|
579 |
vertical-align: sub;
|
580 |
width: 16px;
|
581 |
}
|
|
|
|
|
582 |
.zerospam-type-blocked {
|
583 |
color: var(--zerospam-primary);
|
584 |
}
|
|
|
585 |
.zerospam-type-blocked::before {
|
586 |
background-image: url("../img/icon.svg");
|
587 |
}
|
588 |
+
.zerospam-type-login::before, .zerospam-type-registration::before, .zerospam-type-comment::before {
|
|
|
|
|
|
|
|
|
589 |
background-image: url("../img/icon-wordpress.svg");
|
590 |
}
|
|
|
|
|
591 |
.zerospam-type-fluent_form::before {
|
592 |
background-image: url("../img/icon-fluent-forms.svg");
|
593 |
}
|
594 |
+
.zerospam-type-formidable::before {
|
595 |
+
background-image: url("../../modules/formidable/icon-formidable.png");
|
596 |
+
}
|
597 |
.zerospam-type-wpforms::before {
|
598 |
+
background-image: url("../../modules/wpforms/icon-wpforms.svg");
|
599 |
}
|
|
|
|
|
600 |
.zerospam-type-contactform7::before {
|
601 |
+
background-image: url("../../modules/contactform7/icon-cf7.png");
|
602 |
}
|
603 |
+
.zerospam-type-memberpress_registration::before, .zerospam-type-memberpress_login::before {
|
|
|
|
|
|
|
604 |
background-image: url("../img/icon-memberpress.svg");
|
605 |
}
|
|
|
|
|
606 |
.zerospam-type-givewp::before {
|
607 |
+
background-image: url("../../modules/give/icon-givewp.png");
|
608 |
}
|
|
|
|
|
609 |
.zerospam-type-mailchimp4wp::before {
|
610 |
background-image: url("../img/icon-mc4wp.svg");
|
611 |
}
|
|
|
|
|
612 |
.zerospam-type-woocommerce_registration::before {
|
613 |
+
background-image: url("../../modules/woocommerce/icon-woocommerce.svg");
|
614 |
}
|
615 |
+
.zerospam-type-gravityforms::before {
|
616 |
+
background-image: url("../../modules/gravityforms/icon-gravity-forms.svg");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
617 |
}
|
618 |
|
619 |
.zerospam-list {
|
620 |
+
list-style: none;
|
621 |
margin: 0;
|
622 |
+
padding: 0;
|
623 |
}
|
624 |
+
.zerospam-list--data-actions li, .zerospam-list--data li {
|
|
|
625 |
align-items: center;
|
626 |
+
column-gap: 15px;
|
627 |
display: flex;
|
628 |
+
}
|
629 |
+
.zerospam-list--data-actions {
|
630 |
+
font-size: 12px;
|
631 |
+
line-height: 1.2;
|
632 |
+
}
|
633 |
+
.zerospam-list--data-actions .zerospam-list__value img {
|
634 |
+
vertical-align: sub;
|
635 |
+
}
|
636 |
+
.zerospam-list--data-actions .zerospam-list__value:first-child {
|
637 |
+
overflow: hidden;
|
638 |
+
text-overflow: ellipsis;
|
639 |
+
white-space: nowrap;
|
640 |
+
}
|
641 |
+
.zerospam-list--data-actions .zerospam-list__value:nth-child(2) {
|
642 |
+
flex-grow: 1;
|
643 |
+
text-align: right;
|
644 |
+
width: 25%;
|
645 |
+
}
|
646 |
+
.zerospam-list--data-actions .zerospam-list__value:nth-child(3) {
|
647 |
+
flex-shrink: 0;
|
648 |
+
text-align: right;
|
649 |
+
width: 30px;
|
650 |
+
}
|
651 |
+
.zerospam-list--data-actions .zerospam-list__value:last-child {
|
652 |
+
flex-shrink: 0;
|
653 |
+
text-align: right;
|
654 |
+
width: 40px;
|
655 |
+
}
|
656 |
+
.zerospam-list--data .zerospam-list__label,
|
657 |
+
.zerospam-list--data .zerospam-list__value {
|
658 |
+
font-size: 12px;
|
659 |
+
}
|
660 |
+
.zerospam-list--data .zerospam-list__label {
|
661 |
+
font-weight: bold;
|
662 |
+
flex-shrink: 0;
|
663 |
+
width: 170px;
|
664 |
+
}
|
665 |
+
.zerospam-list--data .zerospam-list__value {
|
666 |
+
flex-grow: 1;
|
667 |
+
}
|
668 |
+
.zerospam-list--checks {
|
669 |
+
font-size: 15px;
|
670 |
+
line-height: 1.3;
|
671 |
+
}
|
672 |
+
.zerospam-list--checks li {
|
673 |
+
margin-bottom: 20px;
|
674 |
+
padding-left: 30px;
|
675 |
+
position: relative;
|
676 |
+
}
|
677 |
+
.zerospam-list--checks li:last-child {
|
678 |
+
margin-bottom: 0;
|
679 |
+
}
|
680 |
+
.zerospam-list--checks li::before {
|
681 |
+
background-image: url("../img/icon-success.svg");
|
682 |
+
background-position: center;
|
683 |
+
background-repeat: no-repeat;
|
684 |
+
background-size: contain;
|
685 |
+
content: "";
|
686 |
+
display: inline-block;
|
687 |
+
height: 22px;
|
688 |
+
left: 0;
|
689 |
+
position: absolute;
|
690 |
+
top: -2px;
|
691 |
+
width: 22px;
|
692 |
}
|
693 |
|
694 |
+
.zerospam-flag {
|
695 |
+
margin-right: 5px;
|
696 |
+
vertical-align: sub;
|
697 |
}
|
698 |
|
699 |
+
/* */
|
700 |
+
.zerospam-dashboard__section-link,
|
701 |
+
.zerospam-new-window-link::after {
|
702 |
+
background-image: url("../img/icon-new-window.svg");
|
703 |
+
background-position: center;
|
704 |
+
background-repeat: no-repeat;
|
705 |
+
background-size: contain;
|
706 |
+
content: "";
|
707 |
+
display: inline-block;
|
708 |
+
height: 11px;
|
709 |
+
margin-left: 3px;
|
710 |
+
vertical-align: middle;
|
711 |
+
width: 11px;
|
712 |
}
|
713 |
|
714 |
+
.zerospam-notice {
|
715 |
+
background: #fff;
|
716 |
+
border: 1px solid #ccd0d4;
|
717 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
718 |
}
|
719 |
|
720 |
+
.zerospam-notice {
|
721 |
+
box-sizing: border-box;
|
722 |
+
padding: 30px;
|
723 |
}
|
724 |
|
725 |
+
.zerospam-notice {
|
726 |
+
margin: 20px 0;
|
|
|
727 |
}
|
728 |
|
729 |
+
/* Tabs */
|
730 |
+
.zerospam-settings-tabs .form-table,
|
731 |
+
.zerospam-tab {
|
732 |
+
display: none;
|
733 |
}
|
734 |
|
735 |
+
.zerospam-settings-tabs h2 {
|
736 |
+
background: #fff;
|
737 |
+
border: 1px solid #ccd0d4;
|
738 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
739 |
+
display: block;
|
740 |
+
cursor: pointer;
|
741 |
+
margin: 15px 0 0 0;
|
742 |
+
padding: 15px 20px;
|
743 |
}
|
744 |
|
745 |
+
.zerospam-settings-tabs .form-table {
|
746 |
+
background: #fff;
|
747 |
+
border: 1px solid #ccd0d4;
|
748 |
+
border-top: 0;
|
749 |
+
margin: 0;
|
750 |
+
padding: 20px;
|
751 |
}
|
752 |
|
753 |
+
.zerospam-settings-tabs .form-table.is-active,
|
754 |
+
.zerospam-tab.is-active {
|
755 |
+
display: block;
|
|
|
756 |
}
|
757 |
+
|
758 |
+
.zerospam-export-import-block {
|
759 |
+
column-gap: 12px;
|
760 |
+
display: grid;
|
761 |
+
grid-template-columns: 1fr 1fr;
|
762 |
+
}
|
763 |
+
|
764 |
+
/*# sourceMappingURL=admin.css.map */
|
assets/css/admin.css.map
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
{"version":3,"sourceRoot":"","sources":["../src/scss/admin.scss"],"names":[],"mappings":"AAkCA;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;AAAA;AAAA;EAEE;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;;AAGF;AAAA;EACE;;AAEA;AAAA;EACE;;;AAKN;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AA/FE;EAyFJ;IASI;IACA;IACA;;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAjHA;EAqHJ;IAEI;IACA;IACA;IACA;;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EAEE;EACA;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AA1KE;EAqKJ;IAQI;;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAMA;EAEE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIA;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAQJ;EACE;EACA;EACA;EACA;;AAIJ;EACE;;AAGF;EAEE;;AAEA;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAOF;EACE;EACA;;AAMJ;EACE;EACA;;AAEA;EACE;EACA;;AAnSJ;EAwSF;IAEI;;;AA1SF;EA8SF;IAEI;;;;AAKN;EACE;EAEA;EACA;EACA;EACA;;AAEA;EACE;;AAEA;EAEE;EACA;EACA;;AApUF;EAuUA;IAEI;;;AAzUJ;EA6UA;IAEI;;;;AAON;EACE;EACA;;AAQA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAIA;EACE;EACA;;;AAOJ;AAAA;EACE;;AAGF;AAAA;EACE;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAOE;EACA;EACA;EACA;EACA;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;;AAGF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EACE;EACA;;AAQJ;AAAA;AAAA;AAAA;EAEE;;AAEA;AAAA;AAAA;AAAA;EACE;EACA;EACA;;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;EAEE;EACA;;AAGF;AAAA;AAAA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;AAAA;AAAA;EACE;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAMA;AAAA;AAAA;AAAA;EACE;;AAGF;AAAA;AAAA;AAAA;EACE;EACA;EACA;;;AAOV;EACE;EACA;EACA;;;AAGF;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EAEA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAEA;EACE;;;AAMJ;EACE;;AAOF;EACE;EACA;EACA;EACA;;AAhjBA;EA4iBF;IAOI;;;AAIJ;EACE;EACA;EACA;;AAcJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;;AAmBA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;;AAEA;EACE;;AAOF;EACE;;AAKF;EACE;;AAKF;EACE;;AAKF;EACE;;AAKF;EACE;;AAMF;EACE;;AAKF;EACE;;AAKF;EACE;;AAKF;EACE;;AAKF;EACE;;;AAKN;EACE;EACA;EACA;;AAIE;EACE;EACA;EACA;;AAIJ;EACE;EACA;;AAOE;EACE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAMJ;AAAA;EAEE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAMR;EACE;EACA;;;AAGF;AACA;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AACA;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA","file":"admin.css"}
|
assets/img/icon-blocked.svg
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
|
3 |
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 64 64" style="enable-background:new 0 0 64 64;" xml:space="preserve">
|
5 |
+
<style type="text/css">
|
6 |
+
.st0{fill:#E0E0D1;}
|
7 |
+
.st1{opacity:0.2;}
|
8 |
+
.st2{fill:#231F20;}
|
9 |
+
.st3{fill:#C75C5C;}
|
10 |
+
</style>
|
11 |
+
<g id="Layer_1">
|
12 |
+
<g>
|
13 |
+
<circle class="st0" cx="32" cy="32" r="32"/>
|
14 |
+
</g>
|
15 |
+
<g class="st1">
|
16 |
+
<path class="st2" d="M32,12c-12.2,0-22,9.8-22,22s9.8,22,22,22s22-9.8,22-22S44.2,12,32,12z M48,34c0,3.3-1,6.4-2.8,9L23,20.8
|
17 |
+
c2.6-1.7,5.7-2.8,9-2.8C40.8,18,48,25.2,48,34z M16,34c0-3.3,1-6.4,2.8-9L41,47.2C38.4,49,35.3,50,32,50C23.2,50,16,42.8,16,34z"
|
18 |
+
/>
|
19 |
+
</g>
|
20 |
+
<g>
|
21 |
+
<path class="st3" d="M32,16c8.8,0,16,7.2,16,16s-7.2,16-16,16s-16-7.2-16-16S23.2,16,32,16 M32,10c-12.2,0-22,9.8-22,22
|
22 |
+
s9.8,22,22,22s22-9.8,22-22S44.2,10,32,10L32,10z"/>
|
23 |
+
</g>
|
24 |
+
<g>
|
25 |
+
<rect x="12.2" y="29" transform="matrix(0.7071 0.7071 -0.7071 0.7071 32 -13.2548)" class="st3" width="39.6" height="6"/>
|
26 |
+
</g>
|
27 |
+
</g>
|
28 |
+
<g id="Layer_2">
|
29 |
+
</g>
|
30 |
+
</svg>
|
assets/img/icon-bug.svg
ADDED
@@ -0,0 +1,86 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
5 |
+
<g>
|
6 |
+
<path style="fill:#C74C4E;" d="M495.078,327.706H438.13c-9.346,0-16.922-7.577-16.922-16.922c0-9.346,7.577-16.922,16.922-16.922
|
7 |
+
h56.947c9.346,0,16.922,7.577,16.922,16.922C512,320.13,504.423,327.706,495.078,327.706z"/>
|
8 |
+
<path style="fill:#C74C4E;" d="M372.82,193.964c-6.609-6.609-6.609-17.323,0-23.932l40.267-40.266
|
9 |
+
c6.608-6.609,17.323-6.608,23.932,0c6.609,6.609,6.609,17.323,0,23.932l-40.267,40.267
|
10 |
+
C390.143,200.572,379.428,200.573,372.82,193.964z"/>
|
11 |
+
<path style="fill:#C74C4E;" d="M413.087,491.803l-40.267-40.267c-6.609-6.609-6.609-17.323,0-23.932
|
12 |
+
c6.608-6.609,17.323-6.609,23.932,0l40.267,40.267c6.609,6.609,6.609,17.323,0,23.932
|
13 |
+
C430.411,498.412,419.696,498.413,413.087,491.803z"/>
|
14 |
+
</g>
|
15 |
+
<g>
|
16 |
+
<path style="fill:#DE5153;" d="M73.87,327.706H16.922C7.577,327.706,0,320.13,0,310.784c0-9.346,7.577-16.922,16.922-16.922H73.87
|
17 |
+
c9.346,0,16.922,7.577,16.922,16.922C90.792,320.13,83.215,327.706,73.87,327.706z"/>
|
18 |
+
<path style="fill:#DE5153;" d="M115.248,193.964l-40.267-40.267c-6.609-6.608-6.609-17.323,0-23.932
|
19 |
+
c6.608-6.609,17.323-6.609,23.932,0l40.267,40.266c6.609,6.609,6.609,17.323,0,23.932
|
20 |
+
C132.574,200.572,121.857,200.573,115.248,193.964z"/>
|
21 |
+
<path style="fill:#DE5153;" d="M74.981,491.803c-6.609-6.609-6.609-17.323,0-23.932l40.267-40.267
|
22 |
+
c6.608-6.609,17.323-6.609,23.932,0s6.609,17.323,0,23.932l-40.267,40.267C92.305,498.412,81.589,498.413,74.981,491.803z"/>
|
23 |
+
<path style="fill:#DE5153;" d="M318.458,157.792c-19.824-8.106-40.838-12.216-62.458-12.216c-21.619,0-42.633,4.11-62.458,12.216
|
24 |
+
c-9.484,3.876-20.213-1.507-22.783-11.411c-6.887-26.532-1.199-54.209,15.608-75.937c16.808-21.73,42.189-34.192,69.635-34.192
|
25 |
+
s52.826,12.461,69.633,34.188c16.807,21.727,22.497,49.407,15.609,75.94C338.659,156.338,327.89,161.648,318.458,157.792z"/>
|
26 |
+
</g>
|
27 |
+
<path style="fill:#C74C4E;" d="M325.633,70.44C308.827,48.713,283.446,36.252,256,36.252v109.324c21.62,0,42.634,4.11,62.458,12.216
|
28 |
+
c9.431,3.856,20.2-1.454,22.783-11.412C348.13,119.846,342.441,92.167,325.633,70.44z"/>
|
29 |
+
<g>
|
30 |
+
<path style="fill:#FC5B5D;" d="M244.924,65.966l-39.36-34.086c-7.066-6.118-7.833-16.805-1.715-23.871
|
31 |
+
c6.117-7.065,16.805-7.833,23.87-1.714L256,30.788l28.282-24.492c7.062-6.12,17.75-5.351,23.87,1.714s5.351,17.752-1.715,23.871
|
32 |
+
l-39.36,34.086C260.722,71.473,251.28,71.473,244.924,65.966z"/>
|
33 |
+
<path style="fill:#FC5B5D;" d="M256,509.837c-109.759,0-199.053-89.295-199.053-199.053c0-109.971,89.103-199.053,199.053-199.053
|
34 |
+
c109.935,0,199.053,89.071,199.053,199.053C455.053,420.542,365.759,509.837,256,509.837z"/>
|
35 |
+
</g>
|
36 |
+
<g>
|
37 |
+
<path style="fill:#DE5153;" d="M256,111.731v398.105c109.759,0,199.053-89.295,199.053-199.053
|
38 |
+
C455.053,200.802,365.935,111.731,256,111.731z"/>
|
39 |
+
<path style="fill:#DE5153;" d="M239.078,112.451V509.11c10.98,0.928,21.944,1.006,33.845,0V112.451
|
40 |
+
C261.924,111.528,250.948,111.456,239.078,112.451z"/>
|
41 |
+
<path style="fill:#DE5153;" d="M164.935,356.356c-25.128,0-45.572-20.443-45.572-45.572c0-25.128,20.443-45.572,45.572-45.572
|
42 |
+
s45.572,20.443,45.572,45.572C210.507,335.913,190.064,356.356,164.935,356.356z"/>
|
43 |
+
<circle style="fill:#DE5153;" cx="195.702" cy="397.26" r="17.336"/>
|
44 |
+
<circle style="fill:#DE5153;" cx="204.332" cy="227.889" r="17.336"/>
|
45 |
+
<path style="fill:#DE5153;" d="M308.153,8.008c-6.119-7.065-16.807-7.834-23.87-1.714l-28.282,24.492L256,30.786v39.31
|
46 |
+
c3.95,0,7.901-1.376,11.079-4.13l39.36-34.086C313.505,25.761,314.272,15.074,308.153,8.008z"/>
|
47 |
+
</g>
|
48 |
+
<g>
|
49 |
+
<path style="fill:#C74C4E;" d="M272.922,112.451c-5.606-0.47-11.207-0.716-16.922-0.716v398.099c5.491,0,11.093-0.229,16.922-0.723
|
50 |
+
V112.451z"/>
|
51 |
+
<path style="fill:#C74C4E;" d="M347.065,356.356c-25.128,0-45.572-20.443-45.572-45.572c0-25.128,20.443-45.572,45.572-45.572
|
52 |
+
c25.129,0,45.572,20.443,45.572,45.572C392.636,335.913,372.193,356.356,347.065,356.356z"/>
|
53 |
+
<circle style="fill:#C74C4E;" cx="316.302" cy="397.26" r="17.336"/>
|
54 |
+
<circle style="fill:#C74C4E;" cx="307.672" cy="227.889" r="17.336"/>
|
55 |
+
</g>
|
56 |
+
<g>
|
57 |
+
</g>
|
58 |
+
<g>
|
59 |
+
</g>
|
60 |
+
<g>
|
61 |
+
</g>
|
62 |
+
<g>
|
63 |
+
</g>
|
64 |
+
<g>
|
65 |
+
</g>
|
66 |
+
<g>
|
67 |
+
</g>
|
68 |
+
<g>
|
69 |
+
</g>
|
70 |
+
<g>
|
71 |
+
</g>
|
72 |
+
<g>
|
73 |
+
</g>
|
74 |
+
<g>
|
75 |
+
</g>
|
76 |
+
<g>
|
77 |
+
</g>
|
78 |
+
<g>
|
79 |
+
</g>
|
80 |
+
<g>
|
81 |
+
</g>
|
82 |
+
<g>
|
83 |
+
</g>
|
84 |
+
<g>
|
85 |
+
</g>
|
86 |
+
</svg>
|
assets/img/icon-edit.svg
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="489px" height="489px" viewBox="0 0 489 489" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>icon-edit</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="icon-edit" transform="translate(0.697000, 0.000236)" fill="#FFFFFF" fill-rule="nonzero">
|
6 |
+
<path d="M486.45,462.519764 L450.05,294.919764 C450.05,290.719764 447.95,287.619764 444.85,284.519764 L183.55,23.2197636 C163.55,0.319763574 109.25,-14.8802364 71.15,23.2197636 L23.25,71.1197636 C-7.75,102.119764 -7.75,152.519764 23.25,183.519764 L284.55,444.819764 C286.65,446.919764 289.75,449.019764 293.95,450.019764 L462.55,488.519764 C472.65,490.019764 491.65,483.619764 486.45,462.519764 Z M52.35,154.419764 C36.75,138.819764 36.75,114.819764 52.35,99.2197636 L100.25,51.3197636 C115.45,36.1197636 140.25,36.1197636 155.45,51.3197636 L393.85,289.719764 L366.75,289.719764 C355.35,289.719764 345.95,299.119764 345.95,310.519764 L345.95,344.819764 L311.65,344.819764 C300.25,344.819764 290.85,354.219764 290.85,365.619764 L290.85,391.719764 L52.35,154.419764 Z M332.35,415.719764 L332.35,386.519764 L366.65,386.519764 C384.65,388.219764 387.45,370.019764 387.45,365.719764 L387.45,331.319764 L416.65,331.319764 L440.65,440.619764 L332.35,415.719764 Z" id="Shape"></path>
|
7 |
+
</g>
|
8 |
+
</g>
|
9 |
+
</svg>
|
assets/img/icon-email.svg
ADDED
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 309.267 309.267" style="enable-background:new 0 0 309.267 309.267;" xml:space="preserve">
|
5 |
+
<g>
|
6 |
+
<path style="fill:#F4B459;" d="M28.994,256.112h251.279c16.014,0,28.994-12.989,28.994-28.994V82.149
|
7 |
+
c0-16.014-12.98-28.994-28.994-28.994H28.994C12.989,53.155,0,66.135,0,82.149v144.969C0,243.123,12.989,256.112,28.994,256.112z"
|
8 |
+
/>
|
9 |
+
<g>
|
10 |
+
<path style="fill:#E8AB54;" d="M9.723,248.622l120.943-93.07L9.984,60.413C3.914,65.729,0,73.441,0,82.149v144.969
|
11 |
+
C0,235.69,3.798,243.316,9.723,248.622z M299.486,60.578l-125.417,95.245l125.301,92.944c6.031-5.306,9.897-12.999,9.897-21.649
|
12 |
+
V82.149C309.267,73.538,305.44,65.893,299.486,60.578z"/>
|
13 |
+
</g>
|
14 |
+
<path style="fill:#FADAAC;" d="M305.44,241.257L199.825,156.75l106.881-86.44c-2.378-5.267-6.253-9.665-11.105-12.69
|
15 |
+
L159.079,166.83L18.865,55.069c-5.644,2.117-10.486,5.866-13.83,10.776l112.892,90.548L6.495,245.181
|
16 |
+
c3.798,4.716,8.978,8.196,14.99,9.819l110.399-87.32l6.736,5.432c11.308,11.646,29.641,11.646,40.959,0l6.272-5.074l107.267,84.942
|
17 |
+
C298.327,250.39,302.589,246.312,305.44,241.257z"/>
|
18 |
+
</g>
|
19 |
+
<g>
|
20 |
+
</g>
|
21 |
+
<g>
|
22 |
+
</g>
|
23 |
+
<g>
|
24 |
+
</g>
|
25 |
+
<g>
|
26 |
+
</g>
|
27 |
+
<g>
|
28 |
+
</g>
|
29 |
+
<g>
|
30 |
+
</g>
|
31 |
+
<g>
|
32 |
+
</g>
|
33 |
+
<g>
|
34 |
+
</g>
|
35 |
+
<g>
|
36 |
+
</g>
|
37 |
+
<g>
|
38 |
+
</g>
|
39 |
+
<g>
|
40 |
+
</g>
|
41 |
+
<g>
|
42 |
+
</g>
|
43 |
+
<g>
|
44 |
+
</g>
|
45 |
+
<g>
|
46 |
+
</g>
|
47 |
+
<g>
|
48 |
+
</g>
|
49 |
+
</svg>
|
assets/img/icon-error.svg
ADDED
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
5 |
+
<path style="fill:#464655;" d="M509.435,448.962L271.75,44.367c-7.076-12.045-24.424-12.045-31.5,0L2.565,448.962
|
6 |
+
c-7.194,12.245,1.595,27.705,15.75,27.705h475.368C507.839,476.666,516.629,461.207,509.435,448.962z"/>
|
7 |
+
<path style="fill:#5B5D6E;" d="M310.09,109.633c-75.525,54.5-124.731,143.208-124.731,243.46c0,44.069,9.578,85.877,26.64,123.573
|
8 |
+
h281.685c14.155,0,22.944-15.459,15.75-27.705L310.09,109.633z"/>
|
9 |
+
<path style="fill:#FFDC64;" d="M252.195,93.738L53.788,431.474c-2.57,4.374,0.585,9.885,5.658,9.885h393.11
|
10 |
+
c5.073,0,8.228-5.511,5.658-9.885L259.805,93.738C258.099,90.834,253.901,90.834,252.195,93.738z"/>
|
11 |
+
<path style="fill:#FFF082;" d="M185.36,353.093c0,30.722,4.638,60.357,13.216,88.267h253.98c5.073,0,8.228-5.511,5.658-9.885
|
12 |
+
L282.389,132.181C222.755,187.029,185.36,265.683,185.36,353.093z"/>
|
13 |
+
<g>
|
14 |
+
<circle style="fill:#464655;" cx="256.028" cy="379.568" r="17.653"/>
|
15 |
+
<path style="fill:#464655;" d="M239.049,213.171l7.566,113.485c0.33,4.948,4.174,8.784,8.805,8.784h1.216
|
16 |
+
c4.631,0,8.475-3.834,8.805-8.784l7.566-113.485c0.365-5.475-3.682-10.131-8.805-10.131h-16.347
|
17 |
+
C242.731,203.04,238.684,207.697,239.049,213.171z"/>
|
18 |
+
</g>
|
19 |
+
<path style="fill:#FFC850;" d="M452.556,450.186H59.442c-5.499,0-10.62-2.966-13.353-7.741c-2.733-4.78-2.698-10.697,0.086-15.442
|
20 |
+
L244.587,89.258c2.405-4.086,6.672-6.525,11.422-6.525c4.741,0,9.008,2.439,11.413,6.525l198.401,337.744
|
21 |
+
c2.784,4.75,2.819,10.667,0.086,15.442C463.176,447.22,458.055,450.186,452.556,450.186z M63.399,432.533h385.201L255.998,104.684
|
22 |
+
L63.399,432.533z"/>
|
23 |
+
<path style="fill:#FFDC64;" d="M448.599,432.533H196.069c1.633,5.964,3.455,11.844,5.441,17.653h251.048
|
24 |
+
c5.499,0,10.62-2.966,13.353-7.741c2.733-4.775,2.698-10.692-0.086-15.442L289.135,126.224c-4.553,3.944-9,8.005-13.307,12.212
|
25 |
+
L448.599,432.533z"/>
|
26 |
+
<g>
|
27 |
+
</g>
|
28 |
+
<g>
|
29 |
+
</g>
|
30 |
+
<g>
|
31 |
+
</g>
|
32 |
+
<g>
|
33 |
+
</g>
|
34 |
+
<g>
|
35 |
+
</g>
|
36 |
+
<g>
|
37 |
+
</g>
|
38 |
+
<g>
|
39 |
+
</g>
|
40 |
+
<g>
|
41 |
+
</g>
|
42 |
+
<g>
|
43 |
+
</g>
|
44 |
+
<g>
|
45 |
+
</g>
|
46 |
+
<g>
|
47 |
+
</g>
|
48 |
+
<g>
|
49 |
+
</g>
|
50 |
+
<g>
|
51 |
+
</g>
|
52 |
+
<g>
|
53 |
+
</g>
|
54 |
+
<g>
|
55 |
+
</g>
|
56 |
+
</svg>
|
assets/img/icon-export.svg
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
1 |
+
<svg width="24px" height="24px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
2 |
+
<path fill-rule="evenodd" d="M19.7903934,18.6127185 L19.7072026,18.7069258 L16.7071326,21.7069258 C16.6801187,21.7339397 16.6515664,21.7594153 16.6216183,21.7832098 L16.500353,21.8659223 L16.500353,21.8659223 L16.427064,21.9043128 L16.427064,21.9043128 L16.3400271,21.9405322 L16.3400271,21.9405322 L16.2335653,21.9723902 L16.2335653,21.9723902 L16.116647,21.9930913 L16.033029,21.9992768 L16.033029,21.9992768 L15.9409671,21.9980859 L15.8251966,21.9845213 L15.8251966,21.9845213 L15.6878494,21.9500809 L15.6878494,21.9500809 L15.5767675,21.9061457 L15.5767675,21.9061457 L15.4792778,21.8538236 L15.4792778,21.8538236 L15.3832241,21.7870331 L15.2928749,21.7069258 L12.2927974,18.7069258 C11.902263,18.3164015 11.902263,17.6832365 12.2927974,17.2927122 C12.6532907,16.9322283 13.2205364,16.9044987 13.6128377,17.2095236 L13.7070475,17.2927122 L14.9998966,18.584819 L14.9999741,8.99981902 C14.9999741,8.48698318 15.3860143,8.06431186 15.883353,8.00654675 L16.0000259,7.99981902 C16.5523106,7.99981902 17.0000259,8.44753427 17.0000259,8.99981902 L16.9998966,18.584819 L18.2929525,17.2927122 C18.6534458,16.9322283 19.2206915,16.9044987 19.6129929,17.2095236 L19.7072026,17.2927122 C20.0376548,17.6231559 20.0884936,18.1273245 19.859719,18.511222 L19.7903934,18.6127185 L19.7903934,18.6127185 Z M4.29279737,5.29255711 L7.29286736,2.29255711 L7.40481484,2.1959774 L7.51569719,2.12453966 L7.51569719,2.12453966 L7.62891562,2.07076785 L7.62891562,2.07076785 L7.73413453,2.03538486 L7.73413453,2.03538486 L7.82519664,2.01496161 L7.82519664,2.01496161 L7.94096709,2.00139699 L8.05914398,2.00139699 L8.05914398,2.00139699 L8.17466132,2.0149356 L8.17466132,2.0149356 L8.31274961,2.04953478 L8.31274961,2.04953478 L8.36670687,2.06905084 L8.45385903,2.10832658 L8.45385903,2.10832658 L8.52068604,2.14573132 L8.52068604,2.14573132 L8.60170489,2.20078783 L8.60170489,2.20078783 L8.66547577,2.25320781 L8.66547577,2.25320781 L8.70713264,2.29255711 L11.7072026,5.29255711 L11.7903934,5.38676445 C12.0700068,5.74636472 12.0700068,6.25296306 11.7903934,6.61256333 L11.7072026,6.70677067 L11.6129929,6.78995928 C11.2533833,7.06956543 10.7467718,7.06956543 10.3871623,6.78995928 L10.2929525,6.70677067 L8.99989658,5.41466389 L9.00002585,14.9996639 C9.00002585,15.5124997 8.61398566,15.9351711 8.11664698,15.9929362 L8.00002585,15.9996639 L7.88335302,15.9929362 C7.42427116,15.9396145 7.06002351,15.5753669 7.00670188,15.116285 L6.99997415,14.9996639 L6.99989658,5.41466389 L5.7070475,6.70677067 L5.61283773,6.78995928 C5.22053638,7.09498417 4.65329066,7.06725463 4.29279737,6.70677067 C3.93230409,6.34628671 3.90457384,5.77905565 4.20960662,5.38676445 L4.29279737,5.29255711 Z"/>
|
3 |
+
</svg>
|
assets/img/icon-google.svg
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#FFC107" d="M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12c0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24c0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z"/><path fill="#FF3D00" d="M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z"/><path fill="#4CAF50" d="M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36c-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z"/><path fill="#1976D2" d="M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571c0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z"/></svg>
|
assets/img/icon-honeypot.svg
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<?xml version="1.0" ?><svg width="47.5px" height="47.5px" viewBox="0 0 47.5 47.5" id="svg2" style="enable-background:new 0 0 47.5 47.5;" version="1.1" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg"><defs id="defs6"><clipPath clipPathUnits="userSpaceOnUse" id="clipPath16"><path d="M 0,38 38,38 38,0 0,0 0,38 Z" id="path18"/></clipPath></defs><g id="g10" transform="matrix(1.25,0,0,-1.25,0,47.5)"><g id="g12"><g clip-path="url(#clipPath16)" id="g14"><g id="g20" transform="translate(32,15)"><path d="m 0,0 c -3,-11 -5.019,-14 -13,-14 -8,0 -10,3 -13,14 -2.035,7.46 2,14 13,14 C -2,14 2.034,7.46 0,0" id="path22" style="fill:#f4900c;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g24" transform="translate(30,26)"><path d="m 0,0 c 2,-4 -3,-8 -11,-8 -8,0 -13,4 -11,8 1.482,2.964 4.373,6 11,6 6.627,0 9.519,-3.036 11,-6" id="path26" style="fill:#be1931;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g28" transform="translate(31,26)"><path d="m 0,0 c 0,-4 -5.373,-6 -12,-6 -6.627,0 -12,2 -12,6 0,3.313 5.373,6 12,6 C -5.373,6 0,3.313 0,0" id="path30" style="fill:#ffac33;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g32" transform="translate(28,27)"><path d="m 0,0 c 1,-1 2,-2 2,-3 0,-1 -1,-3 -2,-2 0,0 2.948,-1.154 2,-4 -1,-3 -4,-2 -4,0 0,2 -1.553,3.342 -2,2 -1,-3 -3,-3 -4,-2 -1,1 -1,2 -1,2 0,0 -3,0 -2,2 1,2 0,2 0,2 0,0 0,1 1,1 1,0 7,1 8,2 1,1 2,0 2,0" id="path34" style="fill:#ffe8b6;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g36" transform="translate(29,27.7222)"><path d="m 0,0 c 0,-2.608 -4.477,-4.722 -10,-4.722 -5.523,0 -10,2.114 -10,4.722 0,2.608 4.477,4.278 10,4.278 5.523,0 10,-1.67 10,-4.278" id="path38" style="fill:#662113;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g40" transform="translate(19,23)"><path d="M 0,0 C 4.548,0 8.379,1.435 9.593,3.396 9.4,3.598 9.201,3.799 9,4 9,4 7,6 6,5 5,4 0,4 -1,4 -2,4 -3,3 -3,3 -3,3 -1.413,0.989 -1.603,0.066 -1.08,0.026 -0.547,0 0,0" id="path42" style="fill:#f4900c;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g44" transform="translate(27,28.5)"><path d="m 0,0 c 0,-1.933 -3.582,-3.5 -8,-3.5 -4.418,0 -8,1.567 -8,3.5 0,1.933 3.582,5.5 8,5.5 4.418,0 8,-3.567 8,-5.5" id="path46" style="fill:#ffcc4d;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g48" transform="translate(21,34.5)"><path d="m 0,0 c 0,-0.828 -0.896,-1.5 -2,-1.5 -1.104,0 -2,0.672 -2,1.5 0,0.828 0.896,1.5 2,1.5 1.104,0 2,-0.672 2,-1.5" id="path50" style="fill:#f4900c;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g><g id="g52" transform="translate(6.6851,12.5898)"><path d="m 0,0 c 0.725,-2.457 1.425,-4.436 2.204,-6.013 3.111,-2.577 8.111,-2.577 10.111,-2.577 2,0 7,0 10.106,2.576 0.781,1.577 1.483,3.556 2.208,6.014 C 21.924,-1.562 17.427,-2.59 12.315,-2.59 7.203,-2.59 2.705,-1.562 0,0" id="path54" style="fill:#ffcc4d;fill-opacity:1;fill-rule:nonzero;stroke:none"/></g></g></g></g></svg>
|
assets/img/icon-info.svg
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="246px" height="246px" viewBox="0 0 246 246" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>icon-info</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="icon-info" fill="#FFFFFF" fill-rule="nonzero">
|
6 |
+
<path d="M122.667,0 C55.028,0 0,55.028 0,122.667 C0,190.306 55.027,245.334 122.666,245.334 C190.305,245.334 245.333,190.306 245.333,122.667 C245.333,55.028 190.305,0 122.667,0 Z M122.667,215.334 C71.57,215.334 30,173.764 30,122.667 C30,71.57 71.57,30 122.667,30 C173.764,30 215.334,71.57 215.334,122.667 C215.334,173.764 173.763,215.334 122.667,215.334 Z" id="Shape"></path>
|
7 |
+
<rect id="Rectangle" x="107.667" y="109.167" width="30" height="79"></rect>
|
8 |
+
<rect id="Rectangle" x="107.667" y="57.167" width="30" height="29"></rect>
|
9 |
+
</g>
|
10 |
+
</g>
|
11 |
+
</svg>
|
assets/img/icon-ipinfo.svg
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="24px" height="30px" viewBox="0 0 24 30" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>Path</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="logo" transform="translate(0.000000, 0.000977)" fill="#0095E5">
|
6 |
+
<path d="M13.2061,22.6077235 L15.1581,24.8807235 L17.4131,22.9147235 L19.6221,20.9887235 C21.9976,18.9002235 23.4548,15.9599235 23.6781,12.8047235 C23.9057,9.64720345 22.882,6.52684345 20.8281,4.11777345 C19.8094,2.93635345 18.5678,1.96731345 17.1744,1.26603345 C15.7809,0.564756452 14.2629,0.145003452 12.7071,0.0307712515 C11.1521,-0.0815362485 9.59012996,0.114261452 8.11090996,0.606934452 C6.63168996,1.09960345 5.26427996,1.87946345 4.08711996,2.90177345 C1.71146996,4.99064345 0.254275959,7.93125345 0.0311230588,11.0867235 C-0.196099041,14.2440235 0.827587959,17.3639235 2.88111996,19.7727235 L10.6701,28.8427235 C11.3661,29.6527235 12.0981,30.5307235 13.2291,29.5947235 L13.2631,29.5657235 L13.2951,29.5367235 C14.3771,28.5417235 13.6201,27.6857235 12.9241,26.8747235 L12.4381,26.3097235 L5.13611996,17.8027235 C3.60076996,15.9983235 2.83581996,13.6629235 3.00611996,11.2997235 C3.17376996,8.93808345 4.26396996,6.73719345 6.04111996,5.17277345 C6.92283996,4.40840345 7.94663996,3.82541345 9.05391996,3.45717345 C10.1612,3.08894345 11.3302,2.94268345 12.4941,3.02677345 C14.846,3.19983345 17.033,4.29976345 18.5741,6.08477345 C20.1095,7.88921345 20.8744,10.2246235 20.7041,12.5877235 C20.5367,14.9493235 19.4469,17.1502235 17.6701,18.7147235 L15.4621,20.6407235 L13.5101,18.3677235 L11.5581,16.0947235 L9.64811996,13.8697235 C9.14905996,13.2749235 8.90099996,12.5091235 8.95642996,11.7346235 C9.01185996,10.9601235 9.36642996,10.2375235 9.94511996,9.71977345 C10.5329,9.21767345 11.295,8.96749345 12.066,9.02346345 C12.8371,9.07943345 13.555,9.43704345 14.0641,10.0187235 C14.4992,10.5372235 14.7459,11.1877235 14.7641,11.8643235 C14.7823,12.5409235 14.5708,13.2037235 14.1641,13.7447235 C13.9701,14.0270235 13.8743,14.3654235 13.8917,14.7075235 C13.909,15.0496235 14.0385,15.3765235 14.2601,15.6377235 C15.2401,16.7787235 16.3211,15.9937235 16.8971,15.0277235 C17.5386,13.9495235 17.8276,12.6979235 17.7238,11.4476235 C17.62,10.1972235 17.1286,9.01049345 16.3181,8.05277345 C15.2939,6.86873345 13.8415,6.13979345 12.2801,6.02616345 C10.7186,5.91253345 9.17597996,6.42350345 7.99111996,7.44677345 C6.81345996,8.48874345 6.09098996,9.95070345 5.97862996,11.5191235 C5.86627996,13.0875235 6.37299996,14.6376235 7.39011996,15.8367235 L9.30111996,18.0627235 L11.2541,20.3327235 L13.2061,22.6057235 L13.2061,22.6077235 L13.2061,22.6077235 Z" id="Path"></path>
|
7 |
+
</g>
|
8 |
+
</g>
|
9 |
+
</svg>
|
assets/img/icon-ipstack.svg
ADDED
@@ -0,0 +1,23 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="73px" height="73px" viewBox="0 0 73 73" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>ipstack_logo</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="ipstack_logo" transform="translate(0.400000, 0.400000)" fill-rule="nonzero">
|
6 |
+
<g id="Group">
|
7 |
+
<g fill="#E97C2A" id="Path">
|
8 |
+
<path d="M22.3,2.8 L22.3,2.8 C22.3,2.8 22.4,2.8 22.4,2.8 C22.4,2.8 22.3,2.8 22.3,2.8 Z"></path>
|
9 |
+
<path d="M15.9,17.1 C15.9,14.1 18.2,11.6 21.1,11.2 L22.3,2.8 C13.3,6.5 6.2,13.7 2.5,22.7 L15.9,17.7 C15.9,17.5 15.9,17.3 15.9,17.1 Z"></path>
|
10 |
+
<path d="M24.4,41.4 L0.1,40.1 C1,48 4.4,55.1 9.5,60.6 C10.4,58.5 12.5,57 15,57 C15.6,57 16.2,57.1 16.8,57.3 L25.6,43.3 C25.1,42.7 24.7,42.1 24.4,41.4 Z"></path>
|
11 |
+
<path d="M26.3,34.4 L22.2,23.1 C22.1,23.1 22.1,23.1 22,23.1 C20.3,23.1 18.8,22.4 17.7,21.3 L1,27.5 C0.3,30.2 0,33.1 0,36 L24.3,37.3 C24.6,36.2 25.3,35.2 26.3,34.4 Z"></path>
|
12 |
+
<path d="M29.9,45.1 C29.6,45.1 29.4,45.1 29.1,45 L19.9,59.7 C20.5,60.7 20.9,61.8 20.9,63 C20.9,64.9 20,66.5 18.7,67.6 C24,70.5 29.9,72 35.9,72 C36.7,72 37.5,72 38.3,71.9 L29.9,45.1 Z"></path>
|
13 |
+
<path d="M47.9,7.1 C47.9,5.4 48.6,3.9 49.7,2.8 C45.5,1 40.8,0 35.9,0 C32.6,0 29.5,0.4 26.5,1.3 L25,11.9 C25.8,12.4 26.5,13 26.9,13.8 L47.9,7.2 C47.9,7.3 47.9,7.2 47.9,7.1 Z"></path>
|
14 |
+
<path d="M63.9,44.1 C63.9,47.1 61.7,49.6 58.8,50 L54.4,66.9 C64.2,61 71,50.5 71.8,38.4 L63.9,43.3 C63.9,43.6 63.9,43.8 63.9,44.1 Z"></path>
|
15 |
+
<path d="M59.6,9 C59.1,10.4 58.1,11.6 56.8,12.4 L59.6,38.3 C60.6,38.6 61.4,39.1 62.1,39.7 L71.8,33.7 C71.2,23.9 66.6,15.1 59.6,9 Z"></path>
|
16 |
+
<path d="M55.6,38.5 L52.8,12.9 C51.5,12.6 50.3,12 49.4,11 L27.8,17.8 C27.6,19.3 26.9,20.6 25.8,21.6 L30,33.1 C33,33.2 35.5,35.5 35.9,38.4 L52.5,41.4 C53.2,40.1 54.3,39.1 55.6,38.5 Z"></path>
|
17 |
+
<path d="M52.1,45.4 L35,42.3 C34.6,42.8 34.2,43.3 33.7,43.7 L42.4,71.4 C44.9,70.9 47.4,70.2 49.7,69.3 L54.9,49.2 C53.5,48.4 52.5,47 52.1,45.4 Z"></path>
|
18 |
+
</g>
|
19 |
+
<path d="M14.9,60.1 C16.6,60.1 17.9,61.4 17.9,63.1 C17.9,64.4 17,65.6 15.8,66 C14.4,65.1 13.2,64.1 11.9,63 C12,61.3 13.3,60.1 14.9,60.1 Z M29.9,42.1 C28.2,42.1 26.9,40.8 26.9,39.1 C26.9,37.4 28.2,36.1 29.9,36.1 C31.6,36.1 32.9,37.4 32.9,39.1 C32.9,40.8 31.6,42.1 29.9,42.1 Z M24.9,17.1 C24.9,18.8 23.6,20.1 21.9,20.1 C20.2,20.1 18.9,18.8 18.9,17.1 C18.9,15.4 20.2,14.1 21.9,14.1 C23.6,14.1 24.9,15.4 24.9,17.1 Z M57.9,47.1 C56.2,47.1 54.9,45.8 54.9,44.1 C54.9,42.4 56.2,41.1 57.9,41.1 C59.6,41.1 60.9,42.4 60.9,44.1 C60.9,45.8 59.6,47.1 57.9,47.1 L57.9,47.1 Z M56.9,7.1 C56.9,8.8 55.6,10.1 53.9,10.1 C52.2,10.1 50.9,8.8 50.9,7.1 C50.9,5.8 51.7,4.7 52.8,4.3 C54.2,5.1 55.6,5.9 56.9,6.8 C56.9,6.9 56.9,7 56.9,7.1 Z" id="Shape" fill="#FFFFFF"></path>
|
20 |
+
</g>
|
21 |
+
</g>
|
22 |
+
</g>
|
23 |
+
</svg>
|
assets/img/icon-location.svg
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<?xml version="1.0" ?><svg width="32px" height="32px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><defs><style>.cls-1{fill:#8c9eff;}.cls-2{fill:#5f7cf9;}.cls-3{fill:#4062ed;}</style></defs><title/><g id="Map"><path class="cls-1" d="M25.7,11.49a10.49,10.49,0,0,0-2.84-6.63,9.71,9.71,0,0,0-13.72,0A10.49,10.49,0,0,0,6.3,11.49c-.27,3.13,1.22,5.8,2.78,8.27.37.58,3.64,5.78,5.22,8.35a2,2,0,0,0,1.7.95h0a2,2,0,0,0,1.7-.95c1.58-2.57,4.85-7.77,5.22-8.35C24.48,17.29,26,14.62,25.7,11.49Z"/><path class="cls-2" d="M17.7,28.11c1.58-2.57,4.85-7.77,5.22-8.35,1.56-2.47,3-5.14,2.78-8.27a10.49,10.49,0,0,0-2.84-6.63A9.64,9.64,0,0,0,16,2v27A2,2,0,0,0,17.7,28.11Z"/><circle class="cls-2" cx="16" cy="12" r="4"/><path class="cls-3" d="M20,12a4,4,0,0,0-4-4v8A4,4,0,0,0,20,12Z"/></g></svg>
|
assets/img/icon-log.svg
ADDED
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
5 |
+
<rect x="73.846" y="334.769" style="fill:#707487;" width="49.231" height="78.769"/>
|
6 |
+
<path style="fill:#FF7873;" d="M452.923,167.385v118.154l50.849-8.475c4.747-0.791,8.228-4.898,8.228-9.712v-81.78
|
7 |
+
c0-4.814-3.479-8.921-8.228-9.712L452.923,167.385z"/>
|
8 |
+
<path style="fill:#FF5050;" d="M452.923,0h-5.093c-3.003,0-5.744,1.41-7.623,3.753C368.023,93.66,102.871,106.256,29.041,108.021
|
9 |
+
c-10.699,0.255-19.195,8.982-19.195,19.684v197.513c0,10.702,8.496,19.429,19.195,19.685
|
10 |
+
c73.831,1.765,338.982,14.359,411.166,104.267c1.879,2.341,4.62,3.753,7.623,3.753h5.093c5.438,0,9.846-4.409,9.846-9.846V9.846
|
11 |
+
C462.769,4.409,458.361,0,452.923,0z"/>
|
12 |
+
<path style="fill:#C84146;" d="M452.923,324.923h-5.093c-3.003,0-5.744-0.768-7.623-2.039
|
13 |
+
c-64.496-43.659-282.938-53.769-381.415-56.111c-5.342-0.127-9.561-4.497-9.561-9.84V107.386c-7.691,0.29-14.556,0.5-20.19,0.634
|
14 |
+
c-10.699,0.256-19.195,8.983-19.195,19.685v197.513c0,10.702,8.496,19.429,19.195,19.685
|
15 |
+
c73.831,1.765,338.982,14.359,411.166,104.267c1.879,2.341,4.62,3.753,7.623,3.753h5.093c5.438,0,9.846-4.409,9.846-9.846V319.572
|
16 |
+
C462.769,322.527,458.361,324.923,452.923,324.923z"/>
|
17 |
+
<g>
|
18 |
+
<path style="fill:#91282D;" d="M128,177.231H49.231c-5.442,0-9.846-4.404-9.846-9.846c0-5.442,4.404-9.846,9.846-9.846H128
|
19 |
+
c5.442,0,9.846,4.404,9.846,9.846C137.846,172.827,133.442,177.231,128,177.231z"/>
|
20 |
+
<path style="fill:#91282D;" d="M128,295.385H49.231c-5.442,0-9.846-4.404-9.846-9.846c0-5.442,4.404-9.846,9.846-9.846H128
|
21 |
+
c5.442,0,9.846,4.404,9.846,9.846C137.846,290.981,133.442,295.385,128,295.385z"/>
|
22 |
+
</g>
|
23 |
+
<path style="fill:#FF5050;" d="M130.414,409.631C127.086,394.655,113.803,384,98.462,384s-28.624,10.655-31.952,25.631
|
24 |
+
l-20.561,92.523h105.025L130.414,409.631z"/>
|
25 |
+
<path style="fill:#959CB5;" d="M187.077,512H9.846C4.404,512,0,507.596,0,502.154c0-5.442,4.404-9.846,9.846-9.846h177.231
|
26 |
+
c5.442,0,9.846,4.404,9.846,9.846C196.923,507.595,192.519,512,187.077,512z"/>
|
27 |
+
<path style="fill:#91282D;" d="M128,236.308H49.231c-5.442,0-9.846-4.404-9.846-9.846s4.404-9.846,9.846-9.846H128
|
28 |
+
c5.442,0,9.846,4.404,9.846,9.846S133.442,236.308,128,236.308z"/>
|
29 |
+
<circle style="fill:#707487;" cx="98.462" cy="413.538" r="14.769"/>
|
30 |
+
<g>
|
31 |
+
</g>
|
32 |
+
<g>
|
33 |
+
</g>
|
34 |
+
<g>
|
35 |
+
</g>
|
36 |
+
<g>
|
37 |
+
</g>
|
38 |
+
<g>
|
39 |
+
</g>
|
40 |
+
<g>
|
41 |
+
</g>
|
42 |
+
<g>
|
43 |
+
</g>
|
44 |
+
<g>
|
45 |
+
</g>
|
46 |
+
<g>
|
47 |
+
</g>
|
48 |
+
<g>
|
49 |
+
</g>
|
50 |
+
<g>
|
51 |
+
</g>
|
52 |
+
<g>
|
53 |
+
</g>
|
54 |
+
<g>
|
55 |
+
</g>
|
56 |
+
<g>
|
57 |
+
</g>
|
58 |
+
<g>
|
59 |
+
</g>
|
60 |
+
</svg>
|
assets/img/icon-reports.svg
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
5 |
+
<polygon style="fill:#2D2D2D;" points="313.816,343.644 180.864,209.524 52.456,337.94 41.144,326.612 180.912,186.852
|
6 |
+
313.816,320.908 441.064,192.548 452.424,203.812 "/>
|
7 |
+
<circle style="fill:#C9C9C9;" cx="46.792" cy="332.276" r="46.792"/>
|
8 |
+
<circle style="fill:#FFFFFF;" cx="46.792" cy="332.276" r="20.592"/>
|
9 |
+
<circle style="fill:#C9C9C9;" cx="315.976" cy="332.276" r="46.792"/>
|
10 |
+
<circle style="fill:#FFFFFF;" cx="315.976" cy="332.276" r="20.592"/>
|
11 |
+
<circle style="fill:#E50914;" cx="180.96" cy="198.188" r="65.256"/>
|
12 |
+
<circle style="fill:#FFFFFF;" cx="180.96" cy="198.188" r="28.72"/>
|
13 |
+
<circle style="fill:#E50914;" cx="446.744" cy="198.188" r="65.256"/>
|
14 |
+
<circle style="fill:#FFFFFF;" cx="446.744" cy="198.188" r="28.72"/>
|
15 |
+
<g>
|
16 |
+
</g>
|
17 |
+
<g>
|
18 |
+
</g>
|
19 |
+
<g>
|
20 |
+
</g>
|
21 |
+
<g>
|
22 |
+
</g>
|
23 |
+
<g>
|
24 |
+
</g>
|
25 |
+
<g>
|
26 |
+
</g>
|
27 |
+
<g>
|
28 |
+
</g>
|
29 |
+
<g>
|
30 |
+
</g>
|
31 |
+
<g>
|
32 |
+
</g>
|
33 |
+
<g>
|
34 |
+
</g>
|
35 |
+
<g>
|
36 |
+
</g>
|
37 |
+
<g>
|
38 |
+
</g>
|
39 |
+
<g>
|
40 |
+
</g>
|
41 |
+
<g>
|
42 |
+
</g>
|
43 |
+
<g>
|
44 |
+
</g>
|
45 |
+
</svg>
|
assets/img/icon-settings.svg
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px" baseProfile="basic"><path fill="#8fcae6" d="M44.5,20h-2.964c-0.457-2.003-1.25-3.876-2.315-5.564l2.103-2.103c0.975-0.975,0.975-2.562,0-3.536 l-2.121-2.121c-0.976-0.976-2.562-0.974-3.536,0l-2.103,2.103C31.876,7.714,30.003,6.921,28,6.464V3.5C28,2.121,26.879,1,25.5,1h-3 C21.121,1,20,2.121,20,3.5v2.964c-2.003,0.457-3.876,1.25-5.564,2.315l-2.103-2.103c-0.976-0.976-2.562-0.974-3.536,0L6.676,8.797 c-0.975,0.975-0.975,2.562,0,3.536l2.103,2.103C7.714,16.124,6.921,17.997,6.464,20H3.5C2.121,20,1,21.121,1,22.5v3 C1,26.879,2.121,28,3.5,28h2.964c0.457,2.003,1.25,3.876,2.315,5.564l-2.103,2.103c-0.975,0.975-0.975,2.562,0,3.536l2.121,2.121 c0.487,0.487,1.128,0.731,1.768,0.731c0.641,0,1.281-0.244,1.769-0.731l2.103-2.103c1.689,1.065,3.561,1.858,5.564,2.315V44.5 c0,1.379,1.121,2.5,2.5,2.5h3c1.379,0,2.5-1.121,2.5-2.5v-2.964c2.003-0.457,3.876-1.25,5.564-2.315l2.103,2.103 c0.487,0.487,1.128,0.731,1.768,0.731c0.641,0,1.281-0.244,1.769-0.731l2.121-2.121c0.975-0.975,0.975-2.562,0-3.536l-2.103-2.103 c1.065-1.689,1.858-3.561,2.315-5.564H44.5c1.379,0,2.5-1.121,2.5-2.5v-3C47,21.121,45.879,20,44.5,20z"/><path fill="#324561" d="M24,34c-5.514,0-10-4.486-10-10s4.486-10,10-10s10,4.486,10,10S29.514,34,24,34z M24,16 c-4.411,0-8,3.589-8,8s3.589,8,8,8s8-3.589,8-8S28.411,16,24,16z"/></svg>
|
assets/img/icon-stop-forum-spam.png
ADDED
Binary file
|
assets/img/icon-success.svg
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="12px" height="12px" viewBox="0 0 12 12" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>status-success-svgrepo-com</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="status-success-svgrepo-com" fill="#69B86B">
|
6 |
+
<path d="M6,12 C9.3137085,12 12,9.3137085 12,6 C12,2.6862915 9.3137085,0 6,0 C2.6862915,0 0,2.6862915 0,6 C0,9.3137085 2.6862915,12 6,12 Z M8.576,4.98 C8.82910082,4.66101338 8.7814353,4.19834562 8.46861498,3.93766202 C8.15579466,3.67697843 7.6921162,3.71352619 7.424,4.02 L5.45,6.389 L4.53,5.469 C4.23558233,5.18490644 3.76780228,5.18919039 3.47863704,5.47862843 C3.1894718,5.76806646 3.18562895,6.23585035 3.47,6.53 L4.97,8.03 C5.11896124,8.17885832 5.32364277,8.25823207 5.53401815,8.24872143 C5.74439352,8.23921079 5.94107811,8.1416921 6.076,7.98 L8.576,4.98 Z" id="Shape"></path>
|
7 |
+
</g>
|
8 |
+
</g>
|
9 |
+
</svg>
|
assets/img/icon-trash.svg
ADDED
@@ -0,0 +1,12 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="162px" height="173px" viewBox="0 0 162 173" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>icon-trash</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="icon-trash" transform="translate(0.744000, 0.000000)" fill="#FFFFFF" fill-rule="nonzero">
|
6 |
+
<path d="M161.054,25.078 L147.381,25.078 L117.41,25.078 L117.41,0 L43.644,0 L43.644,25.078 L13.673,25.078 L0,25.078 L0,40.078 L14.806,40.078 L24.806,172.541 L136.249,172.541 L146.249,40.078 L161.054,40.078 L161.054,25.078 L161.054,25.078 Z M58.644,15 L102.41,15 L102.41,25.078 L58.644,25.078 L58.644,15 Z M122.339,157.541 L38.716,157.541 L29.848,40.078 L43.644,40.078 L117.41,40.078 L131.206,40.078 L122.339,157.541 Z" id="Shape"></path>
|
7 |
+
<rect id="Rectangle" x="74.527" y="65.693" width="12" height="66.232"></rect>
|
8 |
+
<rect id="Rectangle" x="51.527" y="65.693" width="12" height="66.232"></rect>
|
9 |
+
<rect id="Rectangle" x="97.527" y="65.693" width="12" height="66.232"></rect>
|
10 |
+
</g>
|
11 |
+
</g>
|
12 |
+
</svg>
|
assets/img/icon-words.svg
ADDED
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="iso-8859-1"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
4 |
+
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
5 |
+
width="444.792px" height="444.792px" viewBox="0 0 444.792 444.792" style="enable-background:new 0 0 444.792 444.792;"
|
6 |
+
xml:space="preserve">
|
7 |
+
<g>
|
8 |
+
<g>
|
9 |
+
<g>
|
10 |
+
<path d="M269.383,386.938c-18.445,0-36.202-4.397-52.08-12.682H107.22c-10.099,0-18.315-8.219-18.315-18.315v-56.576
|
11 |
+
c0-10.099,8.217-18.314,18.315-18.314h49.748c-0.13-2.231-0.204-4.479-0.204-6.731c0-8.453,0.922-16.763,2.719-24.813H56.516
|
12 |
+
v-30.832h101.802c8.71,0,15.772-7.061,15.772-15.771s-7.063-15.771-15.772-15.771H56.516v-30.832h50.704h185.134
|
13 |
+
c8.184,0,15.131,5.398,17.471,12.818c11.723,4.491,22.652,10.962,32.389,19.231v-13.735c0-6.465-1.25-12.641-3.5-18.314h40.303
|
14 |
+
c8.709,0,15.771-7.063,15.771-15.773s-7.062-15.771-15.771-15.771h-4.411v-93.21h4.411c8.709,0,15.771-7.063,15.771-15.773
|
15 |
+
S387.726,0,379.017,0H107.22C79.728,0,57.362,22.367,57.362,49.859v56.576c0,6.467,1.25,12.643,3.5,18.316H20.56
|
16 |
+
c-8.71,0-15.772,7.061-15.772,15.771s7.063,15.773,15.772,15.773h4.412v93.207H20.56c-8.71,0-15.772,7.062-15.772,15.771
|
17 |
+
c0,8.709,7.063,15.771,15.772,15.771h40.302c-2.25,5.675-3.5,11.852-3.5,18.313v56.575c0,27.494,22.366,49.861,49.858,49.861
|
18 |
+
H332.7l-25.398-25.4C295.136,384.74,282.411,386.938,269.383,386.938z M88.905,49.859c0-10.098,8.217-18.314,18.315-18.314
|
19 |
+
H343.06v30.83H241.256c-8.709,0-15.771,7.063-15.771,15.773s7.062,15.771,15.771,15.771H343.06v30.832H107.22
|
20 |
+
c-10.099,0-18.315-8.217-18.315-18.316V49.859z"/>
|
21 |
+
<path d="M432.407,400.461l-79.035-79.034c21.303-37.448,16.01-86.032-15.896-117.937c-38.263-38.262-100.517-38.262-138.775,0
|
22 |
+
c-38.261,38.26-38.262,100.518,0,138.775c31.904,31.906,80.488,37.199,117.938,15.896l79.035,79.033
|
23 |
+
c10.129,10.129,26.607,10.129,36.734,0C442.536,427.07,442.536,410.592,432.407,400.461z M317.931,322.721
|
24 |
+
c-27.481,27.483-72.202,27.483-99.688,0c-27.481-27.481-27.481-72.201,0-99.686c27.484-27.482,72.203-27.482,99.688,0
|
25 |
+
C345.413,250.52,345.413,295.238,317.931,322.721z"/>
|
26 |
+
</g>
|
27 |
+
</g>
|
28 |
+
</g>
|
29 |
+
<g>
|
30 |
+
</g>
|
31 |
+
<g>
|
32 |
+
</g>
|
33 |
+
<g>
|
34 |
+
</g>
|
35 |
+
<g>
|
36 |
+
</g>
|
37 |
+
<g>
|
38 |
+
</g>
|
39 |
+
<g>
|
40 |
+
</g>
|
41 |
+
<g>
|
42 |
+
</g>
|
43 |
+
<g>
|
44 |
+
</g>
|
45 |
+
<g>
|
46 |
+
</g>
|
47 |
+
<g>
|
48 |
+
</g>
|
49 |
+
<g>
|
50 |
+
</g>
|
51 |
+
<g>
|
52 |
+
</g>
|
53 |
+
<g>
|
54 |
+
</g>
|
55 |
+
<g>
|
56 |
+
</g>
|
57 |
+
<g>
|
58 |
+
</g>
|
59 |
+
</svg>
|
assets/img/icon-x.svg
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="50px" height="50px" viewBox="0 0 50 50" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>icon-x</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="icon-x">
|
6 |
+
<circle id="Oval" fill="#FF2929" fill-rule="nonzero" cx="25" cy="25" r="25"></circle>
|
7 |
+
<polyline id="Path" stroke="#FFFFFF" stroke-width="5" stroke-linecap="round" points="16 34 25 25 34 16"></polyline>
|
8 |
+
<polyline id="Path" stroke="#FFFFFF" stroke-width="5" stroke-linecap="round" points="16 16 25 25 34 34"></polyline>
|
9 |
+
</g>
|
10 |
+
</g>
|
11 |
+
</svg>
|
assets/img/icon.svg
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
<svg width="512px" height="478px" viewBox="0 0 512 478" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
-
<title>
|
4 |
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
<g transform="translate(256.000000, 239.000000) scale(-1, 1) translate(-256.000000, -239.000000) " fill-rule="nonzero">
|
6 |
<path d="M241,0 L96,0 C87.716,0 81,6.716 81,15 L81,127 C81,135.284 87.716,142 96,142 L241,142 C249.284,142 256,135.284 256,127 L256,15 C256,6.716 249.284,0 241,0 Z" id="Path" fill="#BE0000"></path>
|
1 |
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
<svg width="512px" height="478px" viewBox="0 0 512 478" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>Zero Spam</title>
|
4 |
<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
<g transform="translate(256.000000, 239.000000) scale(-1, 1) translate(-256.000000, -239.000000) " fill-rule="nonzero">
|
6 |
<path d="M241,0 L96,0 C87.716,0 81,6.716 81,15 L81,127 C81,135.284 87.716,142 96,142 L241,142 C249.284,142 256,135.284 256,127 L256,15 C256,6.716 249.284,0 241,0 Z" id="Path" fill="#BE0000"></path>
|
assets/img/logo-flat.svg
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="512px" height="435px" viewBox="0 0 512 435" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>zero-spam-logo</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="zero-spam-logo" transform="translate(256.000000, 217.500000) scale(-1, 1) translate(-256.000000, -217.500000) " fill-rule="nonzero">
|
6 |
+
<polygon id="box-13" fill="#FFA17C" points="176 351 176 435 0 435 0 351"></polygon>
|
7 |
+
<polygon id="box-12" fill="#FF2929" points="256 351 256 435 176 435 176 351"></polygon>
|
8 |
+
<polygon id="box-11" fill="#BE0000" points="336 351 336 435 256 435 256 351"></polygon>
|
9 |
+
<polygon id="box-10" fill="#63000D" points="512 351 512 435 336 435 336 351"></polygon>
|
10 |
+
<polygon id="box-9" fill="#FF2929" points="96 239 96 351 0 351 0 239"></polygon>
|
11 |
+
<polygon id="box-8" fill="#BE0000" points="256 239 256 351 96 351 96 239"></polygon>
|
12 |
+
<polygon id="box-7" fill="#840012" points="416 239 416 351 256 351 256 239"></polygon>
|
13 |
+
<polygon id="box-6" fill="#BE0000" points="512 239 512 351 416 351 416 239"></polygon>
|
14 |
+
<path d="M176,112 L15,112 C6.716,112 0,118.716 0,127 L0,239 L176,239 L176,112 Z" id="box-5" fill="#FF7038"></path>
|
15 |
+
<polygon id="box-4" fill="#FF2929" points="256 239 176 239 176 112 256 112"></polygon>
|
16 |
+
<polygon id="box-3" fill="#BE0000" points="336 239 256 239 256 112 336 112"></polygon>
|
17 |
+
<path d="M512,127 L512,239 L336,239 L336,112 L497,112 C505.28,112 512,118.72 512,127 Z" id="box-2" fill="#63000D"></path>
|
18 |
+
<path d="M241,0 L96,0 C87.716,0 81,5.29712676 81,11.8309859 C81,32.7599735 81,48.4567141 81,58.9212079 C81,68.0873871 81,85.8366558 81,112.169014 L256,112.169014 L256,11.8309859 C256,5.29712676 249.284,0 241,0 Z" id="box-1" fill="#BE0000"></path>
|
19 |
+
</g>
|
20 |
+
</g>
|
21 |
+
</svg>
|
assets/img/text-zero-spam.svg
ADDED
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="123px" height="11px" viewBox="0 0 123 11" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>Zero Spam for WordPress</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g fill="#FFFFFF" fill-rule="nonzero">
|
6 |
+
<g transform="translate(64.000000, 2.000000)">
|
7 |
+
<path d="M0.176,3.752 C0.122666667,3.752 0.08,3.736 0.048,3.704 C0.016,3.672 -1.13686838e-13,3.62933333 -1.13686838e-13,3.576 L-1.13686838e-13,3.464 C-1.13686838e-13,3.41066667 0.016,3.368 0.048,3.336 C0.08,3.304 0.122666667,3.288 0.176,3.288 L4.776,3.288 C4.82933333,3.288 4.872,3.304 4.904,3.336 C4.936,3.368 4.952,3.41066667 4.952,3.464 L4.952,3.576 C4.952,3.62933333 4.936,3.672 4.904,3.704 C4.872,3.736 4.82933333,3.752 4.776,3.752 L0.176,3.752 Z"></path>
|
8 |
+
<path d="M8.664,5.92 C8.61066667,5.92 8.568,5.904 8.536,5.872 C8.504,5.84 8.488,5.79733333 8.488,5.744 L8.488,2.224 L7.776,2.224 C7.72266667,2.224 7.68,2.208 7.648,2.176 C7.616,2.144 7.6,2.10133333 7.6,2.048 L7.6,1.936 C7.6,1.88266667 7.616,1.84 7.648,1.808 C7.68,1.776 7.72266667,1.76 7.776,1.76 L8.488,1.76 L8.488,1.304 C8.488,1.064 8.52133333,0.845333333 8.588,0.648 C8.65466667,0.450666667 8.77466667,0.293333333 8.948,0.176 C9.12133333,0.0586666667 9.37066667,0 9.696,0 L10.112,0 C10.1653333,0 10.208,0.016 10.24,0.048 C10.272,0.08 10.288,0.122666667 10.288,0.176 L10.288,0.288 C10.288,0.341333333 10.272,0.384 10.24,0.416 C10.208,0.448 10.1653333,0.464 10.112,0.464 L9.696,0.464 C9.41333333,0.464 9.22266667,0.54 9.124,0.692 C9.02533333,0.844 8.976,1.06133333 8.976,1.344 L8.976,1.76 L10.032,1.76 C10.0853333,1.76 10.128,1.776 10.16,1.808 C10.192,1.84 10.208,1.88266667 10.208,1.936 L10.208,2.048 C10.208,2.10133333 10.192,2.144 10.16,2.176 C10.128,2.208 10.0853333,2.224 10.032,2.224 L8.976,2.224 L8.976,5.744 C8.976,5.79733333 8.96,5.84 8.928,5.872 C8.896,5.904 8.85333333,5.92 8.8,5.92 L8.664,5.92 Z"></path>
|
9 |
+
<path d="M12.472,6 C12.088,6 11.7666667,5.92 11.508,5.76 C11.2493333,5.6 11.052,5.38133333 10.916,5.104 C10.78,4.82666667 10.7066667,4.51733333 10.696,4.176 C10.6906667,4.096 10.688,3.984 10.688,3.84 C10.688,3.696 10.6906667,3.584 10.696,3.504 C10.7066667,3.15733333 10.78,2.84666667 10.916,2.572 C11.052,2.29733333 11.2493333,2.08 11.508,1.92 C11.7666667,1.76 12.088,1.68 12.472,1.68 C12.856,1.68 13.1773333,1.76 13.436,1.92 C13.6946667,2.08 13.892,2.29733333 14.028,2.572 C14.164,2.84666667 14.2373333,3.15733333 14.248,3.504 C14.2533333,3.584 14.256,3.696 14.256,3.84 C14.256,3.984 14.2533333,4.096 14.248,4.176 C14.2373333,4.51733333 14.164,4.82666667 14.028,5.104 C13.892,5.38133333 13.6946667,5.6 13.436,5.76 C13.1773333,5.92 12.856,6 12.472,6 Z M12.472,5.536 C12.8453333,5.536 13.1493333,5.416 13.384,5.176 C13.6186667,4.936 13.744,4.58933333 13.76,4.136 C13.7653333,4.056 13.768,3.95733333 13.768,3.84 C13.768,3.72266667 13.7653333,3.624 13.76,3.544 C13.744,3.08533333 13.6186667,2.73733333 13.384,2.5 C13.1493333,2.26266667 12.8453333,2.144 12.472,2.144 C12.0986667,2.144 11.7946667,2.26266667 11.56,2.5 C11.3253333,2.73733333 11.2,3.08533333 11.184,3.544 C11.1786667,3.624 11.176,3.72266667 11.176,3.84 C11.176,3.95733333 11.1786667,4.056 11.184,4.136 C11.2,4.58933333 11.3253333,4.936 11.56,5.176 C11.7946667,5.416 12.0986667,5.536 12.472,5.536 Z" id="Shape"></path>
|
10 |
+
<path d="M15.528,5.92 C15.4746667,5.92 15.432,5.904 15.4,5.872 C15.368,5.84 15.352,5.79733333 15.352,5.744 L15.352,1.944 C15.352,1.89066667 15.368,1.84666667 15.4,1.812 C15.432,1.77733333 15.4746667,1.76 15.528,1.76 L15.656,1.76 C15.7093333,1.76 15.7533333,1.77733333 15.788,1.812 C15.8226667,1.84666667 15.84,1.89066667 15.84,1.944 L15.84,2.312 C15.936,2.12533333 16.0746667,1.98666667 16.256,1.896 C16.4373333,1.80533333 16.6613333,1.76 16.928,1.76 L17.224,1.76 C17.2773333,1.76 17.32,1.776 17.352,1.808 C17.384,1.84 17.4,1.88266667 17.4,1.936 L17.4,2.048 C17.4,2.10133333 17.384,2.144 17.352,2.176 C17.32,2.208 17.2773333,2.224 17.224,2.224 L16.88,2.224 C16.56,2.224 16.3066667,2.31733333 16.12,2.504 C15.9333333,2.69066667 15.84,2.944 15.84,3.264 L15.84,5.744 C15.84,5.79733333 15.8226667,5.84 15.788,5.872 C15.7533333,5.904 15.7093333,5.92 15.656,5.92 L15.528,5.92 Z"></path>
|
11 |
+
<path d="M20.92,5.92 C20.856,5.92 20.8066667,5.90533333 20.772,5.876 C20.7373333,5.84666667 20.712,5.79733333 20.696,5.728 L19.6,0.576 C19.5946667,0.554666667 19.5906667,0.534666667 19.588,0.516 C19.5853333,0.497333333 19.584,0.485333333 19.584,0.48 C19.584,0.437333333 19.6,0.4 19.632,0.368 C19.664,0.336 19.7013333,0.32 19.744,0.32 L19.912,0.32 C20.0133333,0.32 20.072,0.36 20.088,0.44 L21.024,5 L22.016,1.744 C22.032,1.696 22.06,1.65333333 22.1,1.616 C22.14,1.57866667 22.1946667,1.56 22.264,1.56 L22.44,1.56 C22.5146667,1.56 22.5706667,1.57866667 22.608,1.616 C22.6453333,1.65333333 22.672,1.696 22.688,1.744 L23.68,5 L24.616,0.44 C24.632,0.36 24.6906667,0.32 24.792,0.32 L24.96,0.32 C25.0026667,0.32 25.04,0.336 25.072,0.368 C25.104,0.4 25.12,0.437333333 25.12,0.48 C25.12,0.485333333 25.1186667,0.497333333 25.116,0.516 C25.1133333,0.534666667 25.1093333,0.554666667 25.104,0.576 L24.008,5.728 C23.992,5.79733333 23.9666667,5.84666667 23.932,5.876 C23.8973333,5.90533333 23.848,5.92 23.784,5.92 L23.664,5.92 C23.6,5.92 23.548,5.904 23.508,5.872 C23.468,5.84 23.4373333,5.792 23.416,5.728 L22.352,2.352 L21.288,5.728 C21.2666667,5.792 21.236,5.84 21.196,5.872 C21.156,5.904 21.104,5.92 21.04,5.92 L20.92,5.92 Z"></path>
|
12 |
+
<path d="M27.56,6 C27.176,6 26.8546667,5.92 26.596,5.76 C26.3373333,5.6 26.14,5.38133333 26.004,5.104 C25.868,4.82666667 25.7946667,4.51733333 25.784,4.176 C25.7786667,4.096 25.776,3.984 25.776,3.84 C25.776,3.696 25.7786667,3.584 25.784,3.504 C25.7946667,3.15733333 25.868,2.84666667 26.004,2.572 C26.14,2.29733333 26.3373333,2.08 26.596,1.92 C26.8546667,1.76 27.176,1.68 27.56,1.68 C27.944,1.68 28.2653333,1.76 28.524,1.92 C28.7826667,2.08 28.98,2.29733333 29.116,2.572 C29.252,2.84666667 29.3253333,3.15733333 29.336,3.504 C29.3413333,3.584 29.344,3.696 29.344,3.84 C29.344,3.984 29.3413333,4.096 29.336,4.176 C29.3253333,4.51733333 29.252,4.82666667 29.116,5.104 C28.98,5.38133333 28.7826667,5.6 28.524,5.76 C28.2653333,5.92 27.944,6 27.56,6 Z M27.56,5.536 C27.9333333,5.536 28.2373333,5.416 28.472,5.176 C28.7066667,4.936 28.832,4.58933333 28.848,4.136 C28.8533333,4.056 28.856,3.95733333 28.856,3.84 C28.856,3.72266667 28.8533333,3.624 28.848,3.544 C28.832,3.08533333 28.7066667,2.73733333 28.472,2.5 C28.2373333,2.26266667 27.9333333,2.144 27.56,2.144 C27.1866667,2.144 26.8826667,2.26266667 26.648,2.5 C26.4133333,2.73733333 26.288,3.08533333 26.272,3.544 C26.2666667,3.624 26.264,3.72266667 26.264,3.84 C26.264,3.95733333 26.2666667,4.056 26.272,4.136 C26.288,4.58933333 26.4133333,4.936 26.648,5.176 C26.8826667,5.416 27.1866667,5.536 27.56,5.536 Z" id="Shape"></path>
|
13 |
+
<path d="M30.616,5.92 C30.5626667,5.92 30.52,5.904 30.488,5.872 C30.456,5.84 30.44,5.79733333 30.44,5.744 L30.44,1.944 C30.44,1.89066667 30.456,1.84666667 30.488,1.812 C30.52,1.77733333 30.5626667,1.76 30.616,1.76 L30.744,1.76 C30.7973333,1.76 30.8413333,1.77733333 30.876,1.812 C30.9106667,1.84666667 30.928,1.89066667 30.928,1.944 L30.928,2.312 C31.024,2.12533333 31.1626667,1.98666667 31.344,1.896 C31.5253333,1.80533333 31.7493333,1.76 32.016,1.76 L32.312,1.76 C32.3653333,1.76 32.408,1.776 32.44,1.808 C32.472,1.84 32.488,1.88266667 32.488,1.936 L32.488,2.048 C32.488,2.10133333 32.472,2.144 32.44,2.176 C32.408,2.208 32.3653333,2.224 32.312,2.224 L31.968,2.224 C31.648,2.224 31.3946667,2.31733333 31.208,2.504 C31.0213333,2.69066667 30.928,2.944 30.928,3.264 L30.928,5.744 C30.928,5.79733333 30.9106667,5.84 30.876,5.872 C30.8413333,5.904 30.7973333,5.92 30.744,5.92 L30.616,5.92 Z"></path>
|
14 |
+
<path d="M34.624,6 C34.3146667,6 34.052,5.944 33.836,5.832 C33.62,5.72 33.4453333,5.57066667 33.312,5.384 C33.1786667,5.19733333 33.0813333,4.98933333 33.02,4.76 C32.9586667,4.53066667 32.9226667,4.29866667 32.912,4.064 C32.9066667,3.984 32.904,3.90933333 32.904,3.84 C32.904,3.77066667 32.9066667,3.696 32.912,3.616 C32.9226667,3.38133333 32.9586667,3.14933333 33.02,2.92 C33.0813333,2.69066667 33.1786667,2.48266667 33.312,2.296 C33.4453333,2.10933333 33.62,1.96 33.836,1.848 C34.052,1.736 34.3146667,1.68 34.624,1.68 C34.9546667,1.68 35.228,1.74133333 35.444,1.864 C35.66,1.98666667 35.8346667,2.136 35.968,2.312 L35.968,0.416 C35.968,0.362666667 35.984,0.32 36.016,0.288 C36.048,0.256 36.0906667,0.24 36.144,0.24 L36.28,0.24 C36.3333333,0.24 36.376,0.256 36.408,0.288 C36.44,0.32 36.456,0.362666667 36.456,0.416 L36.456,5.744 C36.456,5.79733333 36.44,5.84 36.408,5.872 C36.376,5.904 36.3333333,5.92 36.28,5.92 L36.144,5.92 C36.0906667,5.92 36.048,5.904 36.016,5.872 C35.984,5.84 35.968,5.79733333 35.968,5.744 L35.968,5.368 C35.8346667,5.54933333 35.66,5.7 35.444,5.82 C35.228,5.94 34.9546667,6 34.624,6 Z M34.672,5.536 C34.976,5.536 35.2213333,5.464 35.408,5.32 C35.5946667,5.176 35.7333333,4.996 35.824,4.78 C35.9146667,4.564 35.9626667,4.34666667 35.968,4.128 C35.9733333,4.048 35.976,3.944 35.976,3.816 C35.976,3.688 35.9733333,3.584 35.968,3.504 C35.9626667,3.29066667 35.9133333,3.08 35.82,2.872 C35.7266667,2.664 35.5866667,2.49066667 35.4,2.352 C35.2133333,2.21333333 34.9706667,2.144 34.672,2.144 C34.3626667,2.144 34.116,2.21333333 33.932,2.352 C33.748,2.49066667 33.616,2.672 33.536,2.896 C33.456,3.12 33.4106667,3.36 33.4,3.616 C33.3946667,3.76533333 33.3946667,3.91466667 33.4,4.064 C33.4106667,4.32 33.456,4.56 33.536,4.784 C33.616,5.008 33.748,5.18933333 33.932,5.328 C34.116,5.46666667 34.3626667,5.536 34.672,5.536 Z" id="Shape"></path>
|
15 |
+
<path d="M38.04,5.92 C37.9866667,5.92 37.944,5.904 37.912,5.872 C37.88,5.84 37.864,5.79733333 37.864,5.744 L37.864,0.504 C37.864,0.445333333 37.88,0.4 37.912,0.368 C37.944,0.336 37.9866667,0.32 38.04,0.32 L39.984,0.32 C40.3573333,0.32 40.6813333,0.382666667 40.956,0.508 C41.2306667,0.633333333 41.444,0.818666667 41.596,1.064 C41.748,1.30933333 41.824,1.61333333 41.824,1.976 C41.824,2.33866667 41.748,2.64266667 41.596,2.888 C41.444,3.13333333 41.2306667,3.31866667 40.956,3.444 C40.6813333,3.56933333 40.3573333,3.632 39.984,3.632 L38.368,3.632 L38.368,5.744 C38.368,5.79733333 38.352,5.84 38.32,5.872 C38.288,5.904 38.2426667,5.92 38.184,5.92 L38.04,5.92 Z M38.368,3.152 L39.944,3.152 C40.408,3.152 40.7533333,3.05066667 40.98,2.848 C41.2066667,2.64533333 41.32,2.35466667 41.32,1.976 C41.32,1.59733333 41.2066667,1.30666667 40.98,1.104 C40.7533333,0.901333333 40.408,0.8 39.944,0.8 L38.368,0.8 L38.368,3.152 Z" id="Shape"></path>
|
16 |
+
<path d="M42.96,5.92 C42.9066667,5.92 42.864,5.904 42.832,5.872 C42.8,5.84 42.784,5.79733333 42.784,5.744 L42.784,1.944 C42.784,1.89066667 42.8,1.84666667 42.832,1.812 C42.864,1.77733333 42.9066667,1.76 42.96,1.76 L43.088,1.76 C43.1413333,1.76 43.1853333,1.77733333 43.22,1.812 C43.2546667,1.84666667 43.272,1.89066667 43.272,1.944 L43.272,2.312 C43.368,2.12533333 43.5066667,1.98666667 43.688,1.896 C43.8693333,1.80533333 44.0933333,1.76 44.36,1.76 L44.656,1.76 C44.7093333,1.76 44.752,1.776 44.784,1.808 C44.816,1.84 44.832,1.88266667 44.832,1.936 L44.832,2.048 C44.832,2.10133333 44.816,2.144 44.784,2.176 C44.752,2.208 44.7093333,2.224 44.656,2.224 L44.312,2.224 C43.992,2.224 43.7386667,2.31733333 43.552,2.504 C43.3653333,2.69066667 43.272,2.944 43.272,3.264 L43.272,5.744 C43.272,5.79733333 43.2546667,5.84 43.22,5.872 C43.1853333,5.904 43.1413333,5.92 43.088,5.92 L42.96,5.92 Z"></path>
|
17 |
+
<path d="M47.016,6 C46.4986667,6 46.088,5.83066667 45.784,5.492 C45.48,5.15333333 45.3066667,4.70933333 45.264,4.16 C45.2586667,4.08 45.256,3.97333333 45.256,3.84 C45.256,3.70666667 45.2586667,3.6 45.264,3.52 C45.2906667,3.15733333 45.376,2.83733333 45.52,2.56 C45.664,2.28266667 45.8626667,2.06666667 46.116,1.912 C46.3693333,1.75733333 46.6693333,1.68 47.016,1.68 C47.3893333,1.68 47.7066667,1.76266667 47.968,1.928 C48.2293333,2.09333333 48.4306667,2.33066667 48.572,2.64 C48.7133333,2.94933333 48.784,3.31733333 48.784,3.744 L48.784,3.864 C48.784,3.91733333 48.7666667,3.96 48.732,3.992 C48.6973333,4.024 48.6533333,4.04 48.6,4.04 L45.752,4.04 C45.752,4.04 45.752,4.05066667 45.752,4.072 C45.752,4.09333333 45.752,4.10933333 45.752,4.12 C45.7626667,4.36 45.8186667,4.588 45.92,4.804 C46.0213333,5.02 46.1653333,5.196 46.352,5.332 C46.5386667,5.468 46.76,5.536 47.016,5.536 C47.2453333,5.536 47.436,5.50133333 47.588,5.432 C47.74,5.36266667 47.8613333,5.28666667 47.952,5.204 C48.0426667,5.12133333 48.1013333,5.05866667 48.128,5.016 C48.176,4.94666667 48.2133333,4.90533333 48.24,4.892 C48.2666667,4.87866667 48.3093333,4.872 48.368,4.872 L48.496,4.872 C48.544,4.872 48.5853333,4.88666667 48.62,4.916 C48.6546667,4.94533333 48.6693333,4.984 48.664,5.032 C48.6586667,5.10666667 48.6173333,5.19866667 48.54,5.308 C48.4626667,5.41733333 48.3533333,5.52533333 48.212,5.632 C48.0706667,5.73866667 47.8986667,5.82666667 47.696,5.896 C47.4933333,5.96533333 47.2666667,6 47.016,6 Z M45.752,3.592 L48.296,3.592 L48.296,3.56 C48.296,3.29333333 48.2453333,3.05333333 48.144,2.84 C48.0426667,2.62666667 47.896,2.45733333 47.704,2.332 C47.512,2.20666667 47.2826667,2.144 47.016,2.144 C46.7493333,2.144 46.5213333,2.20666667 46.332,2.332 C46.1426667,2.45733333 45.9986667,2.62666667 45.9,2.84 C45.8013333,3.05333333 45.752,3.29333333 45.752,3.56 L45.752,3.592 Z" id="Shape"></path>
|
18 |
+
<path d="M51.16,6 C50.8826667,6 50.644,5.96266667 50.444,5.888 C50.244,5.81333333 50.08,5.724 49.952,5.62 C49.824,5.516 49.7293333,5.41333333 49.668,5.312 C49.6066667,5.21066667 49.5733333,5.13333333 49.568,5.08 C49.5626667,5.02133333 49.5813333,4.97733333 49.624,4.948 C49.6666667,4.91866667 49.7066667,4.904 49.744,4.904 L49.864,4.904 C49.896,4.904 49.924,4.90933333 49.948,4.92 C49.972,4.93066667 50.0026667,4.96 50.04,5.008 C50.1093333,5.09866667 50.1893333,5.18533333 50.28,5.268 C50.3706667,5.35066667 50.4866667,5.416 50.628,5.464 C50.7693333,5.512 50.9466667,5.536 51.16,5.536 C51.48,5.536 51.744,5.47466667 51.952,5.352 C52.16,5.22933333 52.264,5.048 52.264,4.808 C52.264,4.65866667 52.2226667,4.53866667 52.14,4.448 C52.0573333,4.35733333 51.9173333,4.27733333 51.72,4.208 C51.5226667,4.13866667 51.256,4.06666667 50.92,3.992 C50.584,3.912 50.3266667,3.816 50.148,3.704 C49.9693333,3.592 49.848,3.46266667 49.784,3.316 C49.72,3.16933333 49.688,3.01066667 49.688,2.84 C49.688,2.65333333 49.7413333,2.47066667 49.848,2.292 C49.9546667,2.11333333 50.1133333,1.96666667 50.324,1.852 C50.5346667,1.73733333 50.8,1.68 51.12,1.68 C51.3813333,1.68 51.604,1.71466667 51.788,1.784 C51.972,1.85333333 52.1226667,1.93733333 52.24,2.036 C52.3573333,2.13466667 52.444,2.232 52.5,2.328 C52.556,2.424 52.5866667,2.50133333 52.592,2.56 C52.5973333,2.61333333 52.5813333,2.656 52.544,2.688 C52.5066667,2.72 52.464,2.736 52.416,2.736 L52.296,2.736 C52.2533333,2.736 52.2186667,2.72666667 52.192,2.708 C52.1653333,2.68933333 52.1413333,2.664 52.12,2.632 C52.0666667,2.54666667 52.0026667,2.46666667 51.928,2.392 C51.8533333,2.31733333 51.7533333,2.25733333 51.628,2.212 C51.5026667,2.16666667 51.3333333,2.144 51.12,2.144 C50.8,2.144 50.5626667,2.20933333 50.408,2.34 C50.2533333,2.47066667 50.176,2.63733333 50.176,2.84 C50.176,2.95733333 50.208,3.06 50.272,3.148 C50.336,3.236 50.456,3.316 50.632,3.388 C50.808,3.46 51.064,3.536 51.4,3.616 C51.7413333,3.69066667 52.0106667,3.78266667 52.208,3.892 C52.4053333,4.00133333 52.5453333,4.13066667 52.628,4.28 C52.7106667,4.42933333 52.752,4.60533333 52.752,4.808 C52.752,5.02133333 52.692,5.21866667 52.572,5.4 C52.452,5.58133333 52.2733333,5.72666667 52.036,5.836 C51.7986667,5.94533333 51.5066667,6 51.16,6 Z"></path>
|
19 |
+
<path d="M55.096,6 C54.8186667,6 54.58,5.96266667 54.38,5.888 C54.18,5.81333333 54.016,5.724 53.888,5.62 C53.76,5.516 53.6653333,5.41333333 53.604,5.312 C53.5426667,5.21066667 53.5093333,5.13333333 53.504,5.08 C53.4986667,5.02133333 53.5173333,4.97733333 53.56,4.948 C53.6026667,4.91866667 53.6426667,4.904 53.68,4.904 L53.8,4.904 C53.832,4.904 53.86,4.90933333 53.884,4.92 C53.908,4.93066667 53.9386667,4.96 53.976,5.008 C54.0453333,5.09866667 54.1253333,5.18533333 54.216,5.268 C54.3066667,5.35066667 54.4226667,5.416 54.564,5.464 C54.7053333,5.512 54.8826667,5.536 55.096,5.536 C55.416,5.536 55.68,5.47466667 55.888,5.352 C56.096,5.22933333 56.2,5.048 56.2,4.808 C56.2,4.65866667 56.1586667,4.53866667 56.076,4.448 C55.9933333,4.35733333 55.8533333,4.27733333 55.656,4.208 C55.4586667,4.13866667 55.192,4.06666667 54.856,3.992 C54.52,3.912 54.2626667,3.816 54.084,3.704 C53.9053333,3.592 53.784,3.46266667 53.72,3.316 C53.656,3.16933333 53.624,3.01066667 53.624,2.84 C53.624,2.65333333 53.6773333,2.47066667 53.784,2.292 C53.8906667,2.11333333 54.0493333,1.96666667 54.26,1.852 C54.4706667,1.73733333 54.736,1.68 55.056,1.68 C55.3173333,1.68 55.54,1.71466667 55.724,1.784 C55.908,1.85333333 56.0586667,1.93733333 56.176,2.036 C56.2933333,2.13466667 56.38,2.232 56.436,2.328 C56.492,2.424 56.5226667,2.50133333 56.528,2.56 C56.5333333,2.61333333 56.5173333,2.656 56.48,2.688 C56.4426667,2.72 56.4,2.736 56.352,2.736 L56.232,2.736 C56.1893333,2.736 56.1546667,2.72666667 56.128,2.708 C56.1013333,2.68933333 56.0773333,2.664 56.056,2.632 C56.0026667,2.54666667 55.9386667,2.46666667 55.864,2.392 C55.7893333,2.31733333 55.6893333,2.25733333 55.564,2.212 C55.4386667,2.16666667 55.2693333,2.144 55.056,2.144 C54.736,2.144 54.4986667,2.20933333 54.344,2.34 C54.1893333,2.47066667 54.112,2.63733333 54.112,2.84 C54.112,2.95733333 54.144,3.06 54.208,3.148 C54.272,3.236 54.392,3.316 54.568,3.388 C54.744,3.46 55,3.536 55.336,3.616 C55.6773333,3.69066667 55.9466667,3.78266667 56.144,3.892 C56.3413333,4.00133333 56.4813333,4.13066667 56.564,4.28 C56.6466667,4.42933333 56.688,4.60533333 56.688,4.808 C56.688,5.02133333 56.628,5.21866667 56.508,5.4 C56.388,5.58133333 56.2093333,5.72666667 55.972,5.836 C55.7346667,5.94533333 55.4426667,6 55.096,6 Z"></path>
|
20 |
+
<path d="M57.824,5.92 C57.7706667,5.92 57.728,5.904 57.696,5.872 C57.664,5.84 57.648,5.79733333 57.648,5.744 L57.648,5.36 C57.648,5.30666667 57.664,5.26266667 57.696,5.228 C57.728,5.19333333 57.7706667,5.176 57.824,5.176 L58.208,5.176 C58.2613333,5.176 58.3053333,5.19333333 58.34,5.228 C58.3746667,5.26266667 58.392,5.30666667 58.392,5.36 L58.392,5.744 C58.392,5.79733333 58.3746667,5.84 58.34,5.872 C58.3053333,5.904 58.2613333,5.92 58.208,5.92 L57.824,5.92 Z"></path>
|
21 |
+
</g>
|
22 |
+
<g id="Zero-Spam">
|
23 |
+
<path d="M0.288,8.52 C0.208,8.52 0.14,8.492 0.084,8.436 C0.028,8.38 5.68434189e-14,8.308 5.68434189e-14,8.22 L5.68434189e-14,7.38 C5.68434189e-14,7.26 0.024,7.164 0.072,7.092 C0.12,7.02 0.156,6.968 0.18,6.936 L4.356,1.536 L0.408,1.536 C0.32,1.536 0.25,1.508 0.198,1.452 C0.146,1.396 0.12,1.328 0.12,1.248 L0.12,0.42 C0.12,0.332 0.146,0.26 0.198,0.204 C0.25,0.148 0.32,0.12 0.408,0.12 L6.144,0.12 C6.232,0.12 6.304,0.148 6.36,0.204 C6.416,0.26 6.444,0.332 6.444,0.42 L6.444,1.248 C6.444,1.344 6.428,1.424 6.396,1.488 C6.364,1.552 6.328,1.612 6.288,1.668 L2.196,7.092 L6.276,7.092 C6.364,7.092 6.436,7.12 6.492,7.176 C6.548,7.232 6.576,7.304 6.576,7.392 L6.576,8.232 C6.576,8.312 6.548,8.38 6.492,8.436 C6.436,8.492 6.364,8.52 6.276,8.52 L0.288,8.52 Z"></path>
|
24 |
+
<path d="M10.38,8.64 C9.492,8.64 8.788,8.384 8.268,7.872 C7.748,7.36 7.468,6.632 7.428,5.688 C7.42,5.608 7.416,5.506 7.416,5.382 C7.416,5.258 7.42,5.16 7.428,5.088 C7.46,4.48 7.598,3.958 7.842,3.522 C8.086,3.086 8.424,2.75 8.856,2.514 C9.288,2.278 9.796,2.16 10.38,2.16 C11.028,2.16 11.572,2.294 12.012,2.562 C12.452,2.83 12.784,3.202 13.008,3.678 C13.232,4.154 13.344,4.704 13.344,5.328 L13.344,5.58 C13.344,5.66 13.316,5.728 13.26,5.784 C13.204,5.84 13.132,5.868 13.044,5.868 L9.06,5.868 C9.06,5.868 9.06,5.88 9.06,5.904 C9.06,5.928 9.06,5.948 9.06,5.964 C9.068,6.244 9.122,6.502 9.222,6.738 C9.322,6.974 9.47,7.164 9.666,7.308 C9.862,7.452 10.096,7.524 10.368,7.524 C10.592,7.524 10.78,7.49 10.932,7.422 C11.084,7.354 11.208,7.276 11.304,7.188 C11.4,7.1 11.468,7.028 11.508,6.972 C11.58,6.876 11.638,6.818 11.682,6.798 C11.726,6.778 11.792,6.768 11.88,6.768 L12.912,6.768 C12.992,6.768 13.058,6.792 13.11,6.84 C13.162,6.888 13.184,6.948 13.176,7.02 C13.168,7.148 13.102,7.304 12.978,7.488 C12.854,7.672 12.676,7.852 12.444,8.028 C12.212,8.204 11.922,8.35 11.574,8.466 C11.226,8.582 10.828,8.64 10.38,8.64 Z M9.06,4.86 L11.712,4.86 L11.712,4.824 C11.712,4.512 11.66,4.238 11.556,4.002 C11.452,3.766 11.3,3.582 11.1,3.45 C10.9,3.318 10.66,3.252 10.38,3.252 C10.1,3.252 9.86,3.318 9.66,3.45 C9.46,3.582 9.31,3.766 9.21,4.002 C9.11,4.238 9.06,4.512 9.06,4.824 L9.06,4.86 Z" id="Shape"></path>
|
25 |
+
<path d="M14.904,8.52 C14.824,8.52 14.756,8.492 14.7,8.436 C14.644,8.38 14.616,8.312 14.616,8.232 L14.616,2.58 C14.616,2.492 14.644,2.42 14.7,2.364 C14.756,2.308 14.824,2.28 14.904,2.28 L15.876,2.28 C15.956,2.28 16.026,2.308 16.086,2.364 C16.146,2.42 16.176,2.492 16.176,2.58 L16.176,3.072 C16.36,2.816 16.598,2.62 16.89,2.484 C17.182,2.348 17.52,2.28 17.904,2.28 L18.396,2.28 C18.484,2.28 18.554,2.308 18.606,2.364 C18.658,2.42 18.684,2.488 18.684,2.568 L18.684,3.432 C18.684,3.512 18.658,3.58 18.606,3.636 C18.554,3.692 18.484,3.72 18.396,3.72 L17.46,3.72 C17.076,3.72 16.778,3.826 16.566,4.038 C16.354,4.25 16.248,4.548 16.248,4.932 L16.248,8.232 C16.248,8.312 16.22,8.38 16.164,8.436 C16.108,8.492 16.036,8.52 15.948,8.52 L14.904,8.52 Z"></path>
|
26 |
+
<path d="M22.296,8.64 C21.656,8.64 21.118,8.528 20.682,8.304 C20.246,8.08 19.914,7.764 19.686,7.356 C19.458,6.948 19.328,6.472 19.296,5.928 C19.288,5.784 19.284,5.608 19.284,5.4 C19.284,5.192 19.288,5.016 19.296,4.872 C19.328,4.32 19.462,3.842 19.698,3.438 C19.934,3.034 20.27,2.72 20.706,2.496 C21.142,2.272 21.672,2.16 22.296,2.16 C22.92,2.16 23.45,2.272 23.886,2.496 C24.322,2.72 24.658,3.034 24.894,3.438 C25.13,3.842 25.264,4.32 25.296,4.872 C25.304,5.016 25.308,5.192 25.308,5.4 C25.308,5.608 25.304,5.784 25.296,5.928 C25.264,6.472 25.134,6.948 24.906,7.356 C24.678,7.764 24.346,8.08 23.91,8.304 C23.474,8.528 22.936,8.64 22.296,8.64 Z M22.296,7.452 C22.72,7.452 23.048,7.318 23.28,7.05 C23.512,6.782 23.64,6.388 23.664,5.868 C23.672,5.748 23.676,5.592 23.676,5.4 C23.676,5.208 23.672,5.052 23.664,4.932 C23.64,4.412 23.512,4.018 23.28,3.75 C23.048,3.482 22.72,3.348 22.296,3.348 C21.872,3.348 21.544,3.482 21.312,3.75 C21.08,4.018 20.952,4.412 20.928,4.932 C20.92,5.052 20.916,5.208 20.916,5.4 C20.916,5.592 20.92,5.748 20.928,5.868 C20.952,6.388 21.08,6.782 21.312,7.05 C21.544,7.318 21.872,7.452 22.296,7.452 Z" id="Shape"></path>
|
27 |
+
<path d="M32.448,8.64 C31.704,8.64 31.082,8.53 30.582,8.31 C30.082,8.09 29.702,7.802 29.442,7.446 C29.182,7.09 29.044,6.716 29.028,6.324 C29.028,6.252 29.052,6.192 29.1,6.144 C29.148,6.096 29.208,6.072 29.28,6.072 L30.348,6.072 C30.452,6.072 30.53,6.094 30.582,6.138 C30.634,6.182 30.68,6.236 30.72,6.3 C30.768,6.452 30.86,6.602 30.996,6.75 C31.132,6.898 31.318,7.02 31.554,7.116 C31.79,7.212 32.088,7.26 32.448,7.26 C33.024,7.26 33.454,7.164 33.738,6.972 C34.022,6.78 34.164,6.52 34.164,6.192 C34.164,5.96 34.088,5.774 33.936,5.634 C33.784,5.494 33.55,5.366 33.234,5.25 C32.918,5.134 32.5,5.012 31.98,4.884 C31.38,4.74 30.878,4.566 30.474,4.362 C30.07,4.158 29.766,3.9 29.562,3.588 C29.358,3.276 29.256,2.88 29.256,2.4 C29.256,1.936 29.382,1.524 29.634,1.164 C29.886,0.804 30.246,0.52 30.714,0.312 C31.182,0.104 31.74,1.42108547e-14 32.388,1.42108547e-14 C32.908,1.42108547e-14 33.368,0.07 33.768,0.21 C34.168,0.35 34.5,0.534 34.764,0.762 C35.028,0.99 35.23,1.234 35.37,1.494 C35.51,1.754 35.584,2.008 35.592,2.256 C35.592,2.32 35.57,2.378 35.526,2.43 C35.482,2.482 35.42,2.508 35.34,2.508 L34.224,2.508 C34.16,2.508 34.096,2.492 34.032,2.46 C33.968,2.428 33.916,2.368 33.876,2.28 C33.828,2.032 33.672,1.82 33.408,1.644 C33.144,1.468 32.804,1.38 32.388,1.38 C31.956,1.38 31.608,1.46 31.344,1.62 C31.08,1.78 30.948,2.028 30.948,2.364 C30.948,2.588 31.014,2.774 31.146,2.922 C31.278,3.07 31.49,3.2 31.782,3.312 C32.074,3.424 32.46,3.544 32.94,3.672 C33.62,3.824 34.176,4 34.608,4.2 C35.04,4.4 35.356,4.654 35.556,4.962 C35.756,5.27 35.856,5.66 35.856,6.132 C35.856,6.66 35.714,7.11 35.43,7.482 C35.146,7.854 34.748,8.14 34.236,8.34 C33.724,8.54 33.128,8.64 32.448,8.64 Z"></path>
|
28 |
+
<path d="M37.392,10.8 C37.312,10.8 37.244,10.772 37.188,10.716 C37.132,10.66 37.104,10.592 37.104,10.512 L37.104,2.568 C37.104,2.488 37.132,2.42 37.188,2.364 C37.244,2.308 37.312,2.28 37.392,2.28 L38.34,2.28 C38.428,2.28 38.498,2.308 38.55,2.364 C38.602,2.42 38.628,2.488 38.628,2.568 L38.628,3.048 C38.82,2.792 39.072,2.58 39.384,2.412 C39.696,2.244 40.084,2.16 40.548,2.16 C40.972,2.16 41.34,2.228 41.652,2.364 C41.964,2.5 42.224,2.694 42.432,2.946 C42.64,3.198 42.8,3.496 42.912,3.84 C43.024,4.184 43.088,4.564 43.104,4.98 C43.112,5.116 43.116,5.256 43.116,5.4 C43.116,5.544 43.112,5.688 43.104,5.832 C43.096,6.232 43.036,6.602 42.924,6.942 C42.812,7.282 42.65,7.578 42.438,7.83 C42.226,8.082 41.964,8.28 41.652,8.424 C41.34,8.568 40.972,8.64 40.548,8.64 C40.116,8.64 39.748,8.562 39.444,8.406 C39.14,8.25 38.892,8.044 38.7,7.788 L38.7,10.512 C38.7,10.592 38.674,10.66 38.622,10.716 C38.57,10.772 38.5,10.8 38.412,10.8 L37.392,10.8 Z M40.104,7.356 C40.448,7.356 40.716,7.282 40.908,7.134 C41.1,6.986 41.24,6.792 41.328,6.552 C41.416,6.312 41.468,6.048 41.484,5.76 C41.492,5.52 41.492,5.28 41.484,5.04 C41.468,4.752 41.416,4.488 41.328,4.248 C41.24,4.008 41.1,3.814 40.908,3.666 C40.716,3.518 40.448,3.444 40.104,3.444 C39.776,3.444 39.51,3.52 39.306,3.672 C39.102,3.824 38.954,4.018 38.862,4.254 C38.77,4.49 38.716,4.732 38.7,4.98 C38.692,5.124 38.688,5.276 38.688,5.436 C38.688,5.596 38.692,5.752 38.7,5.904 C38.708,6.144 38.764,6.374 38.868,6.594 C38.972,6.814 39.124,6.996 39.324,7.14 C39.524,7.284 39.784,7.356 40.104,7.356 Z" id="Shape"></path>
|
29 |
+
<path d="M46.272,8.64 C45.856,8.64 45.48,8.558 45.144,8.394 C44.808,8.23 44.542,8.01 44.346,7.734 C44.15,7.458 44.052,7.148 44.052,6.804 C44.052,6.244 44.28,5.798 44.736,5.466 C45.192,5.134 45.788,4.912 46.524,4.8 L48.168,4.56 L48.168,4.308 C48.168,3.972 48.084,3.712 47.916,3.528 C47.748,3.344 47.46,3.252 47.052,3.252 C46.764,3.252 46.53,3.31 46.35,3.426 C46.17,3.542 46.036,3.696 45.948,3.888 C45.884,3.992 45.792,4.044 45.672,4.044 L44.724,4.044 C44.636,4.044 44.57,4.02 44.526,3.972 C44.482,3.924 44.46,3.86 44.46,3.78 C44.468,3.652 44.522,3.496 44.622,3.312 C44.722,3.128 44.874,2.95 45.078,2.778 C45.282,2.606 45.548,2.46 45.876,2.34 C46.204,2.22 46.6,2.16 47.064,2.16 C47.568,2.16 47.994,2.222 48.342,2.346 C48.69,2.47 48.968,2.636 49.176,2.844 C49.384,3.052 49.536,3.296 49.632,3.576 C49.728,3.856 49.776,4.152 49.776,4.464 L49.776,8.232 C49.776,8.312 49.748,8.38 49.692,8.436 C49.636,8.492 49.568,8.52 49.488,8.52 L48.516,8.52 C48.428,8.52 48.358,8.492 48.306,8.436 C48.254,8.38 48.228,8.312 48.228,8.232 L48.228,7.764 C48.124,7.908 47.984,8.048 47.808,8.184 C47.632,8.32 47.418,8.43 47.166,8.514 C46.914,8.598 46.616,8.64 46.272,8.64 Z M46.68,7.5 C46.96,7.5 47.214,7.44 47.442,7.32 C47.67,7.2 47.85,7.014 47.982,6.762 C48.114,6.51 48.18,6.192 48.18,5.808 L48.18,5.556 L46.98,5.748 C46.508,5.82 46.156,5.936 45.924,6.096 C45.692,6.256 45.576,6.452 45.576,6.684 C45.576,6.86 45.63,7.01 45.738,7.134 C45.846,7.258 45.984,7.35 46.152,7.41 C46.32,7.47 46.496,7.5 46.68,7.5 Z" id="Shape"></path>
|
30 |
+
<path d="M51.6,8.52 C51.52,8.52 51.452,8.492 51.396,8.436 C51.34,8.38 51.312,8.312 51.312,8.232 L51.312,2.568 C51.312,2.488 51.34,2.42 51.396,2.364 C51.452,2.308 51.52,2.28 51.6,2.28 L52.536,2.28 C52.616,2.28 52.684,2.308 52.74,2.364 C52.796,2.42 52.824,2.488 52.824,2.568 L52.824,2.976 C52.992,2.752 53.218,2.562 53.502,2.406 C53.786,2.25 54.124,2.168 54.516,2.16 C55.428,2.144 56.064,2.5 56.424,3.228 C56.608,2.908 56.874,2.65 57.222,2.454 C57.57,2.258 57.956,2.16 58.38,2.16 C58.796,2.16 59.174,2.256 59.514,2.448 C59.854,2.64 60.122,2.93 60.318,3.318 C60.514,3.706 60.612,4.196 60.612,4.788 L60.612,8.232 C60.612,8.312 60.584,8.38 60.528,8.436 C60.472,8.492 60.404,8.52 60.324,8.52 L59.34,8.52 C59.26,8.52 59.192,8.492 59.136,8.436 C59.08,8.38 59.052,8.312 59.052,8.232 L59.052,4.884 C59.052,4.524 59,4.238 58.896,4.026 C58.792,3.814 58.652,3.664 58.476,3.576 C58.3,3.488 58.104,3.444 57.888,3.444 C57.712,3.444 57.536,3.488 57.36,3.576 C57.184,3.664 57.04,3.814 56.928,4.026 C56.816,4.238 56.76,4.524 56.76,4.884 L56.76,8.232 C56.76,8.312 56.732,8.38 56.676,8.436 C56.62,8.492 56.552,8.52 56.472,8.52 L55.488,8.52 C55.408,8.52 55.34,8.492 55.284,8.436 C55.228,8.38 55.2,8.312 55.2,8.232 L55.2,4.884 C55.2,4.524 55.144,4.238 55.032,4.026 C54.92,3.814 54.776,3.664 54.6,3.576 C54.424,3.488 54.236,3.444 54.036,3.444 C53.852,3.444 53.672,3.49 53.496,3.582 C53.32,3.674 53.176,3.824 53.064,4.032 C52.952,4.24 52.896,4.524 52.896,4.884 L52.896,8.232 C52.896,8.312 52.868,8.38 52.812,8.436 C52.756,8.492 52.688,8.52 52.608,8.52 L51.6,8.52 Z"></path>
|
31 |
+
</g>
|
32 |
+
</g>
|
33 |
+
</g>
|
34 |
+
</svg>
|
assets/js/admin.js
CHANGED
@@ -1,114 +1,98 @@
|
|
1 |
-
(function($) {
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
if ( startDate ) {
|
63 |
-
$('input[name="blocked_start_date"]', $('.zerospam-modal-block')).val(startDate);
|
64 |
-
}
|
65 |
-
|
66 |
-
var endDate = $btn.data('end');
|
67 |
-
$('input[name="blocked_end_date"]', $('.zerospam-modal-block')).val('');
|
68 |
-
if ( endDate ) {
|
69 |
-
$('input[name="blocked_end_date"]', $('.zerospam-modal-block')).val(endDate);
|
70 |
-
}
|
71 |
-
}
|
72 |
-
};
|
73 |
-
|
74 |
-
$(function() {
|
75 |
-
ZeroSpamAdmin.init();
|
76 |
-
|
77 |
-
$( '.zerospam-details-trigger' ).click(function( e ) {
|
78 |
e.preventDefault();
|
79 |
-
|
80 |
|
81 |
-
var id = $(this).data(
|
82 |
-
$(
|
83 |
});
|
84 |
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
|
90 |
-
|
91 |
-
|
92 |
|
93 |
-
|
94 |
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
|
99 |
-
|
100 |
-
|
101 |
|
102 |
-
|
103 |
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
});
|
114 |
})(jQuery);
|
1 |
+
(function ($) {
|
2 |
+
var ZeroSpamAdmin = {
|
3 |
+
prepopulateFields: function ($btn) {
|
4 |
+
var ip = $btn.data("ip");
|
5 |
+
$('input[name="blocked_ip"]', $(".zerospam-modal-block")).val("");
|
6 |
+
if (ip) {
|
7 |
+
$('input[name="blocked_ip"]', $(".zerospam-modal-block")).val(ip);
|
8 |
+
}
|
9 |
+
|
10 |
+
var keyType = $btn.data("keytype");
|
11 |
+
$('select[name="key_type"]', $(".zerospam-modal-block")).val(
|
12 |
+
"country_code"
|
13 |
+
);
|
14 |
+
if (keyType) {
|
15 |
+
$('select[name="key_type"]', $(".zerospam-modal-block")).val(keyType);
|
16 |
+
}
|
17 |
+
|
18 |
+
var blockedKey = $btn.data("blockedkey");
|
19 |
+
$('input[name="blocked_key"]', $(".zerospam-modal-block")).val("");
|
20 |
+
if (blockedKey) {
|
21 |
+
$('input[name="blocked_key"]', $(".zerospam-modal-block")).val(
|
22 |
+
blockedKey
|
23 |
+
);
|
24 |
+
}
|
25 |
+
|
26 |
+
var reason = $btn.data("reason");
|
27 |
+
$('input[name="blocked_reason"]', $(".zerospam-modal-block")).val("");
|
28 |
+
if (reason) {
|
29 |
+
$('input[name="blocked_reason"]', $(".zerospam-modal-block")).val(
|
30 |
+
reason
|
31 |
+
);
|
32 |
+
}
|
33 |
+
|
34 |
+
var type = $btn.data("type");
|
35 |
+
$('select[name="blocked_type"]', $(".zerospam-modal-block")).val(
|
36 |
+
"temporary"
|
37 |
+
);
|
38 |
+
if (type) {
|
39 |
+
$('select[name="blocked_type"]', $(".zerospam-modal-block")).val(type);
|
40 |
+
}
|
41 |
+
|
42 |
+
var startDate = $btn.data("start");
|
43 |
+
$('input[name="blocked_start_date"]', $(".zerospam-modal-block")).val("");
|
44 |
+
if (startDate) {
|
45 |
+
$('input[name="blocked_start_date"]', $(".zerospam-modal-block")).val(
|
46 |
+
startDate
|
47 |
+
);
|
48 |
+
}
|
49 |
+
|
50 |
+
var endDate = $btn.data("end");
|
51 |
+
$('input[name="blocked_end_date"]', $(".zerospam-modal-block")).val("");
|
52 |
+
if (endDate) {
|
53 |
+
$('input[name="blocked_end_date"]', $(".zerospam-modal-block")).val(
|
54 |
+
endDate
|
55 |
+
);
|
56 |
+
}
|
57 |
+
},
|
58 |
+
};
|
59 |
+
|
60 |
+
$(function () {
|
61 |
+
$(".zerospam-details-trigger").click(function (e) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
e.preventDefault();
|
63 |
+
$(".zerospam-modal").removeClass("is-active");
|
64 |
|
65 |
+
var id = $(this).data("id");
|
66 |
+
$("#zerospam-details-" + id).addClass("is-active");
|
67 |
});
|
68 |
|
69 |
+
$(".zerospam-close-modal").click(function (e) {
|
70 |
+
e.preventDefault();
|
71 |
+
$(".zerospam-modal").removeClass("is-active");
|
72 |
+
});
|
73 |
|
74 |
+
$(".zerospam-block-location-trigger").click(function (e) {
|
75 |
+
e.preventDefault();
|
76 |
|
77 |
+
ZeroSpamAdmin.prepopulateFields($(this));
|
78 |
|
79 |
+
$(".zerospam-modal").removeClass("is-active");
|
80 |
+
$("#zerospam-block-location").addClass("is-active");
|
81 |
+
});
|
82 |
|
83 |
+
$(".zerospam-block-trigger").click(function (e) {
|
84 |
+
e.preventDefault();
|
85 |
|
86 |
+
ZeroSpamAdmin.prepopulateFields($(this));
|
87 |
|
88 |
+
$(".zerospam-modal").removeClass("is-active");
|
89 |
+
$("#zerospam-block-ip").addClass("is-active");
|
90 |
+
});
|
91 |
|
92 |
+
$(document).on("keydown", function (e) {
|
93 |
+
if (e.key == "Escape") {
|
94 |
+
$(".zerospam-modal").removeClass("is-active");
|
95 |
+
}
|
96 |
+
});
|
97 |
});
|
98 |
})(jQuery);
|
assets/src/scss/admin.scss
ADDED
@@ -0,0 +1,930 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// Project breakpoints.
|
2 |
+
$breakpoints: (
|
3 |
+
"small": (
|
4 |
+
min-width: 0,
|
5 |
+
),
|
6 |
+
"medium": (
|
7 |
+
min-width: 782px,
|
8 |
+
),
|
9 |
+
"large": (
|
10 |
+
min-width: 960px,
|
11 |
+
),
|
12 |
+
);
|
13 |
+
|
14 |
+
/// Mixin to manage responsive breakpoints
|
15 |
+
///
|
16 |
+
/// @author Kitty Giraudel
|
17 |
+
/// @param {String} $breakpoint - Breakpoint name
|
18 |
+
/// @require $breakpoints
|
19 |
+
@mixin breakpoint($breakpoint) {
|
20 |
+
// If the key exists in the map
|
21 |
+
@if map-has-key($breakpoints, $breakpoint) {
|
22 |
+
// Prints a media query based on the value
|
23 |
+
@media #{inspect(map-get($breakpoints, $breakpoint))} {
|
24 |
+
@content;
|
25 |
+
}
|
26 |
+
}
|
27 |
+
|
28 |
+
// If the key doesn't exist in the map
|
29 |
+
@else {
|
30 |
+
@warn 'Unfortunately, no value could be retrieved from `#{$breakpoint}`. '
|
31 |
+
+ 'Available breakpoints are: #{map-keys($breakpoints)}.';
|
32 |
+
}
|
33 |
+
}
|
34 |
+
|
35 |
+
:root {
|
36 |
+
--zerospam-primary: #3f0008;
|
37 |
+
--zerospam-secondary: #840012;
|
38 |
+
--zerospam-accent: #ff2929;
|
39 |
+
--zerospam-trinary: #be0000;
|
40 |
+
--zerospam-success: #69b86b;
|
41 |
+
}
|
42 |
+
|
43 |
+
%default-text {
|
44 |
+
color: var(--zerospam-primary);
|
45 |
+
display: block;
|
46 |
+
font-size: 0.8125rem;
|
47 |
+
line-height: 1.384615385rem;
|
48 |
+
margin: 0 0 0.5625rem 0;
|
49 |
+
}
|
50 |
+
|
51 |
+
%button {
|
52 |
+
backface-visibility: hidden;
|
53 |
+
background: var(--zerospam-trinary);
|
54 |
+
border: 1px solid transparent;
|
55 |
+
border-radius: 3px;
|
56 |
+
box-shadow: 0 2px 1px rgb(28 31 63 / 6%);
|
57 |
+
color: #fff;
|
58 |
+
display: inline-block;
|
59 |
+
font-size: 0.875rem;
|
60 |
+
font-weight: 500;
|
61 |
+
line-height: 1;
|
62 |
+
min-height: 0;
|
63 |
+
outline: none;
|
64 |
+
padding: 0.875rem 2rem;
|
65 |
+
transition: transform 0.3s ease, box-shadow 0.3s ease,
|
66 |
+
background-color 0.3s ease;
|
67 |
+
|
68 |
+
&:active,
|
69 |
+
&:focus {
|
70 |
+
background-color: var(--zerospam-accent);
|
71 |
+
box-shadow: 0 4px 6px rgb(28 31 63 / 8%);
|
72 |
+
border-color: var(--zerospam-accent);
|
73 |
+
color: #fff;
|
74 |
+
}
|
75 |
+
|
76 |
+
&:hover {
|
77 |
+
background-color: var(--zerospam-trinary);
|
78 |
+
border: 1px solid transparent;
|
79 |
+
box-shadow: 0 4px 6px rgb(28 31 63 / 8%);
|
80 |
+
color: #fff;
|
81 |
+
transform: translate(0, -2px);
|
82 |
+
}
|
83 |
+
|
84 |
+
&.button-primary {
|
85 |
+
background: var(--zerospam-accent);
|
86 |
+
|
87 |
+
&:focus {
|
88 |
+
color: #fff;
|
89 |
+
}
|
90 |
+
}
|
91 |
+
}
|
92 |
+
|
93 |
+
%button-small {
|
94 |
+
font-size: 11px;
|
95 |
+
padding: 0.4rem 0.5rem;
|
96 |
+
}
|
97 |
+
|
98 |
+
#wpcontent {
|
99 |
+
padding-left: 0 !important;
|
100 |
+
}
|
101 |
+
|
102 |
+
.wrap {
|
103 |
+
margin-left: 12px;
|
104 |
+
}
|
105 |
+
|
106 |
+
.zerospam-small-icon {
|
107 |
+
height: 18px;
|
108 |
+
vertical-align: sub;
|
109 |
+
width: auto;
|
110 |
+
}
|
111 |
+
|
112 |
+
.zerospam-header {
|
113 |
+
background-color: var(--zerospam-secondary);
|
114 |
+
background-image: url("../img/logo-flat.svg");
|
115 |
+
background-position: 0.5rem 0.5rem;
|
116 |
+
background-repeat: no-repeat;
|
117 |
+
background-size: 100px;
|
118 |
+
padding: 1.5rem 1.5rem 1.5rem 8rem;
|
119 |
+
|
120 |
+
@include breakpoint(medium) {
|
121 |
+
align-items: center;
|
122 |
+
display: flex;
|
123 |
+
justify-content: space-between;
|
124 |
+
}
|
125 |
+
|
126 |
+
a {
|
127 |
+
color: var(--zerospam-accent);
|
128 |
+
}
|
129 |
+
|
130 |
+
&__status {
|
131 |
+
align-items: center;
|
132 |
+
background-color: #fff;
|
133 |
+
border-radius: 3px;
|
134 |
+
column-gap: 8px;
|
135 |
+
display: flex;
|
136 |
+
padding: 10px 15px;
|
137 |
+
}
|
138 |
+
}
|
139 |
+
|
140 |
+
.zerospam-dashboard {
|
141 |
+
@include breakpoint(medium) {
|
142 |
+
column-gap: 3rem;
|
143 |
+
display: grid;
|
144 |
+
grid-template-columns: 200px 1fr;
|
145 |
+
grid-template-rows: auto;
|
146 |
+
}
|
147 |
+
|
148 |
+
a {
|
149 |
+
color: var(--zerospam-accent);
|
150 |
+
}
|
151 |
+
}
|
152 |
+
|
153 |
+
a.zerospam-dashboard__menu-link {
|
154 |
+
align-items: center;
|
155 |
+
border: 1px solid transparent;
|
156 |
+
border-radius: 3px;
|
157 |
+
color: var(--zerospam-primary);
|
158 |
+
column-gap: 8px;
|
159 |
+
display: flex;
|
160 |
+
font-size: 0.875rem;
|
161 |
+
font-weight: 400;
|
162 |
+
line-height: normal;
|
163 |
+
margin: 0;
|
164 |
+
padding: 0.6875rem 0.5rem 0.6875rem 1rem;
|
165 |
+
text-decoration: none;
|
166 |
+
|
167 |
+
&:hover {
|
168 |
+
color: var(--zerospam-primary);
|
169 |
+
}
|
170 |
+
|
171 |
+
&--active,
|
172 |
+
&:focus {
|
173 |
+
background-color: #fff;
|
174 |
+
font-weight: 500;
|
175 |
+
}
|
176 |
+
|
177 |
+
&--active {
|
178 |
+
border-color: #e3e6ef;
|
179 |
+
box-shadow: 0 1px 4px rgb(18 25 97 / 8%);
|
180 |
+
margin-top: 0.125rem;
|
181 |
+
}
|
182 |
+
}
|
183 |
+
|
184 |
+
.zerospam-dashboard__menu-icon {
|
185 |
+
width: 18px;
|
186 |
+
}
|
187 |
+
|
188 |
+
.zerospam-block__grid {
|
189 |
+
align-items: center;
|
190 |
+
column-gap: 30px;
|
191 |
+
row-gap: 30px;
|
192 |
+
display: grid;
|
193 |
+
grid-template-columns: 1fr;
|
194 |
+
|
195 |
+
@include breakpoint(medium) {
|
196 |
+
grid-template-columns: 65% 1fr;
|
197 |
+
}
|
198 |
+
}
|
199 |
+
|
200 |
+
.zerospam-block {
|
201 |
+
background: #fff;
|
202 |
+
border: 1px solid #e3e6ef;
|
203 |
+
border-radius: 3px;
|
204 |
+
box-shadow: 0 1px 4px rgb(18 25 97 / 8%);
|
205 |
+
box-sizing: border-box;
|
206 |
+
width: 100%;
|
207 |
+
|
208 |
+
.button {
|
209 |
+
@extend %button;
|
210 |
+
}
|
211 |
+
|
212 |
+
&__content {
|
213 |
+
@extend %default-text;
|
214 |
+
border-top: 1px solid #ebebf2;
|
215 |
+
display: block;
|
216 |
+
margin: 0;
|
217 |
+
padding: 1rem 1rem 1.25rem;
|
218 |
+
|
219 |
+
code {
|
220 |
+
font-size: 0.85em;
|
221 |
+
}
|
222 |
+
|
223 |
+
&--supports {
|
224 |
+
align-items: center;
|
225 |
+
column-gap: 8px;
|
226 |
+
display: flex;
|
227 |
+
flex-wrap: wrap;
|
228 |
+
}
|
229 |
+
}
|
230 |
+
|
231 |
+
&__headline {
|
232 |
+
box-sizing: border-box;
|
233 |
+
color: var(--zerospam-primary);
|
234 |
+
display: block;
|
235 |
+
font-size: 0.875rem;
|
236 |
+
font-weight: 500;
|
237 |
+
line-height: 2.875rem;
|
238 |
+
margin: 0;
|
239 |
+
padding: 0 0 0 1.0625rem;
|
240 |
+
width: 100%;
|
241 |
+
}
|
242 |
+
|
243 |
+
&--callout {
|
244 |
+
.zerospam-block__content {
|
245 |
+
padding: 2rem 3rem;
|
246 |
+
|
247 |
+
h3 {
|
248 |
+
font-size: 24px;
|
249 |
+
font-weight: bold;
|
250 |
+
line-height: 1.2;
|
251 |
+
}
|
252 |
+
|
253 |
+
.button {
|
254 |
+
margin-top: 0.7rem;
|
255 |
+
}
|
256 |
+
}
|
257 |
+
}
|
258 |
+
|
259 |
+
&--success,
|
260 |
+
&--error,
|
261 |
+
&--notice {
|
262 |
+
.zerospam-block__content {
|
263 |
+
position: relative;
|
264 |
+
color: #fff;
|
265 |
+
font-size: 13px;
|
266 |
+
padding: 1.3rem 2rem;
|
267 |
+
}
|
268 |
+
}
|
269 |
+
|
270 |
+
&--notice {
|
271 |
+
background: var(--zerospam-success);
|
272 |
+
}
|
273 |
+
|
274 |
+
&--success,
|
275 |
+
&--error {
|
276 |
+
margin-bottom: 1rem;
|
277 |
+
|
278 |
+
.zerospam-block__content {
|
279 |
+
padding-left: 60px;
|
280 |
+
|
281 |
+
&::before {
|
282 |
+
background-position: center;
|
283 |
+
background-repeat: no-repeat;
|
284 |
+
background-size: contain;
|
285 |
+
border: 1px solid #fff;
|
286 |
+
border-radius: 100%;
|
287 |
+
content: "";
|
288 |
+
display: inline-block;
|
289 |
+
height: 25px;
|
290 |
+
left: 1.5rem;
|
291 |
+
position: absolute;
|
292 |
+
top: 18px;
|
293 |
+
width: 25px;
|
294 |
+
}
|
295 |
+
}
|
296 |
+
}
|
297 |
+
|
298 |
+
&--success {
|
299 |
+
.zerospam-block__content {
|
300 |
+
&::before {
|
301 |
+
background-color: #fff;
|
302 |
+
background-image: url("../img/icon-success.svg");
|
303 |
+
}
|
304 |
+
}
|
305 |
+
}
|
306 |
+
|
307 |
+
&--error {
|
308 |
+
.zerospam-block__content {
|
309 |
+
background-color: var(--zerospam-accent);
|
310 |
+
color: #fff;
|
311 |
+
|
312 |
+
&::before {
|
313 |
+
background-color: var(--zerospam-accent);
|
314 |
+
background-image: url("../img/icon-x.svg?sd");
|
315 |
+
}
|
316 |
+
}
|
317 |
+
}
|
318 |
+
|
319 |
+
&--map {
|
320 |
+
@include breakpoint(medium) {
|
321 |
+
width: calc(60% - var(--zerospam-block-gap));
|
322 |
+
}
|
323 |
+
}
|
324 |
+
|
325 |
+
&--list {
|
326 |
+
@include breakpoint(medium) {
|
327 |
+
width: calc(40% - var(--zerospam-block-gap));
|
328 |
+
}
|
329 |
+
}
|
330 |
+
}
|
331 |
+
|
332 |
+
.zerospam-blocks {
|
333 |
+
--zerospam-block-gap: 0.875rem;
|
334 |
+
|
335 |
+
display: flex;
|
336 |
+
flex-wrap: wrap;
|
337 |
+
margin-left: calc(var(--zerospam-block-gap) / 2 * -1);
|
338 |
+
margin-right: calc(var(--zerospam-block-gap) / 2 * -1);
|
339 |
+
|
340 |
+
.zerospam-block {
|
341 |
+
margin: calc(var(--zerospam-block-gap) / 2);
|
342 |
+
|
343 |
+
&--facebook,
|
344 |
+
&--twitter {
|
345 |
+
background-color: transparent;
|
346 |
+
border: 0;
|
347 |
+
box-shadow: none;
|
348 |
+
}
|
349 |
+
|
350 |
+
&--facebook {
|
351 |
+
@include breakpoint(medium) {
|
352 |
+
width: 340px;
|
353 |
+
}
|
354 |
+
}
|
355 |
+
|
356 |
+
&--twitter {
|
357 |
+
@include breakpoint(medium) {
|
358 |
+
width: calc(100% - (var(--zerospam-block-gap) * 2) - 340px);
|
359 |
+
}
|
360 |
+
}
|
361 |
+
}
|
362 |
+
}
|
363 |
+
|
364 |
+
.zerospam-table-form {
|
365 |
+
.column-actions {
|
366 |
+
column-gap: 5px;
|
367 |
+
display: flex;
|
368 |
+
|
369 |
+
.button {
|
370 |
+
@extend %button-small;
|
371 |
+
}
|
372 |
+
}
|
373 |
+
|
374 |
+
.tablenav-pages {
|
375 |
+
.current-page {
|
376 |
+
width: auto;
|
377 |
+
}
|
378 |
+
}
|
379 |
+
|
380 |
+
.tablenav {
|
381 |
+
align-items: center;
|
382 |
+
display: flex;
|
383 |
+
flex-wrap: wrap;
|
384 |
+
height: auto;
|
385 |
+
margin: 0 0 1rem 0;
|
386 |
+
padding-top: 0;
|
387 |
+
|
388 |
+
.actions {
|
389 |
+
align-items: center;
|
390 |
+
column-gap: 5px;
|
391 |
+
display: flex;
|
392 |
+
padding: 0;
|
393 |
+
|
394 |
+
select {
|
395 |
+
float: none;
|
396 |
+
margin-right: 0;
|
397 |
+
}
|
398 |
+
}
|
399 |
+
|
400 |
+
.tablenav-pages {
|
401 |
+
flex-grow: 1;
|
402 |
+
float: none;
|
403 |
+
margin: 0;
|
404 |
+
text-align: right;
|
405 |
+
}
|
406 |
+
|
407 |
+
&.bottom {
|
408 |
+
margin: 1rem 0 0 0;
|
409 |
+
}
|
410 |
+
}
|
411 |
+
|
412 |
+
p.search-box {
|
413 |
+
align-items: center;
|
414 |
+
column-gap: 5px;
|
415 |
+
display: flex;
|
416 |
+
margin-bottom: 5px;
|
417 |
+
float: none;
|
418 |
+
}
|
419 |
+
|
420 |
+
.search-box {
|
421 |
+
input[name="s"] {
|
422 |
+
float: none;
|
423 |
+
margin: 0;
|
424 |
+
}
|
425 |
+
}
|
426 |
+
}
|
427 |
+
|
428 |
+
.zerospam-table-form,
|
429 |
+
.zerospam-form {
|
430 |
+
.regular-text {
|
431 |
+
width: 100%;
|
432 |
+
}
|
433 |
+
|
434 |
+
.code {
|
435 |
+
font-size: 0.8rem;
|
436 |
+
}
|
437 |
+
|
438 |
+
select,
|
439 |
+
input[type="text"],
|
440 |
+
input[type="url"],
|
441 |
+
input[type="number"],
|
442 |
+
input[type="search"],
|
443 |
+
input[type="datetime-local"],
|
444 |
+
textarea {
|
445 |
+
border: 1px solid var(--zerospam-trinary);
|
446 |
+
color: var(--zerospam-primary);
|
447 |
+
max-width: none;
|
448 |
+
padding: 0.45rem 1rem;
|
449 |
+
width: 100%;
|
450 |
+
|
451 |
+
&:hover {
|
452 |
+
color: var(--zerospam-primary);
|
453 |
+
}
|
454 |
+
|
455 |
+
&:focus {
|
456 |
+
border: 1px solid var(--zerospam-trinary);
|
457 |
+
box-shadow: none;
|
458 |
+
}
|
459 |
+
}
|
460 |
+
|
461 |
+
.button {
|
462 |
+
@extend %button;
|
463 |
+
}
|
464 |
+
|
465 |
+
input[type="radio"],
|
466 |
+
input[type="checkbox"] {
|
467 |
+
display: none;
|
468 |
+
|
469 |
+
+ label {
|
470 |
+
display: inline-block;
|
471 |
+
margin-bottom: 0.2rem;
|
472 |
+
position: relative;
|
473 |
+
|
474 |
+
&::before,
|
475 |
+
&::after {
|
476 |
+
content: "";
|
477 |
+
cursor: pointer;
|
478 |
+
}
|
479 |
+
|
480 |
+
&::before {
|
481 |
+
background: var(--zerospam-trinary);
|
482 |
+
border: 2px solid transparent;
|
483 |
+
border-radius: 15px;
|
484 |
+
box-shadow: inset 0 1px 2px rgb(90 97 105 / 15%);
|
485 |
+
display: inline-block;
|
486 |
+
height: 1.125rem;
|
487 |
+
margin-right: 0.5rem;
|
488 |
+
padding: 0.1275rem;
|
489 |
+
position: relative;
|
490 |
+
vertical-align: middle;
|
491 |
+
transition: all 0.25s ease;
|
492 |
+
transition-duration: 0.2s;
|
493 |
+
transition-property: background-color, border-color, color, fill, stroke;
|
494 |
+
transition-timing-function: cubic-bezier(0.4, 0, 0.1, 1);
|
495 |
+
width: 2.625rem;
|
496 |
+
}
|
497 |
+
|
498 |
+
&::after {
|
499 |
+
background: #fff center no-repeat
|
500 |
+
url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjQ3NDkgMi41MjUxYS41ODMzLjU4MzMgMCAwMDAgLjgyNUw0LjEyNDggNWwtMS42NSAxLjY1YS41ODMzLjU4MzMgMCAxMC44MjUuODI0OWwxLjY1LTEuNjUgMS42NDk5IDEuNjVhLjU4MzMuNTgzMyAwIDEwLjgyNS0uODI1TDUuNzc0NiA1bDEuNjUtMS42NWEuNTgzMy41ODMzIDAgMTAtLjgyNS0uODI0OWwtMS42NSAxLjY1LTEuNjQ5OS0xLjY1YS41ODMzLjU4MzMgMCAwMC0uODI1IDB6IiBmaWxsPSIjOTA5MkIyIi8+PC9zdmc+);
|
501 |
+
background-size: 0.625rem;
|
502 |
+
border-radius: 50%;
|
503 |
+
box-shadow: 0 1px 4px rgb(24 24 72 / 12%);
|
504 |
+
display: block;
|
505 |
+
height: 1.125rem;
|
506 |
+
left: 4px;
|
507 |
+
position: absolute;
|
508 |
+
top: 4px;
|
509 |
+
transition: all 0.25s ease;
|
510 |
+
transition-duration: 0.2s;
|
511 |
+
transition-property: background, left;
|
512 |
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
513 |
+
width: 1.125rem;
|
514 |
+
z-index: 1;
|
515 |
+
}
|
516 |
+
}
|
517 |
+
|
518 |
+
&:checked {
|
519 |
+
+ label {
|
520 |
+
&::before {
|
521 |
+
background: var(--zerospam-accent);
|
522 |
+
}
|
523 |
+
|
524 |
+
&::after {
|
525 |
+
background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSI3IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yLjY2NjcgNC4zOTA1TDYuODYxOS4xOTUzYS42NjY3LjY2NjcgMCAwMS45NDI4Ljk0MjhsLTUuMTM4IDUuMTM4TC4xOTUzIDMuODA0N2EuNjY2Ny42NjY3IDAgMDEuOTQyOC0uOTQyOGwxLjUyODYgMS41Mjg2eiIgZmlsbD0iIzNFN0RBNiIvPjwvc3ZnPg==);
|
526 |
+
background-size: 0.5rem;
|
527 |
+
left: 1.7rem;
|
528 |
+
}
|
529 |
+
}
|
530 |
+
}
|
531 |
+
}
|
532 |
+
}
|
533 |
+
|
534 |
+
.zerospam-form-field-container {
|
535 |
+
align-items: center;
|
536 |
+
column-gap: 10px;
|
537 |
+
display: flex;
|
538 |
+
}
|
539 |
+
|
540 |
+
.zerospam-form-field {
|
541 |
+
margin-bottom: 0.6875rem;
|
542 |
+
|
543 |
+
> label {
|
544 |
+
color: var(--zerospam-primary);
|
545 |
+
display: block;
|
546 |
+
font-size: 0.8125rem;
|
547 |
+
line-height: 1.384615385rem;
|
548 |
+
margin: 0 0 5px 0;
|
549 |
+
}
|
550 |
+
}
|
551 |
+
|
552 |
+
.zerospam-form-fields {
|
553 |
+
--zerospam-block-gap: 0.875rem;
|
554 |
+
|
555 |
+
display: flex;
|
556 |
+
flex-wrap: wrap;
|
557 |
+
margin-left: calc(var(--zerospam-block-gap) / 2 * -1);
|
558 |
+
margin-right: calc(var(--zerospam-block-gap) / 2 * -1);
|
559 |
+
|
560 |
+
.zerospam-form-field {
|
561 |
+
margin: calc(var(--zerospam-block-gap) / 2);
|
562 |
+
width: calc(100% - var(--zerospam-block-gap));
|
563 |
+
|
564 |
+
&--half {
|
565 |
+
width: calc(50% - var(--zerospam-block-gap));
|
566 |
+
}
|
567 |
+
}
|
568 |
+
}
|
569 |
+
|
570 |
+
.zerospam-form {
|
571 |
+
> h2 {
|
572 |
+
display: none;
|
573 |
+
}
|
574 |
+
|
575 |
+
.description {
|
576 |
+
@extend %default-text;
|
577 |
+
}
|
578 |
+
|
579 |
+
tbody {
|
580 |
+
display: grid;
|
581 |
+
grid-column-gap: 0.875rem;
|
582 |
+
grid-row-gap: 0.875rem;
|
583 |
+
grid-template-columns: 1fr;
|
584 |
+
|
585 |
+
@include breakpoint(medium) {
|
586 |
+
grid-template-columns: 1fr 1fr;
|
587 |
+
}
|
588 |
+
}
|
589 |
+
|
590 |
+
tr {
|
591 |
+
box-sizing: border-box;
|
592 |
+
display: block;
|
593 |
+
position: relative;
|
594 |
+
|
595 |
+
@extend .zerospam-block;
|
596 |
+
}
|
597 |
+
|
598 |
+
th {
|
599 |
+
@extend .zerospam-block__headline;
|
600 |
+
}
|
601 |
+
|
602 |
+
td {
|
603 |
+
@extend .zerospam-block__content;
|
604 |
+
}
|
605 |
+
}
|
606 |
+
|
607 |
+
.zerospam-modal {
|
608 |
+
box-shadow: 0 0 4rem 100vw rgb(0 0 0 / 50%);
|
609 |
+
box-sizing: border-box;
|
610 |
+
left: 50%;
|
611 |
+
max-width: 600px;
|
612 |
+
opacity: 0;
|
613 |
+
position: fixed;
|
614 |
+
max-height: calc(90vh - 60px);
|
615 |
+
overflow: auto;
|
616 |
+
top: 50%;
|
617 |
+
transform: translate(-50%, -50%);
|
618 |
+
transition: all 0.5s;
|
619 |
+
visibility: hidden;
|
620 |
+
width: 100%;
|
621 |
+
z-index: 1;
|
622 |
+
|
623 |
+
&.is-active {
|
624 |
+
opacity: 1;
|
625 |
+
visibility: visible;
|
626 |
+
}
|
627 |
+
}
|
628 |
+
|
629 |
+
.zerospam-close-modal {
|
630 |
+
background: transparent;
|
631 |
+
border: 0;
|
632 |
+
cursor: pointer;
|
633 |
+
display: block;
|
634 |
+
height: 16px;
|
635 |
+
padding: 0;
|
636 |
+
position: absolute;
|
637 |
+
right: 15px;
|
638 |
+
top: 15px;
|
639 |
+
width: 15px;
|
640 |
+
|
641 |
+
&::before,
|
642 |
+
&::after {
|
643 |
+
background: #23282d;
|
644 |
+
content: "";
|
645 |
+
display: block;
|
646 |
+
height: 16px;
|
647 |
+
left: 6px;
|
648 |
+
position: absolute;
|
649 |
+
top: 0;
|
650 |
+
width: 3px;
|
651 |
+
}
|
652 |
+
|
653 |
+
&::before {
|
654 |
+
transform: rotate(45deg);
|
655 |
+
}
|
656 |
+
|
657 |
+
&::after {
|
658 |
+
transform: rotate(-45deg);
|
659 |
+
}
|
660 |
+
}
|
661 |
+
|
662 |
+
.zerospam-type- {
|
663 |
+
&blocked,
|
664 |
+
&login,
|
665 |
+
®istration,
|
666 |
+
&comment,
|
667 |
+
&fluent_form,
|
668 |
+
&wpforms,
|
669 |
+
&contactform7,
|
670 |
+
&givewp,
|
671 |
+
&memberpress_registration,
|
672 |
+
&memberpress_login,
|
673 |
+
&mailchimp4wp,
|
674 |
+
&woocommerce_registration,
|
675 |
+
&gravityforms,
|
676 |
+
&formidable {
|
677 |
+
&::before {
|
678 |
+
background-position: center;
|
679 |
+
background-repeat: no-repeat;
|
680 |
+
background-size: contain;
|
681 |
+
content: "";
|
682 |
+
display: inline-block;
|
683 |
+
height: 16px;
|
684 |
+
margin-right: 5px;
|
685 |
+
vertical-align: sub;
|
686 |
+
width: 16px;
|
687 |
+
}
|
688 |
+
}
|
689 |
+
|
690 |
+
&blocked {
|
691 |
+
color: var(--zerospam-primary);
|
692 |
+
|
693 |
+
&::before {
|
694 |
+
background-image: url("../img/icon.svg");
|
695 |
+
}
|
696 |
+
}
|
697 |
+
|
698 |
+
&login,
|
699 |
+
®istration,
|
700 |
+
&comment {
|
701 |
+
&::before {
|
702 |
+
background-image: url("../img/icon-wordpress.svg");
|
703 |
+
}
|
704 |
+
}
|
705 |
+
|
706 |
+
&fluent_form {
|
707 |
+
&::before {
|
708 |
+
background-image: url("../img/icon-fluent-forms.svg");
|
709 |
+
}
|
710 |
+
}
|
711 |
+
|
712 |
+
&formidable {
|
713 |
+
&::before {
|
714 |
+
background-image: url("../../modules/formidable/icon-formidable.png");
|
715 |
+
}
|
716 |
+
}
|
717 |
+
|
718 |
+
&wpforms {
|
719 |
+
&::before {
|
720 |
+
background-image: url("../../modules/wpforms/icon-wpforms.svg");
|
721 |
+
}
|
722 |
+
}
|
723 |
+
|
724 |
+
&contactform7 {
|
725 |
+
&::before {
|
726 |
+
background-image: url("../../modules/contactform7/icon-cf7.png");
|
727 |
+
}
|
728 |
+
}
|
729 |
+
|
730 |
+
&memberpress_registration,
|
731 |
+
&memberpress_login {
|
732 |
+
&::before {
|
733 |
+
background-image: url("../img/icon-memberpress.svg");
|
734 |
+
}
|
735 |
+
}
|
736 |
+
|
737 |
+
&givewp {
|
738 |
+
&::before {
|
739 |
+
background-image: url("../../modules/give/icon-givewp.png");
|
740 |
+
}
|
741 |
+
}
|
742 |
+
|
743 |
+
&mailchimp4wp {
|
744 |
+
&::before {
|
745 |
+
background-image: url("../img/icon-mc4wp.svg");
|
746 |
+
}
|
747 |
+
}
|
748 |
+
|
749 |
+
&woocommerce_registration {
|
750 |
+
&::before {
|
751 |
+
background-image: url("../../modules/woocommerce/icon-woocommerce.svg");
|
752 |
+
}
|
753 |
+
}
|
754 |
+
|
755 |
+
&gravityforms {
|
756 |
+
&::before {
|
757 |
+
background-image: url("../../modules/gravityforms/icon-gravity-forms.svg");
|
758 |
+
}
|
759 |
+
}
|
760 |
+
}
|
761 |
+
|
762 |
+
.zerospam-list {
|
763 |
+
list-style: none;
|
764 |
+
margin: 0;
|
765 |
+
padding: 0;
|
766 |
+
|
767 |
+
&--data-actions,
|
768 |
+
&--data {
|
769 |
+
li {
|
770 |
+
align-items: center;
|
771 |
+
column-gap: 15px;
|
772 |
+
display: flex;
|
773 |
+
}
|
774 |
+
}
|
775 |
+
|
776 |
+
&--data-actions {
|
777 |
+
font-size: 12px;
|
778 |
+
line-height: 1.2;
|
779 |
+
|
780 |
+
.button {
|
781 |
+
@extend %button-small;
|
782 |
+
}
|
783 |
+
|
784 |
+
.zerospam-list__value {
|
785 |
+
img {
|
786 |
+
vertical-align: sub;
|
787 |
+
}
|
788 |
+
|
789 |
+
&:first-child {
|
790 |
+
overflow: hidden;
|
791 |
+
text-overflow: ellipsis;
|
792 |
+
white-space: nowrap;
|
793 |
+
}
|
794 |
+
|
795 |
+
&:nth-child(2) {
|
796 |
+
flex-grow: 1;
|
797 |
+
text-align: right;
|
798 |
+
width: 25%;
|
799 |
+
}
|
800 |
+
|
801 |
+
&:nth-child(3) {
|
802 |
+
flex-shrink: 0;
|
803 |
+
text-align: right;
|
804 |
+
width: 30px;
|
805 |
+
}
|
806 |
+
|
807 |
+
&:last-child {
|
808 |
+
flex-shrink: 0;
|
809 |
+
text-align: right;
|
810 |
+
width: 40px;
|
811 |
+
}
|
812 |
+
}
|
813 |
+
}
|
814 |
+
|
815 |
+
&--data {
|
816 |
+
.zerospam-list__label,
|
817 |
+
.zerospam-list__value {
|
818 |
+
font-size: 12px;
|
819 |
+
}
|
820 |
+
|
821 |
+
.zerospam-list__label {
|
822 |
+
font-weight: bold;
|
823 |
+
flex-shrink: 0;
|
824 |
+
width: 170px;
|
825 |
+
}
|
826 |
+
|
827 |
+
.zerospam-list__value {
|
828 |
+
flex-grow: 1;
|
829 |
+
}
|
830 |
+
}
|
831 |
+
|
832 |
+
&--checks {
|
833 |
+
font-size: 15px;
|
834 |
+
line-height: 1.3;
|
835 |
+
|
836 |
+
li {
|
837 |
+
margin-bottom: 20px;
|
838 |
+
padding-left: 30px;
|
839 |
+
position: relative;
|
840 |
+
|
841 |
+
&:last-child {
|
842 |
+
margin-bottom: 0;
|
843 |
+
}
|
844 |
+
|
845 |
+
&::before {
|
846 |
+
background-image: url("../img/icon-success.svg");
|
847 |
+
background-position: center;
|
848 |
+
background-repeat: no-repeat;
|
849 |
+
background-size: contain;
|
850 |
+
content: "";
|
851 |
+
display: inline-block;
|
852 |
+
height: 22px;
|
853 |
+
left: 0;
|
854 |
+
position: absolute;
|
855 |
+
top: -2px;
|
856 |
+
width: 22px;
|
857 |
+
}
|
858 |
+
}
|
859 |
+
}
|
860 |
+
}
|
861 |
+
|
862 |
+
.zerospam-flag {
|
863 |
+
margin-right: 5px;
|
864 |
+
vertical-align: sub;
|
865 |
+
}
|
866 |
+
|
867 |
+
/* */
|
868 |
+
.zerospam-dashboard__section-link,
|
869 |
+
.zerospam-new-window-link::after {
|
870 |
+
background-image: url("../img/icon-new-window.svg");
|
871 |
+
background-position: center;
|
872 |
+
background-repeat: no-repeat;
|
873 |
+
background-size: contain;
|
874 |
+
content: "";
|
875 |
+
display: inline-block;
|
876 |
+
height: 11px;
|
877 |
+
margin-left: 3px;
|
878 |
+
vertical-align: middle;
|
879 |
+
width: 11px;
|
880 |
+
}
|
881 |
+
|
882 |
+
.zerospam-notice {
|
883 |
+
background: #fff;
|
884 |
+
border: 1px solid #ccd0d4;
|
885 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.04);
|
886 |
+
}
|
887 |
+
|
888 |
+
.zerospam-notice {
|
889 |
+
box-sizing: border-box;
|
890 |
+
padding: 30px;
|
891 |
+
}
|
892 |
+
|
893 |
+
.zerospam-notice {
|
894 |
+
margin: 20px 0;
|
895 |
+
}
|
896 |
+
|
897 |
+
/* Tabs */
|
898 |
+
.zerospam-settings-tabs .form-table,
|
899 |
+
.zerospam-tab {
|
900 |
+
display: none;
|
901 |
+
}
|
902 |
+
|
903 |
+
.zerospam-settings-tabs h2 {
|
904 |
+
background: #fff;
|
905 |
+
border: 1px solid #ccd0d4;
|
906 |
+
box-shadow: 0 1px 1px rgb(0 0 0 / 4%);
|
907 |
+
display: block;
|
908 |
+
cursor: pointer;
|
909 |
+
margin: 15px 0 0 0;
|
910 |
+
padding: 15px 20px;
|
911 |
+
}
|
912 |
+
|
913 |
+
.zerospam-settings-tabs .form-table {
|
914 |
+
background: #fff;
|
915 |
+
border: 1px solid #ccd0d4;
|
916 |
+
border-top: 0;
|
917 |
+
margin: 0;
|
918 |
+
padding: 20px;
|
919 |
+
}
|
920 |
+
|
921 |
+
.zerospam-settings-tabs .form-table.is-active,
|
922 |
+
.zerospam-tab.is-active {
|
923 |
+
display: block;
|
924 |
+
}
|
925 |
+
|
926 |
+
.zerospam-export-import-block {
|
927 |
+
column-gap: 12px;
|
928 |
+
display: grid;
|
929 |
+
grid-template-columns: 1fr 1fr;
|
930 |
+
}
|
core/admin/class-admin.php
CHANGED
@@ -48,7 +48,7 @@ class Admin {
|
|
48 |
if ( ! empty( array_intersect( $roles, $selected_user_roles ) ) ) {
|
49 |
wp_add_dashboard_widget(
|
50 |
'zerospam_dashboard_widget',
|
51 |
-
__( '
|
52 |
array( $this, 'dashboard_widget' )
|
53 |
);
|
54 |
}
|
@@ -123,7 +123,7 @@ class Admin {
|
|
123 |
$messages = array();
|
124 |
|
125 |
// Check Zero Spam license key.
|
126 |
-
$zerospam_protection = \ZeroSpam\Core\Settings::get_settings( 'zero-spam' );
|
127 |
if ( 'enabled' === $zerospam_protection ) {
|
128 |
$zerospam_license_key = \ZeroSpam\Core\Settings::get_settings( 'zerospam_license' );
|
129 |
if ( ! $zerospam_license_key ) {
|
@@ -159,7 +159,7 @@ class Admin {
|
|
159 |
'content' => sprintf(
|
160 |
wp_kses(
|
161 |
/* translators: %1$s: Replaced with the Zero Spam settings page URL */
|
162 |
-
__( '<strong>Thanks for installing
|
163 |
array(
|
164 |
'strong' => array(),
|
165 |
'a' => array(
|
@@ -169,7 +169,7 @@ class Admin {
|
|
169 |
)
|
170 |
),
|
171 |
esc_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings' ) ),
|
172 |
-
|
173 |
esc_url( ZEROSPAM_URL . 'product/premium/' )
|
174 |
),
|
175 |
);
|
@@ -250,7 +250,7 @@ class Admin {
|
|
250 |
public function plugin_row_meta( $plugin_meta, $plugin_file ) {
|
251 |
if ( ZEROSPAM_PLUGIN_BASE === $plugin_file ) {
|
252 |
$row_meta = array(
|
253 |
-
'docs' => '<a href="https://github.com/bmarshall511/wordpress-zero-spam/wiki" aria-label="' . esc_attr( __( 'View
|
254 |
);
|
255 |
|
256 |
$plugin_meta = array_merge( $plugin_meta, $row_meta );
|
@@ -276,7 +276,7 @@ class Admin {
|
|
276 |
$footer_text = sprintf(
|
277 |
/* translators: 1: Elementor, 2: Link to plugin review */
|
278 |
__( 'Enjoyed %1$s? Please leave us a %2$s rating. We really appreciate your support!', 'zero-spam' ),
|
279 |
-
'<strong>' . __( '
|
280 |
'<a href="https://wordpress.org/plugins/zero-spam/#reviews" target="_blank">★★★★★</a>'
|
281 |
);
|
282 |
}
|
48 |
if ( ! empty( array_intersect( $roles, $selected_user_roles ) ) ) {
|
49 |
wp_add_dashboard_widget(
|
50 |
'zerospam_dashboard_widget',
|
51 |
+
__( 'Zero Spam for WordPress', 'zero-spam' ),
|
52 |
array( $this, 'dashboard_widget' )
|
53 |
);
|
54 |
}
|
123 |
$messages = array();
|
124 |
|
125 |
// Check Zero Spam license key.
|
126 |
+
$zerospam_protection = \ZeroSpam\Core\Settings::get_settings( 'zero-spam-zerospam' );
|
127 |
if ( 'enabled' === $zerospam_protection ) {
|
128 |
$zerospam_license_key = \ZeroSpam\Core\Settings::get_settings( 'zerospam_license' );
|
129 |
if ( ! $zerospam_license_key ) {
|
159 |
'content' => sprintf(
|
160 |
wp_kses(
|
161 |
/* translators: %1$s: Replaced with the Zero Spam settings page URL */
|
162 |
+
__( '<strong>Thanks for installing Zero Spam for WordPress!</strong> Visit the <a href="%1$s">setting page</a> to configure your site\'s protection level or <strong><a href="%2$s">click here</a> to automatically configure recommended settings</strong>.', 'zero-spam' ),
|
163 |
array(
|
164 |
'strong' => array(),
|
165 |
'a' => array(
|
169 |
)
|
170 |
),
|
171 |
esc_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings' ) ),
|
172 |
+
wp_nonce_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings&zerospam-action=autoconfigure' ), 'autoconfigure', 'zero-spam' ),
|
173 |
esc_url( ZEROSPAM_URL . 'product/premium/' )
|
174 |
),
|
175 |
);
|
250 |
public function plugin_row_meta( $plugin_meta, $plugin_file ) {
|
251 |
if ( ZEROSPAM_PLUGIN_BASE === $plugin_file ) {
|
252 |
$row_meta = array(
|
253 |
+
'docs' => '<a href="https://github.com/bmarshall511/wordpress-zero-spam/wiki" aria-label="' . esc_attr( __( 'View Documentation', 'zero-spam' ) ) . '" target="_blank">' . __( 'Docs & FAQs', 'zero-spam' ) . '</a>',
|
254 |
);
|
255 |
|
256 |
$plugin_meta = array_merge( $plugin_meta, $row_meta );
|
276 |
$footer_text = sprintf(
|
277 |
/* translators: 1: Elementor, 2: Link to plugin review */
|
278 |
__( 'Enjoyed %1$s? Please leave us a %2$s rating. We really appreciate your support!', 'zero-spam' ),
|
279 |
+
'<strong>' . __( 'Zero Spam for WordPress', 'zero-spam' ) . '</strong>',
|
280 |
'<a href="https://wordpress.org/plugins/zero-spam/#reviews" target="_blank">★★★★★</a>'
|
281 |
);
|
282 |
}
|
core/admin/class-dashboard.php
CHANGED
@@ -17,6 +17,13 @@ defined( 'ABSPATH' ) || die();
|
|
17 |
*/
|
18 |
class Dashboard {
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
/**
|
21 |
* Constructor
|
22 |
*/
|
@@ -36,27 +43,11 @@ class Dashboard {
|
|
36 |
* Block IP handler
|
37 |
*/
|
38 |
public function block_ip() {
|
39 |
-
$
|
40 |
-
|
41 |
-
$url['query'] = str_replace(
|
42 |
-
array(
|
43 |
-
'zerospam-success=1',
|
44 |
-
'zerospam-error=1',
|
45 |
-
'zerospam-error=2',
|
46 |
-
'zerospam-error=3',
|
47 |
-
'zerospam-error=4',
|
48 |
-
'zerospam-error=5',
|
49 |
-
'zerospam-error=6',
|
50 |
-
'zerospam-error=7',
|
51 |
-
),
|
52 |
-
'',
|
53 |
-
$url['query']
|
54 |
-
);
|
55 |
-
|
56 |
-
$url = $url['scheme'] . '://' . $url['host'] . ( ! empty( $url['port'] ) ? ':' . $url['port'] : '' ) . $url['path'] . '?' . $url['query'];
|
57 |
|
58 |
if ( ! isset( $_POST['zerospam'] ) || ! wp_verify_nonce( $_POST['zerospam'], 'zerospam' ) ) {
|
59 |
-
wp_redirect( $
|
60 |
exit;
|
61 |
}
|
62 |
|
@@ -69,8 +60,10 @@ class Dashboard {
|
|
69 |
|
70 |
// Blocking by custom key.
|
71 |
if ( ! empty( $_POST['key_type'] ) ) {
|
|
|
|
|
72 |
if ( empty( $_POST['blocked_key'] ) ) {
|
73 |
-
|
74 |
exit;
|
75 |
}
|
76 |
|
@@ -79,7 +72,7 @@ class Dashboard {
|
|
79 |
}
|
80 |
|
81 |
if ( empty( $record['user_ip'] ) && empty( $record['key_type'] ) ) {
|
82 |
-
|
83 |
exit;
|
84 |
}
|
85 |
|
@@ -90,17 +83,17 @@ class Dashboard {
|
|
90 |
|
91 |
|
92 |
if ( ! empty( $record['user_ip'] ) && ! rest_is_ip_address( $record['user_ip'] ) ) {
|
93 |
-
|
94 |
exit;
|
95 |
}
|
96 |
|
97 |
if ( ! $record['blocked_type'] ) {
|
98 |
-
|
99 |
exit;
|
100 |
}
|
101 |
|
102 |
if ( 'temporary' === $record['blocked_type'] && ! $record['end_block'] ) {
|
103 |
-
|
104 |
exit;
|
105 |
}
|
106 |
|
@@ -115,19 +108,19 @@ class Dashboard {
|
|
115 |
}
|
116 |
|
117 |
if ( 'temporary' === $record['blocked_type'] && ! $record['end_block'] ) {
|
118 |
-
|
119 |
exit;
|
120 |
}
|
121 |
|
122 |
-
if ( ! ZeroSpam\Includes\DB::blocked( $record ) ) {
|
123 |
-
|
124 |
exit;
|
125 |
}
|
126 |
|
127 |
// Add the the .htaccess file.
|
128 |
\ZeroSpam\Core\Utilities::refresh_htaccess();
|
129 |
|
130 |
-
|
131 |
exit;
|
132 |
}
|
133 |
|
@@ -152,245 +145,209 @@ class Dashboard {
|
|
152 |
if ( ! current_user_can( 'manage_options' ) ) {
|
153 |
return;
|
154 |
}
|
155 |
-
?>
|
156 |
-
<div class="wrap">
|
157 |
-
<h1><?php echo esc_html( get_admin_page_title() ); ?></h1>
|
158 |
-
<?php require ZEROSPAM_PATH . 'includes/templates/admin-callout.php'; ?>
|
159 |
-
|
160 |
-
<?php if ( ! empty( $_GET['zerospam-error'] ) ): ?>
|
161 |
-
<div class="notice notice-error is-dismissible">
|
162 |
-
<p><strong>
|
163 |
-
<?php
|
164 |
-
switch( intval( $_GET['zerospam-error'] ) ) :
|
165 |
-
case 1:
|
166 |
-
esc_html_e( 'Please enter a valid IP address.', 'zero-spam' );
|
167 |
-
break;
|
168 |
-
case 2:
|
169 |
-
esc_html_e( 'Please select a valid type.', 'zero-spam' );
|
170 |
-
break;
|
171 |
-
case 3:
|
172 |
-
esc_html_e( 'Please select a date & time when the temporary block should end.', 'zero-spam' );
|
173 |
-
break;
|
174 |
-
case 4:
|
175 |
-
esc_html_e( 'There was a problem adding the record to the database. Please try again.', 'zero-spam' );
|
176 |
-
break;
|
177 |
-
case 5:
|
178 |
-
esc_html_e( 'Temporary blocks require an end date.', 'zero-spam' );
|
179 |
-
break;
|
180 |
-
case 6:
|
181 |
-
esc_html_e( 'You must enter a valid location key (ex. US, TX, etc.).', 'zero-spam' );
|
182 |
-
break;
|
183 |
-
case 7:
|
184 |
-
esc_html_e( 'Missing required fields. Please try again.', 'zero-spam' );
|
185 |
-
break;
|
186 |
-
endswitch;
|
187 |
-
?>
|
188 |
-
</strong></p>
|
189 |
-
<button type="button" class="notice-dismiss"><span class="screen-reader-text"><?php esc_html_e( 'Dismiss this notice.', 'zero-spam' ); ?></span></button>
|
190 |
-
</div>
|
191 |
-
<?php elseif ( ! empty( $_GET['zerospam-success'] ) ): ?>
|
192 |
-
<div class="notice notice-success is-dismissible">
|
193 |
-
<p><strong><?php _e( 'The blocked record has been successfully added.', 'wpzerospam' ); ?></strong></p>
|
194 |
-
<button type="button" class="notice-dismiss"><span class="screen-reader-text"><?php esc_html_e( 'Dismiss this notice.', 'zero-spam' ); ?>.</span></button>
|
195 |
-
</div>
|
196 |
-
<?php endif; ?>
|
197 |
|
198 |
-
|
199 |
-
$active_tab = 'stats';
|
200 |
-
if ( ! empty( $_REQUEST['tab'] ) ) {
|
201 |
-
$active_tab = sanitize_text_field( $_REQUEST['tab'] );
|
202 |
-
}
|
203 |
-
?>
|
204 |
-
<div class="nav-tab-wrapper">
|
205 |
-
<a id="zerospam-settings-tab-stats" class="nav-tab<?php if ( 'stats' === $active_tab ) : ?> nav-tab-active<?php endif; ?>" href="<?php echo esc_url( admin_url( 'index.php?page=wordpress-zero-spam-dashboard&tab=stats' ) ); ?>"><?php echo __( 'Statistics', 'zero-spam' ); ?></a>
|
206 |
-
<a id="zerospam-settings-tab-log" class="nav-tab<?php if ( 'log' === $active_tab ) : ?> nav-tab-active<?php endif; ?>" href="<?php echo esc_url( admin_url( 'index.php?page=wordpress-zero-spam-dashboard&tab=log' ) ); ?>"><?php echo __( 'Log', 'zero-spam' ); ?></a>
|
207 |
-
<a id="zerospam-settings-tab-blocked-ips" class="nav-tab<?php if ( 'blocked' === $active_tab ) : ?> nav-tab-active<?php endif; ?>" href="<?php echo esc_url( admin_url( 'index.php?page=wordpress-zero-spam-dashboard&tab=blocked' ) ); ?>"><?php echo __( 'Blocked IPs', 'zero-spam' ); ?></a>
|
208 |
-
<a id="zerospam-settings-tab-blocked-locations" class="nav-tab<?php if ( 'blocked-locations' === $active_tab ) : ?> nav-tab-active<?php endif; ?>" href="<?php echo esc_url( admin_url( 'index.php?page=wordpress-zero-spam-dashboard&tab=blocked-locations' ) ); ?>"><?php echo __( 'Blocked Locations', 'zero-spam' ); ?></a>
|
209 |
-
</div>
|
210 |
|
211 |
-
|
212 |
-
|
213 |
-
if ( 'stats' === $active_tab ) :
|
214 |
-
$entries = ZeroSpam\Includes\DB::query( 'log' );
|
215 |
-
|
216 |
-
if ( 'enabled' === ZeroSpam\Core\Settings::get_settings( 'log_blocked_ips' ) ) :
|
217 |
-
echo '<div class="zerospam-modules">';
|
218 |
-
|
219 |
-
echo '<div class="zerospam-module zerospam-module-map">';
|
220 |
-
echo sprintf(
|
221 |
-
wp_kses(
|
222 |
-
__( '<h3>Detections World Map</h3>', 'zero-spam' ),
|
223 |
-
array(
|
224 |
-
'h3' => array(),
|
225 |
-
)
|
226 |
-
)
|
227 |
-
);
|
228 |
-
require ZEROSPAM_PATH . 'includes/templates/admin-map.php';
|
229 |
-
echo '</div>';
|
230 |
-
|
231 |
-
?>
|
232 |
-
<div class="zerospam-module zerospam-module-ip">
|
233 |
-
<h3><?php esc_html_e( 'Most Detections by IP Address', 'zero-spam' ); ?></h3>
|
234 |
-
<?php require ZEROSPAM_PATH . 'includes/templates/admin-ips.php'; ?>
|
235 |
-
</div>
|
236 |
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
<?php
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
252 |
<?php
|
253 |
echo sprintf(
|
254 |
wp_kses(
|
255 |
/* translators: %s: url */
|
256 |
-
__( '
|
257 |
array(
|
258 |
'strong' => array(),
|
259 |
'a' => array(
|
|
|
260 |
'href' => array(),
|
|
|
261 |
),
|
262 |
)
|
263 |
),
|
264 |
-
|
265 |
);
|
266 |
?>
|
267 |
</div>
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
|
|
|
|
276 |
|
277 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
278 |
<?php
|
279 |
-
|
|
|
|
|
280 |
$table_data->prepare_items();
|
281 |
?>
|
282 |
-
<form
|
283 |
<?php wp_nonce_field( 'zerospam_nonce', 'zerospam_nonce' ); ?>
|
284 |
<input type="hidden" name="paged" value="1" />
|
285 |
<?php $table_data->search_box( __( 'Search IPs', 'zero-spam' ), 'search-ip' ); ?>
|
286 |
<?php $table_data->display(); ?>
|
287 |
</form>
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
|
|
292 |
echo sprintf(
|
293 |
wp_kses(
|
294 |
/* translators: %s: url */
|
295 |
-
__( '
|
296 |
array(
|
297 |
'strong' => array(),
|
298 |
'a' => array(
|
|
|
299 |
'href' => array(),
|
|
|
300 |
),
|
301 |
)
|
302 |
),
|
303 |
-
esc_url(
|
304 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
305 |
?>
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
echo sprintf(
|
318 |
-
wp_kses(
|
319 |
-
/* translators: %s: url */
|
320 |
-
__( '<p>When using .htaccess & due to <a href="%s" target="_blank" rel="noreferrer noopener">character limit restrictions</a>, <strong>no more than 170 blocked IP addresses recommended</strong>.</p>', 'zero-spam' ),
|
321 |
-
array(
|
322 |
-
'strong' => array(),
|
323 |
-
'a' => array(
|
324 |
-
'target' => array(),
|
325 |
-
'href' => array(),
|
326 |
-
'rel' => array(),
|
327 |
-
),
|
328 |
-
)
|
329 |
-
),
|
330 |
-
esc_url( 'https://httpd.apache.org/docs/current/en/configuring.html' ),
|
331 |
-
);
|
332 |
-
endif;
|
333 |
-
|
334 |
-
$table_data = new ZeroSpam\Core\Admin\Tables\BlockedTable();
|
335 |
-
$table_data->prepare_items();
|
336 |
-
?>
|
337 |
-
<form id="zerospam-blocked-table" method="post">
|
338 |
-
<?php wp_nonce_field( 'zerospam_nonce', 'zerospam_nonce' ); ?>
|
339 |
-
<input type="hidden" name="paged" value="1" />
|
340 |
-
<?php $table_data->search_box( __( 'Search IPs', 'zero-spam' ), 'search-ip' ); ?>
|
341 |
-
<?php $table_data->display(); ?>
|
342 |
-
</form>
|
343 |
-
</div>
|
344 |
-
<?php endif; ?>
|
345 |
-
|
346 |
-
<?php if ( 'blocked-locations' === $active_tab ) : ?>
|
347 |
-
<div id="tab-blocked-locations" class="zerospam-tab is-active">
|
348 |
-
<h2><?php echo __( 'Blocked Locations', 'zero-spam' ); ?></h2>
|
349 |
-
<?php
|
350 |
-
if (
|
351 |
-
! ZeroSpam\Core\Settings::get_settings( 'ipstack_api' ) &&
|
352 |
-
! ZeroSpam\Core\Settings::get_settings( 'ipinfo_access_token' )
|
353 |
-
) {
|
354 |
-
_e( '<strong>Blocking locations is currently disabled.</strong> A valid ipstack API key or IPinfo access token is required (defined in the plugin settings).', 'zero-spam' );
|
355 |
-
}
|
356 |
-
|
357 |
-
$table_data = new ZeroSpam\Core\Admin\Tables\BlockedLocations();
|
358 |
-
$table_data->prepare_items();
|
359 |
-
?>
|
360 |
-
<form id="zerospam-blocked-table" method="post">
|
361 |
-
<?php wp_nonce_field( 'zerospam_nonce', 'zerospam_nonce' ); ?>
|
362 |
-
<input type="hidden" name="paged" value="1" />
|
363 |
-
<?php $table_data->search_box( __( 'Search IPs', 'zero-spam' ), 'search-ip' ); ?>
|
364 |
-
<?php $table_data->display(); ?>
|
365 |
-
</form>
|
366 |
-
</div>
|
367 |
-
<?php endif; ?>
|
368 |
</div>
|
|
|
369 |
|
370 |
-
|
371 |
-
|
372 |
-
<div class="zerospam-modal-details">
|
373 |
-
<div class="zerospam-modal-title">
|
374 |
-
<h3><?php echo __( 'Add/Update Blocked IP', 'zero-spam' ); ?></h3>
|
375 |
-
</div>
|
376 |
-
<div class="zerospam-modal-subtitle">
|
377 |
-
|
378 |
-
</div>
|
379 |
|
|
|
|
|
|
|
380 |
<?php require ZEROSPAM_PATH . 'includes/templates/admin-block-ip.php'; ?>
|
381 |
</div>
|
382 |
</div>
|
|
|
383 |
|
384 |
-
|
385 |
-
|
386 |
-
<div class="zerospam-modal-details">
|
387 |
-
<div class="zerospam-modal-title">
|
388 |
-
<h3><?php echo __( 'Add/Update Blocked Location', 'zero-spam' ); ?></h3>
|
389 |
-
</div>
|
390 |
-
<div class="zerospam-modal-subtitle">
|
391 |
-
|
392 |
-
</div>
|
393 |
|
|
|
|
|
|
|
394 |
<?php
|
395 |
$location_form = true;
|
396 |
require ZEROSPAM_PATH . 'includes/templates/admin-block-ip.php';
|
17 |
*/
|
18 |
class Dashboard {
|
19 |
|
20 |
+
/**
|
21 |
+
* Base admin link
|
22 |
+
*
|
23 |
+
* @var string $base_admin_link Base admin link
|
24 |
+
*/
|
25 |
+
public static $base_admin_link = 'index.php?page=wordpress-zero-spam-dashboard';
|
26 |
+
|
27 |
/**
|
28 |
* Constructor
|
29 |
*/
|
43 |
* Block IP handler
|
44 |
*/
|
45 |
public function block_ip() {
|
46 |
+
$base_admin_link = self::$base_admin_link;
|
47 |
+
$subview = 'blocked-ips';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
|
49 |
if ( ! isset( $_POST['zerospam'] ) || ! wp_verify_nonce( $_POST['zerospam'], 'zerospam' ) ) {
|
50 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Link expired, please try again.' );
|
51 |
exit;
|
52 |
}
|
53 |
|
60 |
|
61 |
// Blocking by custom key.
|
62 |
if ( ! empty( $_POST['key_type'] ) ) {
|
63 |
+
$subview = 'blocked-locations';
|
64 |
+
|
65 |
if ( empty( $_POST['blocked_key'] ) ) {
|
66 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Missing block record key.' );
|
67 |
exit;
|
68 |
}
|
69 |
|
72 |
}
|
73 |
|
74 |
if ( empty( $record['user_ip'] ) && empty( $record['key_type'] ) ) {
|
75 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Missing record key.' );
|
76 |
exit;
|
77 |
}
|
78 |
|
83 |
|
84 |
|
85 |
if ( ! empty( $record['user_ip'] ) && ! rest_is_ip_address( $record['user_ip'] ) ) {
|
86 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Invalid IP address.' );
|
87 |
exit;
|
88 |
}
|
89 |
|
90 |
if ( ! $record['blocked_type'] ) {
|
91 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Missing block type.' );
|
92 |
exit;
|
93 |
}
|
94 |
|
95 |
if ( 'temporary' === $record['blocked_type'] && ! $record['end_block'] ) {
|
96 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Missing block end date.' );
|
97 |
exit;
|
98 |
}
|
99 |
|
108 |
}
|
109 |
|
110 |
if ( 'temporary' === $record['blocked_type'] && ! $record['end_block'] ) {
|
111 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=Missing block end date.' );
|
112 |
exit;
|
113 |
}
|
114 |
|
115 |
+
if ( ! \ZeroSpam\Includes\DB::blocked( $record ) ) {
|
116 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=error&zerospam-msg=There was a problem adding the record, please try again.' );
|
117 |
exit;
|
118 |
}
|
119 |
|
120 |
// Add the the .htaccess file.
|
121 |
\ZeroSpam\Core\Utilities::refresh_htaccess();
|
122 |
|
123 |
+
wp_redirect( $base_admin_link . '&subview=' . $subview . '&zerospam-type=success&zerospam-msg=Record has been successfully added/updated.' );
|
124 |
exit;
|
125 |
}
|
126 |
|
145 |
if ( ! current_user_can( 'manage_options' ) ) {
|
146 |
return;
|
147 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
148 |
|
149 |
+
$base_admin_link = self::$base_admin_link;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
150 |
|
151 |
+
// @codingStandardsIgnoreLine
|
152 |
+
$subview = ! empty( $_REQUEST['subview'] ) ? sanitize_text_field( $_REQUEST['subview'] ) : 'reports';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
|
154 |
+
?>
|
155 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-header.php'; ?>
|
156 |
+
<div class="wrap">
|
157 |
+
<div class="zerospam-dashboard">
|
158 |
+
<div class="zerospam-dashboard__col">
|
159 |
+
<ul class="zerospam-dashboard__sections">
|
160 |
+
<li>
|
161 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=reports" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'reports' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
162 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-reports.svg" class="zerospam-dashboard__menu-icon" />
|
163 |
+
<?php esc_html_e( 'Dashboard', 'zero-spam' ); ?>
|
164 |
+
</a>
|
165 |
+
</li>
|
166 |
+
<li>
|
167 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=log" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'log' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
168 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-log.svg" class="zerospam-dashboard__menu-icon" />
|
169 |
+
<?php esc_html_e( 'Log', 'zero-spam' ); ?>
|
170 |
+
</a>
|
171 |
+
</li>
|
172 |
+
<li>
|
173 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=blocked-ips" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'blocked-ips' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
174 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-blocked.svg" class="zerospam-dashboard__menu-icon" />
|
175 |
+
<?php esc_html_e( 'Blocked IPs', 'zero-spam' ); ?>
|
176 |
+
</a>
|
177 |
+
</li>
|
178 |
+
<li>
|
179 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=blocked-locations" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'blocked-locations' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
180 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-location.svg" class="zerospam-dashboard__menu-icon" />
|
181 |
+
<?php esc_html_e( 'Blocked Locations', 'zero-spam' ); ?>
|
182 |
+
</a>
|
183 |
+
</li>
|
184 |
+
</ul>
|
185 |
+
|
186 |
+
<div class="zerospam-block" style="margin-top: 40px;">
|
187 |
+
<div class="zerospam-block__content">
|
188 |
<?php
|
189 |
echo sprintf(
|
190 |
wp_kses(
|
191 |
/* translators: %s: url */
|
192 |
+
__( '<p><strong>We want to hear from you!</strong> <a href="%1$s" target="_blank" rel="noreferrer noopener">Submit your review</a> for 10% off a Zero Spam license.</p>', 'zero-spam' ),
|
193 |
array(
|
194 |
'strong' => array(),
|
195 |
'a' => array(
|
196 |
+
'target' => array(),
|
197 |
'href' => array(),
|
198 |
+
'rel' => array(),
|
199 |
),
|
200 |
)
|
201 |
),
|
202 |
+
'https://wordpress.org/support/plugin/zero-spam/reviews/?filter=5'
|
203 |
);
|
204 |
?>
|
205 |
</div>
|
206 |
+
</div>
|
207 |
+
</div>
|
208 |
+
<div class="zerospam-dashboard__col">
|
209 |
+
<?php if ( ! empty( $_REQUEST['zerospam-msg'] ) ) : ?>
|
210 |
+
<div class="zerospam-block zerospam-block--notice zerospam-block--<?php echo ! empty( $_REQUEST['zerospam-type'] ) ? esc_attr( $_REQUEST['zerospam-type'] ) : 'default' ?>">
|
211 |
+
<div class="zerospam-block__content">
|
212 |
+
<?php echo sanitize_text_field( wp_unslash( $_REQUEST['zerospam-msg'] ) ); ?>
|
213 |
+
</div>
|
214 |
+
</div>
|
215 |
+
<?php endif; ?>
|
216 |
|
217 |
+
<?php
|
218 |
+
$entries = \ZeroSpam\Includes\DB::query( 'log' );
|
219 |
+
switch ( $subview ) :
|
220 |
+
case 'reports':
|
221 |
+
?>
|
222 |
+
<div class="zerospam-blocks">
|
223 |
+
<div class="zerospam-block zerospam-block--twitter">
|
224 |
+
<a class="twitter-timeline" data-height="350" href="https://twitter.com/ZeroSpamOrg?ref_src=twsrc%5Etfw">Tweets by ZeroSpamOrg</a> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
|
225 |
+
</div>
|
226 |
+
|
227 |
+
<div class="zerospam-block zerospam-block--facebook">
|
228 |
+
<iframe src="https://www.facebook.com/plugins/page.php?href=https%3A%2F%2Fwww.facebook.com%2Fzerospamorg&tabs=timeline&width=340&height=354&small_header=false&adapt_container_width=true&hide_cover=false&show_facepile=true&appId=2704301689814493" width="340" height="354" style="border:none;overflow:hidden" scrolling="no" frameborder="0" allowfullscreen="true" allow="autoplay; clipboard-write; encrypted-media; picture-in-picture; web-share"></iframe>
|
229 |
+
</div>
|
230 |
+
|
231 |
+
<div class="zerospam-block zerospam-block--map">
|
232 |
+
<h3 class="zerospam-block__headline"><?php esc_html_e( 'Detections World Map', 'zero-spam' ); ?></h3>
|
233 |
+
<div class="zerospam-block__content">
|
234 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-map.php'; ?>
|
235 |
+
</div>
|
236 |
+
</div>
|
237 |
+
|
238 |
+
<div class="zerospam-block zerospam-block--list">
|
239 |
+
<h3 class="zerospam-block__headline"><?php esc_html_e( 'Most Detections by IP Address', 'zero-spam' ); ?></h3>
|
240 |
+
<div class="zerospam-block__content">
|
241 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-ips.php'; ?>
|
242 |
+
</div>
|
243 |
+
</div>
|
244 |
+
|
245 |
+
<div class="zerospam-block zerospam-block--list">
|
246 |
+
<h3 class="zerospam-block__headline"><?php esc_html_e( 'Detections by Location', 'zero-spam' ); ?></h3>
|
247 |
+
<div class="zerospam-block__content">
|
248 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-pie.php'; ?>
|
249 |
+
</div>
|
250 |
+
</div>
|
251 |
+
|
252 |
+
<div class="zerospam-block zerospam-block--map">
|
253 |
+
<h3 class="zerospam-block__headline"><?php esc_html_e( 'Detection History', 'zero-spam' ); ?></h3>
|
254 |
+
<div class="zerospam-block__content">
|
255 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-line-chart.php'; ?>
|
256 |
+
</div>
|
257 |
+
</div>
|
258 |
+
</div>
|
259 |
<?php
|
260 |
+
break;
|
261 |
+
case 'log':
|
262 |
+
$table_data = new \ZeroSpam\Core\Admin\Tables\LogTable();
|
263 |
$table_data->prepare_items();
|
264 |
?>
|
265 |
+
<form class="zerospam-table-form" method="post">
|
266 |
<?php wp_nonce_field( 'zerospam_nonce', 'zerospam_nonce' ); ?>
|
267 |
<input type="hidden" name="paged" value="1" />
|
268 |
<?php $table_data->search_box( __( 'Search IPs', 'zero-spam' ), 'search-ip' ); ?>
|
269 |
<?php $table_data->display(); ?>
|
270 |
</form>
|
271 |
+
<?php
|
272 |
+
break;
|
273 |
+
case 'blocked-ips':
|
274 |
+
$block_method = \ZeroSpam\Core\Settings::get_settings( 'block_method' );
|
275 |
+
if ( ! empty( $block_method ) && 'php' !== $block_method ) :
|
276 |
echo sprintf(
|
277 |
wp_kses(
|
278 |
/* translators: %s: url */
|
279 |
+
__( '<p>When using .htaccess & due to <a href="%s" target="_blank" rel="noreferrer noopener">character limit restrictions</a>, <strong>no more than 170 blocked IP addresses recommended</strong>.</p>', 'zero-spam' ),
|
280 |
array(
|
281 |
'strong' => array(),
|
282 |
'a' => array(
|
283 |
+
'target' => array(),
|
284 |
'href' => array(),
|
285 |
+
'rel' => array(),
|
286 |
),
|
287 |
)
|
288 |
),
|
289 |
+
esc_url( 'https://httpd.apache.org/docs/current/en/configuring.html' ),
|
290 |
);
|
291 |
+
endif;
|
292 |
+
|
293 |
+
$table_data = new \ZeroSpam\Core\Admin\Tables\BlockedTable();
|
294 |
+
$table_data->prepare_items();
|
295 |
+
?>
|
296 |
+
<form class="zerospam-table-form" method="post">
|
297 |
+
<?php wp_nonce_field( 'zerospam_nonce', 'zerospam_nonce' ); ?>
|
298 |
+
<input type="hidden" name="paged" value="1" />
|
299 |
+
<?php $table_data->search_box( __( 'Search IPs', 'zero-spam' ), 'search-ip' ); ?>
|
300 |
+
<?php $table_data->display(); ?>
|
301 |
+
</form>
|
302 |
+
<?php
|
303 |
+
break;
|
304 |
+
case 'blocked-locations':
|
305 |
+
if (
|
306 |
+
! \ZeroSpam\Core\Settings::get_settings( 'ipstack_api' ) &&
|
307 |
+
! \ZeroSpam\Core\Settings::get_settings( 'ipinfo_access_token' )
|
308 |
+
) :
|
309 |
+
?>
|
310 |
+
<div class="zerospam-block zerospam-block--error">
|
311 |
+
<div class="zerospam-block__content">
|
312 |
+
<?php _e( '<strong>Blocking locations is currently disabled.</strong> A valid ipstack API key or IPinfo access token is required.', 'zero-spam' ); ?>
|
313 |
+
</div>
|
314 |
+
</div>
|
315 |
+
<?php endif; ?>
|
316 |
+
<?php
|
317 |
+
$table_data = new \ZeroSpam\Core\Admin\Tables\BlockedLocations();
|
318 |
+
$table_data->prepare_items();
|
319 |
?>
|
320 |
+
<form class="zerospam-table-form" method="post">
|
321 |
+
<?php wp_nonce_field( 'zerospam_nonce', 'zerospam_nonce' ); ?>
|
322 |
+
<input type="hidden" name="paged" value="1" />
|
323 |
+
<?php $table_data->search_box( __( 'Search IPs', 'zero-spam' ), 'search-ip' ); ?>
|
324 |
+
<?php $table_data->display(); ?>
|
325 |
+
</form>
|
326 |
+
<?php
|
327 |
+
break;
|
328 |
+
endswitch;
|
329 |
+
?>
|
330 |
+
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
331 |
</div>
|
332 |
+
</div>
|
333 |
|
334 |
+
<div class="zerospam-modal zerospam-modal-block" id="zerospam-block-ip">
|
335 |
+
<button class="zerospam-close-modal" aria-label="<?php echo esc_attr( __( 'Close Modal', 'zero-spam' ) ); ?>"></button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
336 |
|
337 |
+
<div class="zerospam-block">
|
338 |
+
<h3 class="zerospam-block__headline"><?php echo __( 'Add/Update Blocked IP', 'zero-spam' ); ?></h3>
|
339 |
+
<div class="zerospam-block__content">
|
340 |
<?php require ZEROSPAM_PATH . 'includes/templates/admin-block-ip.php'; ?>
|
341 |
</div>
|
342 |
</div>
|
343 |
+
</div>
|
344 |
|
345 |
+
<div class="zerospam-modal zerospam-modal-block" id="zerospam-block-location">
|
346 |
+
<button class="zerospam-close-modal" aria-label="<?php echo esc_attr( __( 'Close Modal', 'zero-spam' ) ); ?>"></button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
347 |
|
348 |
+
<div class="zerospam-block">
|
349 |
+
<h3 class="zerospam-block__headline"><?php echo __( 'Add/Update Blocked Location', 'zero-spam' ); ?></h3>
|
350 |
+
<div class="zerospam-block__content">
|
351 |
<?php
|
352 |
$location_form = true;
|
353 |
require ZEROSPAM_PATH . 'includes/templates/admin-block-ip.php';
|
core/admin/class-settings.php
CHANGED
@@ -14,6 +14,12 @@ defined( 'ABSPATH' ) || die();
|
|
14 |
* Settings
|
15 |
*/
|
16 |
class Settings {
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
|
18 |
/**
|
19 |
* Admin constructor
|
@@ -22,25 +28,13 @@ class Settings {
|
|
22 |
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
23 |
add_action( 'admin_init', array( $this, 'register_settings' ) );
|
24 |
add_action( 'admin_action_import_settings', array( $this, 'import_settings' ) );
|
25 |
-
|
26 |
-
// @codingStandardsIgnoreLine
|
27 |
-
if ( ! empty( $_REQUEST['zerospam-msg'] ) ) {
|
28 |
-
add_action(
|
29 |
-
'admin_notices',
|
30 |
-
function() {
|
31 |
-
// @codingStandardsIgnoreLine
|
32 |
-
add_settings_error( 'zerospam-notices', 'zerospam-msg', sanitize_text_field( wp_unslash( $_REQUEST['zerospam-msg'] ) ), 'success' );
|
33 |
-
}
|
34 |
-
);
|
35 |
-
}
|
36 |
}
|
37 |
|
38 |
/**
|
39 |
* Imports settings
|
40 |
*/
|
41 |
public function import_settings() {
|
42 |
-
$
|
43 |
-
$redirect = wp_parse_url( $redirect );
|
44 |
|
45 |
$redirect['query'] = str_replace(
|
46 |
array(
|
@@ -51,14 +45,16 @@ class Settings {
|
|
51 |
$redirect['query']
|
52 |
);
|
53 |
|
54 |
-
$redirect =
|
55 |
|
56 |
if ( isset( $_POST['zerospam'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['zerospam'] ) ), 'import_settings' ) ) {
|
57 |
$settings_json = sanitize_text_field( wp_unslash( $_POST['settings'] ) ); // @codingStandardsIgnoreLine
|
58 |
if ( ! empty( $settings_json ) ) {
|
59 |
$settings = json_decode( $settings_json, true );
|
60 |
if ( json_last_error() === JSON_ERROR_NONE ) {
|
61 |
-
|
|
|
|
|
62 |
|
63 |
wp_safe_redirect( $redirect . '&zerospam-success=1' );
|
64 |
exit;
|
@@ -84,6 +80,8 @@ class Settings {
|
|
84 |
* Processes nonce actions
|
85 |
*/
|
86 |
public function process_nonce_actions() {
|
|
|
|
|
87 |
if (
|
88 |
! empty( $_REQUEST['zerospam-action'] ) &&
|
89 |
'autoconfigure' === $_REQUEST['zerospam-action'] &&
|
@@ -91,8 +89,8 @@ class Settings {
|
|
91 |
) {
|
92 |
\ZeroSpam\Core\Settings::auto_configure();
|
93 |
|
94 |
-
$message = __( '
|
95 |
-
$redirect_url =
|
96 |
|
97 |
wp_safe_redirect( $redirect_url );
|
98 |
exit;
|
@@ -103,8 +101,8 @@ class Settings {
|
|
103 |
) {
|
104 |
\ZeroSpam\Core\Settings::update_blocked_email_domains();
|
105 |
|
106 |
-
$message = __( '
|
107 |
-
$redirect_url =
|
108 |
|
109 |
wp_safe_redirect( $redirect_url );
|
110 |
exit;
|
@@ -115,8 +113,8 @@ class Settings {
|
|
115 |
) {
|
116 |
self::regenerate_honeypot();
|
117 |
|
118 |
-
$message = __( '
|
119 |
-
$redirect_url =
|
120 |
|
121 |
wp_safe_redirect( $redirect_url );
|
122 |
exit;
|
@@ -128,7 +126,7 @@ class Settings {
|
|
128 |
\ZeroSpam\Core\Settings::update_disallowed_words();
|
129 |
|
130 |
$message = __( 'WordPress\'s disallowed words list has been successfully updated to the recommended.', 'zero-spam' );
|
131 |
-
$redirect_url = 'options-general.php?page=wordpress-zero-spam-settings&tab=settings&zerospam-msg=' . $message;
|
132 |
|
133 |
wp_safe_redirect( $redirect_url );
|
134 |
exit;
|
@@ -139,11 +137,35 @@ class Settings {
|
|
139 |
) {
|
140 |
\ZeroSpam\Core\Utilities::delete_error_log();
|
141 |
|
142 |
-
$message = __( '
|
143 |
-
$redirect_url =
|
144 |
|
145 |
wp_safe_redirect( $redirect_url );
|
146 |
exit;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
147 |
}
|
148 |
}
|
149 |
|
@@ -169,6 +191,27 @@ class Settings {
|
|
169 |
* @param array $input Input array.
|
170 |
*/
|
171 |
public function settings_validation( $input ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
172 |
update_option( 'zerospam_configured', 1 );
|
173 |
|
174 |
return $input;
|
@@ -178,83 +221,38 @@ class Settings {
|
|
178 |
* Register settings
|
179 |
*/
|
180 |
public function register_settings() {
|
181 |
-
register_setting(
|
182 |
-
'wpzerospam',
|
183 |
-
'wpzerospam',
|
184 |
-
array(
|
185 |
-
'sanitize_callback' => array( $this, 'settings_validation' ),
|
186 |
-
)
|
187 |
-
);
|
188 |
-
|
189 |
foreach ( \ZeroSpam\Core\Settings::get_sections() as $key => $section ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
190 |
add_settings_section(
|
191 |
-
'
|
192 |
$section['title'],
|
193 |
array( $this, 'settings_section' ),
|
194 |
-
'
|
195 |
);
|
196 |
}
|
197 |
|
198 |
foreach ( \ZeroSpam\Core\Settings::get_settings() as $key => $setting ) {
|
199 |
-
$options =
|
200 |
-
|
201 |
-
|
|
|
|
|
|
|
202 |
);
|
203 |
|
204 |
-
if ( ! empty( $setting['options'] ) ) {
|
205 |
-
$options['options'] = $setting['options'];
|
206 |
-
}
|
207 |
-
|
208 |
-
if ( ! empty( $setting['value'] ) ) {
|
209 |
-
$options['value'] = $setting['value'];
|
210 |
-
}
|
211 |
-
|
212 |
-
if ( ! empty( $setting['placeholder'] ) ) {
|
213 |
-
$options['placeholder'] = $setting['placeholder'];
|
214 |
-
}
|
215 |
-
|
216 |
-
if ( ! empty( $setting['class'] ) ) {
|
217 |
-
$options['class'] = $setting['class'];
|
218 |
-
}
|
219 |
-
|
220 |
-
if ( ! empty( $setting['desc'] ) ) {
|
221 |
-
$options['desc'] = $setting['desc'];
|
222 |
-
}
|
223 |
-
|
224 |
-
if ( ! empty( $setting['suffix'] ) ) {
|
225 |
-
$options['suffix'] = $setting['suffix'];
|
226 |
-
}
|
227 |
-
|
228 |
-
if ( ! empty( $setting['min'] ) ) {
|
229 |
-
$options['min'] = $setting['min'];
|
230 |
-
}
|
231 |
-
|
232 |
-
if ( ! empty( $setting['max'] ) ) {
|
233 |
-
$options['max'] = $setting['max'];
|
234 |
-
}
|
235 |
-
|
236 |
-
if ( ! empty( $setting['step'] ) ) {
|
237 |
-
$options['step'] = $setting['step'];
|
238 |
-
}
|
239 |
-
|
240 |
-
if ( ! empty( $setting['html'] ) ) {
|
241 |
-
$options['html'] = $setting['html'];
|
242 |
-
}
|
243 |
-
|
244 |
-
if ( ! empty( $setting['field_class'] ) ) {
|
245 |
-
$options['field_class'] = $setting['field_class'];
|
246 |
-
}
|
247 |
-
|
248 |
-
if ( ! empty( $setting['multiple'] ) ) {
|
249 |
-
$options['multiple'] = $setting['multiple'];
|
250 |
-
}
|
251 |
-
|
252 |
add_settings_field(
|
253 |
$key,
|
254 |
! empty( $setting['title'] ) ? $setting['title'] : false,
|
255 |
array( $this, 'settings_field' ),
|
256 |
-
'
|
257 |
-
'
|
258 |
$options
|
259 |
);
|
260 |
}
|
@@ -274,6 +272,26 @@ class Settings {
|
|
274 |
* @param array $args Field arguments.
|
275 |
*/
|
276 |
public function settings_field( $args ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
277 |
switch ( $args['type'] ) {
|
278 |
case 'html':
|
279 |
echo wp_kses(
|
@@ -313,7 +331,7 @@ class Settings {
|
|
313 |
?>
|
314 |
<textarea
|
315 |
id="<?php echo esc_attr( $args['label_for'] ); ?>"
|
316 |
-
name="
|
317 |
rows="5"
|
318 |
<?php if ( ! empty( $args['field_class'] ) ) : ?>
|
319 |
class="<?php echo esc_attr( $args['field_class'] ); ?>"
|
@@ -332,7 +350,7 @@ class Settings {
|
|
332 |
?>
|
333 |
<input
|
334 |
id="<?php echo esc_attr( $args['label_for'] ); ?>"
|
335 |
-
name="
|
336 |
type="<?php echo esc_attr( $args['type'] ); ?>"
|
337 |
<?php if ( ! empty( $args['value'] ) ) : ?>
|
338 |
value="<?php echo esc_attr( $args['value'] ); ?>"
|
@@ -360,14 +378,13 @@ class Settings {
|
|
360 |
return;
|
361 |
}
|
362 |
|
363 |
-
$name = 'wpzerospam[' . esc_attr( $args['label_for'] ) . ']';
|
364 |
if ( ! empty( $args['multiple'] ) ) :
|
365 |
-
$
|
366 |
endif;
|
367 |
?>
|
368 |
<select
|
369 |
id="<?php echo esc_attr( $args['label_for'] ); ?>"
|
370 |
-
name="<?php echo esc_attr( $
|
371 |
<?php if ( ! empty( $args['multiple'] ) ) : ?>
|
372 |
multiple
|
373 |
<?php endif; ?>
|
@@ -406,23 +423,21 @@ class Settings {
|
|
406 |
return;
|
407 |
}
|
408 |
|
|
|
409 |
foreach ( $args['options'] as $key => $label ) {
|
410 |
$selected = false;
|
411 |
-
$name = 'wpzerospam[' . esc_attr( $args['label_for'] ) . ']';
|
412 |
if ( count( $args['options'] ) > 1 && 'checkbox' === $args['type'] ) {
|
413 |
-
$
|
414 |
}
|
415 |
|
416 |
if ( ! empty( $args['value'] ) && $args['value'] == $key ) {
|
417 |
$selected = true;
|
418 |
}
|
419 |
-
|
420 |
?>
|
421 |
-
<label for="<?php echo esc_attr( $args['label_for'] . $key ); ?>">
|
422 |
<input
|
423 |
type="<?php echo esc_attr( $args['type'] ); ?>"
|
424 |
id="<?php echo esc_attr( $args['label_for'] . $key ); ?>"
|
425 |
-
name="<?php echo esc_attr( $
|
426 |
value="<?php echo esc_attr( $key ); ?>"
|
427 |
<?php if ( ! empty( $args['field_class'] ) ) : ?>
|
428 |
class="<?php echo esc_attr( $args['field_class'] ); ?>"
|
@@ -431,25 +446,29 @@ class Settings {
|
|
431 |
checked="checked"
|
432 |
<?php endif; ?>
|
433 |
/>
|
434 |
-
|
435 |
-
echo
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
'
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
|
|
|
|
|
|
451 |
<?php
|
452 |
}
|
|
|
453 |
break;
|
454 |
}
|
455 |
|
@@ -470,22 +489,7 @@ class Settings {
|
|
470 |
);
|
471 |
}
|
472 |
|
473 |
-
|
474 |
-
echo '<p class="description">' . wp_kses(
|
475 |
-
$args['desc'],
|
476 |
-
array(
|
477 |
-
'a' => array(
|
478 |
-
'target' => array(),
|
479 |
-
'href' => array(),
|
480 |
-
'class' => array(),
|
481 |
-
'rel' => array(),
|
482 |
-
),
|
483 |
-
'strong' => array(),
|
484 |
-
'b' => array(),
|
485 |
-
'code' => array(),
|
486 |
-
)
|
487 |
-
) . '</p>';
|
488 |
-
}
|
489 |
}
|
490 |
|
491 |
/**
|
@@ -496,49 +500,229 @@ class Settings {
|
|
496 |
return;
|
497 |
}
|
498 |
|
499 |
-
$base_admin_link =
|
|
|
500 |
// @codingStandardsIgnoreLine
|
501 |
-
$
|
502 |
-
|
503 |
-
|
504 |
-
'title' => __( 'Settings', 'zero-spam' ),
|
505 |
-
'template' => 'settings',
|
506 |
-
),
|
507 |
-
'export' => array(
|
508 |
-
'title' => __( 'Export/Import Settings', 'zero-spam' ),
|
509 |
-
'template' => 'export',
|
510 |
-
),
|
511 |
-
'error' => array(
|
512 |
-
'title' => __( 'Error Log', 'zero-spam' ),
|
513 |
-
'template' => 'errors',
|
514 |
-
),
|
515 |
-
);
|
516 |
?>
|
|
|
517 |
<div class="wrap">
|
518 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
519 |
|
520 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
521 |
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
$classes = array( 'nav-tab' );
|
527 |
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
<?php
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
542 |
</div>
|
543 |
<?php
|
544 |
}
|
14 |
* Settings
|
15 |
*/
|
16 |
class Settings {
|
17 |
+
/**
|
18 |
+
* Base admin link
|
19 |
+
*
|
20 |
+
* @var string $base_admin_link Base admin link
|
21 |
+
*/
|
22 |
+
public static $base_admin_link = 'options-general.php?page=wordpress-zero-spam-settings';
|
23 |
|
24 |
/**
|
25 |
* Admin constructor
|
28 |
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
29 |
add_action( 'admin_init', array( $this, 'register_settings' ) );
|
30 |
add_action( 'admin_action_import_settings', array( $this, 'import_settings' ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
}
|
32 |
|
33 |
/**
|
34 |
* Imports settings
|
35 |
*/
|
36 |
public function import_settings() {
|
37 |
+
$base_admin_link = self::$base_admin_link;
|
|
|
38 |
|
39 |
$redirect['query'] = str_replace(
|
40 |
array(
|
45 |
$redirect['query']
|
46 |
);
|
47 |
|
48 |
+
$redirect = admin_url( "$base_admin_link&subview=export" );
|
49 |
|
50 |
if ( isset( $_POST['zerospam'] ) && wp_verify_nonce( sanitize_text_field( wp_unslash( $_POST['zerospam'] ) ), 'import_settings' ) ) {
|
51 |
$settings_json = sanitize_text_field( wp_unslash( $_POST['settings'] ) ); // @codingStandardsIgnoreLine
|
52 |
if ( ! empty( $settings_json ) ) {
|
53 |
$settings = json_decode( $settings_json, true );
|
54 |
if ( json_last_error() === JSON_ERROR_NONE ) {
|
55 |
+
foreach ( $settings as $module => $module_settings ) {
|
56 |
+
update_option( "zero-spam-$module", $module_settings, true );
|
57 |
+
}
|
58 |
|
59 |
wp_safe_redirect( $redirect . '&zerospam-success=1' );
|
60 |
exit;
|
80 |
* Processes nonce actions
|
81 |
*/
|
82 |
public function process_nonce_actions() {
|
83 |
+
$base_admin_link = self::$base_admin_link;
|
84 |
+
|
85 |
if (
|
86 |
! empty( $_REQUEST['zerospam-action'] ) &&
|
87 |
'autoconfigure' === $_REQUEST['zerospam-action'] &&
|
89 |
) {
|
90 |
\ZeroSpam\Core\Settings::auto_configure();
|
91 |
|
92 |
+
$message = __( 'Zero Spam for WordPress has successfully been auto-configured with the recommended settings.', 'zero-spam' );
|
93 |
+
$redirect_url = "$base_admin_link&subview=settings&zerospam-msg=$message&zerospam-type=success";
|
94 |
|
95 |
wp_safe_redirect( $redirect_url );
|
96 |
exit;
|
101 |
) {
|
102 |
\ZeroSpam\Core\Settings::update_blocked_email_domains();
|
103 |
|
104 |
+
$message = __( 'Zero Spam for WordPress blocked email domains have been successfully updated.', 'zero-spam' );
|
105 |
+
$redirect_url = "$base_admin_link&subview=settings&zerospam-msg=$message&zerospam-type=success";
|
106 |
|
107 |
wp_safe_redirect( $redirect_url );
|
108 |
exit;
|
113 |
) {
|
114 |
self::regenerate_honeypot();
|
115 |
|
116 |
+
$message = __( 'Zero Spam for WordPress honeypot ID has been successfully reset.', 'zero-spam' );
|
117 |
+
$redirect_url = "$base_admin_link&subview=settings&zerospam-msg=$message&zerospam-type=success";
|
118 |
|
119 |
wp_safe_redirect( $redirect_url );
|
120 |
exit;
|
126 |
\ZeroSpam\Core\Settings::update_disallowed_words();
|
127 |
|
128 |
$message = __( 'WordPress\'s disallowed words list has been successfully updated to the recommended.', 'zero-spam' );
|
129 |
+
$redirect_url = 'options-general.php?page=wordpress-zero-spam-settings&tab=settings&zerospam-type=success&zerospam-msg=' . $message;
|
130 |
|
131 |
wp_safe_redirect( $redirect_url );
|
132 |
exit;
|
137 |
) {
|
138 |
\ZeroSpam\Core\Utilities::delete_error_log();
|
139 |
|
140 |
+
$message = __( 'Zero Spam for WordPress error log has been successfully deleted.', 'zero-spam' );
|
141 |
+
$redirect_url = "$base_admin_link&subview=errors&zerospam-type=success&zerospam-msg=$message";
|
142 |
|
143 |
wp_safe_redirect( $redirect_url );
|
144 |
exit;
|
145 |
+
} elseif (
|
146 |
+
! empty( $_REQUEST['zerospam-action'] ) &&
|
147 |
+
'delete-location-block' === $_REQUEST['zerospam-action'] &&
|
148 |
+
check_admin_referer( 'delete-location-block', 'zero-spam' )
|
149 |
+
) {
|
150 |
+
$block_id = sanitize_text_field( $_REQUEST['zerospam-id'] );
|
151 |
+
\ZeroSpam\Includes\DB::delete( 'blocked', 'blocked_id', $block_id );
|
152 |
+
|
153 |
+
$message = __( 'The record has been successfully deleted.', 'zero-spam' );
|
154 |
+
$redirect_url = "index.php?page=wordpress-zero-spam-dashboard&subview=blocked-locations&zerospam-msg=$message&zerospam-type=success";
|
155 |
+
|
156 |
+
wp_safe_redirect( $redirect_url );
|
157 |
+
} elseif (
|
158 |
+
! empty( $_REQUEST['zerospam-action'] ) &&
|
159 |
+
'delete-ip-block' === $_REQUEST['zerospam-action'] &&
|
160 |
+
check_admin_referer( 'delete-ip-block', 'zero-spam' )
|
161 |
+
) {
|
162 |
+
$block_id = sanitize_text_field( $_REQUEST['zerospam-id'] );
|
163 |
+
\ZeroSpam\Includes\DB::delete( 'blocked', 'blocked_id', $block_id );
|
164 |
+
|
165 |
+
$message = __( 'The record has been successfully deleted.', 'zero-spam' );
|
166 |
+
$redirect_url = "index.php?page=wordpress-zero-spam-dashboard&subview=blocked-ips&zerospam-msg=$message&zerospam-type=success";
|
167 |
+
|
168 |
+
wp_safe_redirect( $redirect_url );
|
169 |
}
|
170 |
}
|
171 |
|
191 |
* @param array $input Input array.
|
192 |
*/
|
193 |
public function settings_validation( $input ) {
|
194 |
+
// If the Zero Spam license has been submitted, verify it.
|
195 |
+
if ( ! empty( $input['zerospam_license'] ) ) {
|
196 |
+
$license = \ZeroSpam\Modules\Zero_Spam::get_license( $input['zerospam_license'] );
|
197 |
+
if ( empty( $license['license_key'] ) ) {
|
198 |
+
\ZeroSpam\Core\Utilities::log( 'Zero Spam: invalid license key entered.');
|
199 |
+
$input['zerospam_license'] = __( 'Invalid license entered.', 'zero-spam' );
|
200 |
+
$input['zerospam'] = false;
|
201 |
+
}
|
202 |
+
}
|
203 |
+
|
204 |
+
// Check if the correct version of Gravity Forms is installed.
|
205 |
+
if ( ! empty( $input['verify_gravityforms'] ) && 'enabled' == $input['verify_gravityforms'] ) {
|
206 |
+
$data = get_plugin_data( ABSPATH . 'wp-content/plugins/gravityforms/gravityforms.php' );
|
207 |
+
if ( ! empty( $data['Version'] ) ) {
|
208 |
+
if ( ! version_compare( $data['Version'], '2.7', '>=' ) ) {
|
209 |
+
\ZeroSpam\Core\Utilities::log( 'Gravity Forms: requires at least v2.7');
|
210 |
+
$input['verify_gravityforms'] = false;
|
211 |
+
}
|
212 |
+
}
|
213 |
+
}
|
214 |
+
|
215 |
update_option( 'zerospam_configured', 1 );
|
216 |
|
217 |
return $input;
|
221 |
* Register settings
|
222 |
*/
|
223 |
public function register_settings() {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
224 |
foreach ( \ZeroSpam\Core\Settings::get_sections() as $key => $section ) {
|
225 |
+
register_setting(
|
226 |
+
"zero-spam-$key", // Group
|
227 |
+
"zero-spam-$key", // Name
|
228 |
+
array(
|
229 |
+
'sanitize_callback' => array( $this, 'settings_validation' ),
|
230 |
+
)
|
231 |
+
);
|
232 |
+
|
233 |
add_settings_section(
|
234 |
+
'zero-spam-' . $key,
|
235 |
$section['title'],
|
236 |
array( $this, 'settings_section' ),
|
237 |
+
'zero-spam-' . $key // Page
|
238 |
);
|
239 |
}
|
240 |
|
241 |
foreach ( \ZeroSpam\Core\Settings::get_settings() as $key => $setting ) {
|
242 |
+
$options = array_merge(
|
243 |
+
array(
|
244 |
+
'label_for' => $key,
|
245 |
+
'type' => $setting['type'],
|
246 |
+
),
|
247 |
+
$setting
|
248 |
);
|
249 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
250 |
add_settings_field(
|
251 |
$key,
|
252 |
! empty( $setting['title'] ) ? $setting['title'] : false,
|
253 |
array( $this, 'settings_field' ),
|
254 |
+
'zero-spam-' . $setting['module'], // Page
|
255 |
+
'zero-spam-' . $setting['module'], // Section
|
256 |
$options
|
257 |
);
|
258 |
}
|
272 |
* @param array $args Field arguments.
|
273 |
*/
|
274 |
public function settings_field( $args ) {
|
275 |
+
$setting_name = 'zero-spam-' . $args['module'] .'[' . $args['label_for'] . ']';
|
276 |
+
|
277 |
+
if ( ! empty( $args['desc'] ) ) {
|
278 |
+
echo '<p class="description">' . wp_kses(
|
279 |
+
$args['desc'],
|
280 |
+
array(
|
281 |
+
'a' => array(
|
282 |
+
'target' => array(),
|
283 |
+
'href' => array(),
|
284 |
+
'class' => array(),
|
285 |
+
'rel' => array(),
|
286 |
+
),
|
287 |
+
'strong' => array(),
|
288 |
+
'b' => array(),
|
289 |
+
'code' => array(),
|
290 |
+
)
|
291 |
+
) . '</p>';
|
292 |
+
}
|
293 |
+
|
294 |
+
echo '<div class="zerospam-form-field-container">';
|
295 |
switch ( $args['type'] ) {
|
296 |
case 'html':
|
297 |
echo wp_kses(
|
331 |
?>
|
332 |
<textarea
|
333 |
id="<?php echo esc_attr( $args['label_for'] ); ?>"
|
334 |
+
name="<?php echo esc_attr( $setting_name ); ?>"
|
335 |
rows="5"
|
336 |
<?php if ( ! empty( $args['field_class'] ) ) : ?>
|
337 |
class="<?php echo esc_attr( $args['field_class'] ); ?>"
|
350 |
?>
|
351 |
<input
|
352 |
id="<?php echo esc_attr( $args['label_for'] ); ?>"
|
353 |
+
name="<?php echo esc_attr( $setting_name ); ?>"
|
354 |
type="<?php echo esc_attr( $args['type'] ); ?>"
|
355 |
<?php if ( ! empty( $args['value'] ) ) : ?>
|
356 |
value="<?php echo esc_attr( $args['value'] ); ?>"
|
378 |
return;
|
379 |
}
|
380 |
|
|
|
381 |
if ( ! empty( $args['multiple'] ) ) :
|
382 |
+
$setting_name .= '[]';
|
383 |
endif;
|
384 |
?>
|
385 |
<select
|
386 |
id="<?php echo esc_attr( $args['label_for'] ); ?>"
|
387 |
+
name="<?php echo esc_attr( $setting_name ); ?>"
|
388 |
<?php if ( ! empty( $args['multiple'] ) ) : ?>
|
389 |
multiple
|
390 |
<?php endif; ?>
|
423 |
return;
|
424 |
}
|
425 |
|
426 |
+
echo '<div class="zerospam-form-field-group">';
|
427 |
foreach ( $args['options'] as $key => $label ) {
|
428 |
$selected = false;
|
|
|
429 |
if ( count( $args['options'] ) > 1 && 'checkbox' === $args['type'] ) {
|
430 |
+
$setting_name .= '[' . $key . ']';
|
431 |
}
|
432 |
|
433 |
if ( ! empty( $args['value'] ) && $args['value'] == $key ) {
|
434 |
$selected = true;
|
435 |
}
|
|
|
436 |
?>
|
|
|
437 |
<input
|
438 |
type="<?php echo esc_attr( $args['type'] ); ?>"
|
439 |
id="<?php echo esc_attr( $args['label_for'] . $key ); ?>"
|
440 |
+
name="<?php echo esc_attr( $setting_name ); ?>"
|
441 |
value="<?php echo esc_attr( $key ); ?>"
|
442 |
<?php if ( ! empty( $args['field_class'] ) ) : ?>
|
443 |
class="<?php echo esc_attr( $args['field_class'] ); ?>"
|
446 |
checked="checked"
|
447 |
<?php endif; ?>
|
448 |
/>
|
449 |
+
|
450 |
+
<label for="<?php echo esc_attr( $args['label_for'] . $key ); ?>">
|
451 |
+
<?php
|
452 |
+
echo wp_kses(
|
453 |
+
$label,
|
454 |
+
array(
|
455 |
+
'a' => array(
|
456 |
+
'target' => array(),
|
457 |
+
'href' => array(),
|
458 |
+
'class' => array(),
|
459 |
+
'rel' => array(),
|
460 |
+
),
|
461 |
+
'strong' => array(),
|
462 |
+
'b' => array(),
|
463 |
+
'code' => array(),
|
464 |
+
)
|
465 |
+
);
|
466 |
+
?>
|
467 |
+
</label>
|
468 |
+
<br />
|
469 |
<?php
|
470 |
}
|
471 |
+
echo '</div>';
|
472 |
break;
|
473 |
}
|
474 |
|
489 |
);
|
490 |
}
|
491 |
|
492 |
+
echo '</div>';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
493 |
}
|
494 |
|
495 |
/**
|
500 |
return;
|
501 |
}
|
502 |
|
503 |
+
$base_admin_link = self::$base_admin_link;
|
504 |
+
|
505 |
// @codingStandardsIgnoreLine
|
506 |
+
$subview = ! empty( $_REQUEST['subview'] ) ? sanitize_text_field( $_REQUEST['subview'] ) : 'settings';
|
507 |
+
|
508 |
+
$sections = apply_filters( 'zerospam_setting_sections', [] );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
509 |
?>
|
510 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-header.php'; ?>
|
511 |
<div class="wrap">
|
512 |
+
<div class="zerospam-dashboard">
|
513 |
+
<div class="zerospam-dashboard__col">
|
514 |
+
<ul class="zerospam-dashboard__sections">
|
515 |
+
<li>
|
516 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=settings" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'settings' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
517 |
+
|
518 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-settings.svg" class="zerospam-dashboard__menu-icon" />
|
519 |
+
<?php esc_html_e( 'Settings', 'zero-spam' ); ?>
|
520 |
+
</a>
|
521 |
+
</li>
|
522 |
+
<?php foreach ( $sections as $key => $section ) : ?>
|
523 |
+
<li>
|
524 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=$key" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( $key === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
525 |
+
<?php if ( ! empty( $section['icon'] ) ) : ?>
|
526 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ) . $section['icon']; ?>" class="zerospam-dashboard__menu-icon" />
|
527 |
+
<?php endif; ?>
|
528 |
+
<?php echo $section['title']; ?>
|
529 |
+
</a>
|
530 |
+
</li>
|
531 |
+
<?php endforeach; ?>
|
532 |
+
<li>
|
533 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=export" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'export' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
534 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-export.svg" class="zerospam-dashboard__menu-icon" />
|
535 |
+
<?php esc_html_e( 'Import/Export Settings', 'zero-spam' ); ?>
|
536 |
+
</a>
|
537 |
+
</li>
|
538 |
+
<li>
|
539 |
+
<a href="<?php echo esc_url( admin_url( "$base_admin_link&subview=errors" ) ); ?>" class="zerospam-dashboard__menu-link <?php if ( 'errors' === $subview ) : echo 'zerospam-dashboard__menu-link--active'; endif; ?>">
|
540 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-error.svg" class="zerospam-dashboard__menu-icon" />
|
541 |
+
<?php esc_html_e( 'Error Log', 'zero-spam' ); ?>
|
542 |
+
</a>
|
543 |
+
</li>
|
544 |
+
</ul>
|
545 |
+
</div>
|
546 |
+
<div class="zerospam-dashboard__col">
|
547 |
+
<?php if ( ! empty( $_REQUEST['zerospam-msg'] ) ) : ?>
|
548 |
+
<div class="zerospam-block zerospam-block--notice zerospam-block--<?php echo ! empty( $_REQUEST['zerospam-type'] ) ? esc_attr( $_REQUEST['zerospam-type'] ) : 'default' ?>">
|
549 |
+
<div class="zerospam-block__content">
|
550 |
+
<?php echo sanitize_text_field( wp_unslash( $_REQUEST['zerospam-msg'] ) ); ?>
|
551 |
+
</div>
|
552 |
+
</div>
|
553 |
+
<?php endif; ?>
|
554 |
|
555 |
+
<?php
|
556 |
+
foreach ( $sections as $key => $section ) :
|
557 |
+
if ( $key === $subview && ! empty( $section['supports'] ) ) :
|
558 |
+
?>
|
559 |
+
<div class="zerospam-block">
|
560 |
+
<div class="zerospam-block__content zerospam-block__content--supports">
|
561 |
+
<strong><?php _e( 'Detection Support', 'zero-spam' ); ?>:</strong>
|
562 |
+
<?php
|
563 |
+
foreach ( $section['supports'] as $k => $s ) :
|
564 |
+
switch ( $s ) :
|
565 |
+
case 'honeypot':
|
566 |
+
echo '<img class="zerospam-small-icon" src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-honeypot.svg" alt="' . esc_attr( __( 'Honeypot', 'zero-spam' ) ) . '" />';
|
567 |
+
break;
|
568 |
+
case 'email':
|
569 |
+
echo '<img class="zerospam-small-icon" src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-email.svg" alt="' . esc_attr( __( 'Email', 'zero-spam' ) ) . '" />';
|
570 |
+
break;
|
571 |
+
case 'davidwalsh':
|
572 |
+
echo '<img class="zerospam-small-icon" src="' . plugin_dir_url( ZEROSPAM ) . 'modules/davidwalsh/icon-david-walsh.png" alt="' . esc_attr( __( 'David Walsh', 'zero-spam' ) ) . '" />';
|
573 |
+
break;
|
574 |
+
case 'words':
|
575 |
+
echo '<img class="zerospam-small-icon" src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-words.svg" alt="' . esc_attr( __( 'Disallowed Words', 'zero-spam' ) ) . '" />';
|
576 |
+
break;
|
577 |
+
endswitch;
|
578 |
+
|
579 |
+
endforeach;
|
580 |
+
?>
|
581 |
+
</div>
|
582 |
+
</div>
|
583 |
+
<?php
|
584 |
+
endif;
|
585 |
+
endforeach;
|
586 |
+
?>
|
587 |
+
|
588 |
+
<?php if ( ! in_array( $subview, array( 'export', 'errors' ) ) ) : ?>
|
589 |
+
<?php
|
590 |
+
switch ( $subview ) :
|
591 |
+
case 'zerospam':
|
592 |
+
|
593 |
+
$license_key = \ZeroSpam\Core\Settings::get_settings( 'zerospam_license' );
|
594 |
+
$license_key_enabled = \ZeroSpam\Core\Settings::get_settings( 'zerospam' );
|
595 |
+
if ( ! $license_key || "enabled" !== $license_key_enabled ) :
|
596 |
+
?>
|
597 |
+
<div class="zerospam-block zerospam-block--callout">
|
598 |
+
<div class="zerospam-block__content">
|
599 |
+
<div class="zerospam-block__grid">
|
600 |
+
<div class="zerospam-block__grid-column">
|
601 |
+
<?php echo sprintf(
|
602 |
+
wp_kses(
|
603 |
+
/* translators: %1s: Replaced with the Zero Spam URL, %2$s: Replaced with the DDoD attack wiki URL */
|
604 |
+
__( '<h3>Super-charge your protection with a <a href="%1$s" target="_blank" rel="noopener noreferrer">Zero Spam license</a>!</h3><p>Enable enhanced protection with a Zero Spam API license — one of the largest, most comprehensive, constantly-growing global malicious IP and email databases available. Once enabled, all visitors will be checked against Zero Spam\'s blacklist and can help prevent <a href="%2$s" target="_blank" rel="noopener noreferrer">DDoS attacks</a> & fraudsters looking to test stolen credit card numbers.</p><p>Zero Spam is comprised of a global detection network of over 30,000+ apps and sites that monitor traffic and usage in real-time to detect malicious activity. <a href="%2$s" target="_blank" rel="noopener noreferrer">Subscribe today</a> for enhanced protection.</p>', 'zero-spam' ),
|
605 |
+
array(
|
606 |
+
'h3' => array(),
|
607 |
+
'p' => array(),
|
608 |
+
'a' => array(
|
609 |
+
'href' => array(),
|
610 |
+
'class' => array(),
|
611 |
+
'rel' => array(),
|
612 |
+
),
|
613 |
+
'strong' => array(),
|
614 |
+
)
|
615 |
+
),
|
616 |
+
esc_url( ZEROSPAM_URL . 'subscribe/' ),
|
617 |
+
esc_url( ZEROSPAM_URL . 'subscribe/' )
|
618 |
+
); ?>
|
619 |
+
<p><a href="https://www.zerospam.org/subscribe/" target="_blank" rel="noreferrer noopener" class="button button-primary"><?php _e( 'Get a License', 'zero-spam' ); ?> →</a>
|
620 |
+
<a href="https://www.zerospam.org/" target="_blank" rel="noreferrer noopener" class="button"><?php _e( 'Learn More', 'zero-spam' ); ?> →</a></p>
|
621 |
+
</div>
|
622 |
+
<div class="zerospam-block__grid-column">
|
623 |
+
<ul class="zerospam-list zerospam-list--checks">
|
624 |
+
<li><?php _e( 'Real-time malicious IP monitoring', 'zero-spam' ); ?></li>
|
625 |
+
<li><?php _e( 'Block reported spammy email addresses', 'zero-spam' ); ?></li>
|
626 |
+
<li><?php _e( 'Helps prevent DDoS attacks', 'zero-spam' ); ?></li>
|
627 |
+
<li><?php _e( 'Detailed IP & email address reports', 'zero-spam' ); ?></li>
|
628 |
+
<li><?php _e( 'Helps prevents stolen credit card testing', 'zero-spam' ); ?></li>
|
629 |
+
</ul>
|
630 |
+
</div>
|
631 |
+
</div>
|
632 |
+
</div>
|
633 |
+
</div>
|
634 |
+
<?php
|
635 |
+
endif;
|
636 |
+
break;
|
637 |
+
endswitch;
|
638 |
+
?>
|
639 |
|
640 |
+
<form action="options.php" method="post" class="zerospam-form">
|
641 |
+
<?php
|
642 |
+
// Output security fields for the registered setting "zero-spam".
|
643 |
+
settings_fields( "zero-spam-$subview" );
|
|
|
644 |
|
645 |
+
// Output setting sections and their fields.
|
646 |
+
do_settings_sections( "zero-spam-$subview" );
|
647 |
+
|
648 |
+
// Output save settings button.
|
649 |
+
submit_button( 'Save Settings →' );
|
650 |
+
?>
|
651 |
+
</form>
|
652 |
+
<?php elseif( $subview === 'export' ) : ?>
|
653 |
+
<?php if ( ! empty( $_GET['zerospam-error'] ) ) : ?>
|
654 |
+
<div class="notice notice-error is-dismissible">
|
655 |
+
<p><strong>
|
656 |
+
<?php
|
657 |
+
switch( intval( $_GET['zerospam-error'] ) ) :
|
658 |
+
case 1:
|
659 |
+
esc_html_e( 'There was a problem importing the settings JSON. Please try again.', 'zero-spam' );
|
660 |
+
break;
|
661 |
+
endswitch;
|
662 |
+
?>
|
663 |
+
</strong></p>
|
664 |
+
<button type="button" class="notice-dismiss"><span class="screen-reader-text"><?php esc_html_e( 'Dismiss this notice.', 'zero-spam' ); ?></span></button>
|
665 |
+
</div>
|
666 |
+
<?php elseif ( ! empty( $_GET['zerospam-success'] ) ) : ?>
|
667 |
+
<div class="notice notice-success is-dismissible">
|
668 |
+
<p><strong><?php esc_html_e( 'The settings JSON has been successfully imported.', 'zero-spam' ); ?></strong></p>
|
669 |
+
<button type="button" class="notice-dismiss"><span class="screen-reader-text"><?php esc_html_e( 'Dismiss this notice.', 'zero-spam' ); ?>.</span></button>
|
670 |
+
</div>
|
671 |
+
<?php endif; ?>
|
672 |
+
|
673 |
+
<div class="zerospam-form">
|
674 |
+
<h2><?php esc_html_e( 'Settings Import/Export', 'zero-spam' ); ?></h2>
|
675 |
+
<?php
|
676 |
+
$modules = \ZeroSpam\Core\Settings::get_settings_by_module();
|
677 |
+
foreach ( $modules as $module => $settings ) :
|
678 |
+
foreach ( $settings as $setting_key => $setting ) :
|
679 |
+
$modules[ $module ][ $setting_key ] = ! empty( $setting['value'] ) ? $setting['value'] : false;
|
680 |
+
endforeach;
|
681 |
+
endforeach;
|
682 |
+
?>
|
683 |
+
<div class="zerospam-export-import-block">
|
684 |
+
<div class="zerospam-export-import-block-column">
|
685 |
+
<h4><?php esc_html_e( 'Export Settings', 'zero-spam' ); ?></h4>
|
686 |
+
<textarea readonly class="large-text code" rows="25"><?php echo wp_json_encode( $modules ); ?></textarea>
|
687 |
+
</div>
|
688 |
+
<div class="zerospam-export-import-block-column">
|
689 |
+
<h4><?php esc_html_e( 'Import Settings', 'zero-spam' ); ?></h4>
|
690 |
+
<form method="post" action="<?php echo esc_url( admin_url( 'admin.php' ) ); ?>" class="zerospam-import-settings-form">
|
691 |
+
<?php wp_nonce_field( 'import_settings', 'zerospam' ); ?>
|
692 |
+
<input type="hidden" name="action" value="import_settings" />
|
693 |
+
<textarea class="large-text code" name="settings" rows="25"></textarea>
|
694 |
+
<input type="submit" class="button button-primary" value="<?php esc_html_e( 'Import Settings →', 'zero-spam' ); ?>" />
|
695 |
+
</form>
|
696 |
+
</div>
|
697 |
+
</div>
|
698 |
+
</div>
|
699 |
+
<?php
|
700 |
+
elseif( $subview === 'errors' ) :
|
701 |
+
$log = \ZeroSpam\Core\Utilities::get_error_log();
|
702 |
+
if ( ! $log ) :
|
703 |
+
?>
|
704 |
+
<div class="zerospam-block">
|
705 |
+
<div class="zerospam-block__content">
|
706 |
+
<?php _e( 'No errors have been reported.', 'zero-spam' ); ?>
|
707 |
+
</div>
|
708 |
+
</div>
|
709 |
+
<?php
|
710 |
+
else:
|
711 |
+
?>
|
712 |
+
<div class="zerospam-form">
|
713 |
+
<textarea readonly class="large-text code" rows="30"><?php echo esc_html( $log ); ?></textarea>
|
714 |
+
<a
|
715 |
+
href="<?php echo esc_url( wp_nonce_url( admin_url( "$base_admin_link&zerospam-action=delete-error-log" ), 'delete-error-log', 'zero-spam' ) ); ?>"
|
716 |
+
class="button button-primary"
|
717 |
+
>
|
718 |
+
<?php esc_html_e( 'Clear Error Log →', 'zero-spam' ); ?>
|
719 |
+
</a>
|
720 |
+
</div>
|
721 |
+
<?php endif; ?>
|
722 |
+
|
723 |
+
<?php endif; ?>
|
724 |
+
</div>
|
725 |
+
</div>
|
726 |
</div>
|
727 |
<?php
|
728 |
}
|
core/admin/tables/class-blockedlocations.php
CHANGED
@@ -25,8 +25,8 @@ class BlockedLocations extends WP_List_Table {
|
|
25 |
global $status, $page;
|
26 |
|
27 |
$args = array(
|
28 |
-
'singular' => __( '
|
29 |
-
'plural' => __( '
|
30 |
);
|
31 |
parent::__construct( $args );
|
32 |
}
|
@@ -51,7 +51,7 @@ class BlockedLocations extends WP_List_Table {
|
|
51 |
return 'N/A';
|
52 |
}
|
53 |
|
54 |
-
$date_time_format =
|
55 |
return get_date_from_gmt( gmdate( 'Y-m-d H:i:s', strtotime( $item[ $column_name ] ) ), $date_time_format );
|
56 |
break;
|
57 |
case 'location':
|
@@ -77,9 +77,18 @@ class BlockedLocations extends WP_List_Table {
|
|
77 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['start_block'] ) ) ); ?>"
|
78 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['end_block'] ) ) ); ?>"
|
79 |
data-type="<?php echo esc_attr( $item['blocked_type'] ); ?>"
|
|
|
80 |
>
|
81 |
-
<?php
|
82 |
</button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
83 |
<?php
|
84 |
return ob_get_clean();
|
85 |
break;
|
25 |
global $status, $page;
|
26 |
|
27 |
$args = array(
|
28 |
+
'singular' => __( 'Zero Spam for WordPress Blocked Location', 'zero-spam' ),
|
29 |
+
'plural' => __( 'Zero Spam for WordPress Blocked Locations', 'zero-spam' ),
|
30 |
);
|
31 |
parent::__construct( $args );
|
32 |
}
|
51 |
return 'N/A';
|
52 |
}
|
53 |
|
54 |
+
$date_time_format = 'm/d/Y';
|
55 |
return get_date_from_gmt( gmdate( 'Y-m-d H:i:s', strtotime( $item[ $column_name ] ) ), $date_time_format );
|
56 |
break;
|
57 |
case 'location':
|
77 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['start_block'] ) ) ); ?>"
|
78 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['end_block'] ) ) ); ?>"
|
79 |
data-type="<?php echo esc_attr( $item['blocked_type'] ); ?>"
|
80 |
+
aria-label="<?php echo esc_attr( __( 'Update Block', 'zero-spam' ) ); ?>"
|
81 |
>
|
82 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-edit.svg" width="13" />
|
83 |
</button>
|
84 |
+
|
85 |
+
<a
|
86 |
+
class="button"
|
87 |
+
aria-label="<?php echo esc_attr( __( 'Delete block', 'zero-spam' ) ); ?>"
|
88 |
+
href="<?php echo wp_nonce_url( admin_url( 'index.php?page=wordpress-zero-spam-dashboard&zerospam-action=delete-location-block&zerospam-id=' . $item['blocked_id'] ), 'delete-location-block', 'zero-spam' ) ?>"
|
89 |
+
>
|
90 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-trash.svg" width="13" />
|
91 |
+
</a>
|
92 |
<?php
|
93 |
return ob_get_clean();
|
94 |
break;
|
core/admin/tables/class-blockedtable.php
CHANGED
@@ -15,23 +15,20 @@ defined( 'ABSPATH' ) || die();
|
|
15 |
|
16 |
/**
|
17 |
* Log table.
|
18 |
-
*
|
19 |
-
* @since 5.0.0
|
20 |
*/
|
21 |
class BlockedTable extends WP_List_Table {
|
22 |
|
23 |
/**
|
24 |
* Log table constructor.
|
25 |
*
|
26 |
-
* @since 5.0.0
|
27 |
* @access public
|
28 |
*/
|
29 |
public function __construct() {
|
30 |
global $status, $page;
|
31 |
|
32 |
$args = array(
|
33 |
-
'singular' => __( '
|
34 |
-
'plural' => __( '
|
35 |
);
|
36 |
parent::__construct( $args );
|
37 |
}
|
@@ -61,7 +58,7 @@ class BlockedTable extends WP_List_Table {
|
|
61 |
if ( empty( $item[ $column_name ] ) || '0000-00-00 00:00:00' === $item[ $column_name ] ) {
|
62 |
return 'N/A';
|
63 |
} else {
|
64 |
-
$date_time_format =
|
65 |
return get_date_from_gmt( gmdate( 'Y-m-d H:i:s', strtotime( $item[ $column_name ] ) ), $date_time_format );
|
66 |
}
|
67 |
break;
|
@@ -75,9 +72,18 @@ class BlockedTable extends WP_List_Table {
|
|
75 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['start_block'] ) ) ); ?>"
|
76 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['end_block'] ) ) ); ?>"
|
77 |
data-type="<?php echo esc_attr( $item['blocked_type'] ); ?>"
|
|
|
78 |
>
|
79 |
-
<?php
|
80 |
</button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
<?php
|
82 |
return ob_get_clean();
|
83 |
break;
|
@@ -230,7 +236,7 @@ class BlockedTable extends WP_List_Table {
|
|
230 |
submit_button( __( 'Filter', 'zero-spam' ), '', 'filter_action', false );
|
231 |
*/
|
232 |
?>
|
233 |
-
<button class="button zerospam-block-trigger"><?php echo __( 'Add Blocked IP Address', 'zero-spam' ); ?></button>
|
234 |
<?php
|
235 |
$settings = \ZeroSpam\Core\Settings::get_settings( 'block_method' );
|
236 |
|
15 |
|
16 |
/**
|
17 |
* Log table.
|
|
|
|
|
18 |
*/
|
19 |
class BlockedTable extends WP_List_Table {
|
20 |
|
21 |
/**
|
22 |
* Log table constructor.
|
23 |
*
|
|
|
24 |
* @access public
|
25 |
*/
|
26 |
public function __construct() {
|
27 |
global $status, $page;
|
28 |
|
29 |
$args = array(
|
30 |
+
'singular' => __( 'Zero Spam for WordPress Blocked IP', 'zero-spam' ),
|
31 |
+
'plural' => __( 'Zero Spam for WordPress Blocked IPs', 'zero-spam' ),
|
32 |
);
|
33 |
parent::__construct( $args );
|
34 |
}
|
58 |
if ( empty( $item[ $column_name ] ) || '0000-00-00 00:00:00' === $item[ $column_name ] ) {
|
59 |
return 'N/A';
|
60 |
} else {
|
61 |
+
$date_time_format = 'm/d/Y';
|
62 |
return get_date_from_gmt( gmdate( 'Y-m-d H:i:s', strtotime( $item[ $column_name ] ) ), $date_time_format );
|
63 |
}
|
64 |
break;
|
72 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['start_block'] ) ) ); ?>"
|
73 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $item['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $item['end_block'] ) ) ); ?>"
|
74 |
data-type="<?php echo esc_attr( $item['blocked_type'] ); ?>"
|
75 |
+
aria-label="<?php echo esc_attr( __( 'Update Block', 'zero-spam' ) ); ?>"
|
76 |
>
|
77 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-edit.svg" width="13" />
|
78 |
</button>
|
79 |
+
|
80 |
+
<a
|
81 |
+
class="button"
|
82 |
+
aria-label="<?php echo esc_attr( __( 'Delete block', 'zero-spam' ) ); ?>"
|
83 |
+
href="<?php echo wp_nonce_url( admin_url( 'index.php?page=wordpress-zero-spam-dashboard&zerospam-action=delete-ip-block&zerospam-id=' . $item['blocked_id'] ), 'delete-ip-block', 'zero-spam' ) ?>"
|
84 |
+
>
|
85 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-trash.svg" width="13" />
|
86 |
+
</a>
|
87 |
<?php
|
88 |
return ob_get_clean();
|
89 |
break;
|
236 |
submit_button( __( 'Filter', 'zero-spam' ), '', 'filter_action', false );
|
237 |
*/
|
238 |
?>
|
239 |
+
<button class="button zerospam-block-trigger"><?php echo __( 'Add Blocked IP Address →', 'zero-spam' ); ?></button>
|
240 |
<?php
|
241 |
$settings = \ZeroSpam\Core\Settings::get_settings( 'block_method' );
|
242 |
|
core/admin/tables/class-logtable.php
CHANGED
@@ -25,8 +25,8 @@ class LogTable extends WP_List_Table {
|
|
25 |
global $status, $page;
|
26 |
|
27 |
$args = array(
|
28 |
-
'singular' => __( '
|
29 |
-
'plural' => __( '
|
30 |
);
|
31 |
parent::__construct( $args );
|
32 |
}
|
@@ -59,16 +59,23 @@ class LogTable extends WP_List_Table {
|
|
59 |
return '<a href="' . ZEROSPAM_URL . 'ip-lookup/' . urlencode( $item[ $column_name ] ) .'" target="_blank" rel="noopener noreferrer">' . $item[ $column_name ] . '</a>';
|
60 |
break;
|
61 |
case 'date_recorded':
|
62 |
-
$date_time_format =
|
63 |
return get_date_from_gmt( gmdate( 'Y-m-d H:i:s', strtotime( $item[ $column_name ] ) ), $date_time_format );
|
64 |
break;
|
65 |
case 'actions':
|
66 |
ob_start();
|
67 |
?>
|
68 |
-
<button class="button zerospam-details-trigger" data-id="<?php echo esc_attr( $item['log_id'] ); ?>"
|
69 |
<div class="zerospam-modal" id="zerospam-details-<?php echo esc_attr( $item['log_id'] ); ?>">
|
70 |
<button class="zerospam-close-modal" aria-label="<?php echo esc_attr( __( 'Close Modal', 'zero-spam' ) ); ?>"></button>
|
71 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
</div>
|
73 |
<?php
|
74 |
$blocked = ZeroSpam\Includes\DB::blocked( $item['user_ip'] );
|
@@ -81,13 +88,14 @@ class LogTable extends WP_List_Table {
|
|
81 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['start_block'] ) ) ); ?>"
|
82 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['end_block'] ) ) ); ?>"
|
83 |
data-type="<?php echo esc_attr( $blocked['blocked_type'] ); ?>"
|
|
|
84 |
>
|
85 |
-
<?php
|
86 |
</button>
|
87 |
<?php
|
88 |
else :
|
89 |
?>
|
90 |
-
<button class="button zerospam-block-trigger" data-ip="<?php echo esc_attr( $item['user_ip'] ); ?>"
|
91 |
<?php
|
92 |
endif;
|
93 |
|
25 |
global $status, $page;
|
26 |
|
27 |
$args = array(
|
28 |
+
'singular' => __( 'Zero Spam for WordPress Log', 'zero-spam' ),
|
29 |
+
'plural' => __( 'Zero Spam for WordPress Logs', 'zero-spam' ),
|
30 |
);
|
31 |
parent::__construct( $args );
|
32 |
}
|
59 |
return '<a href="' . ZEROSPAM_URL . 'ip-lookup/' . urlencode( $item[ $column_name ] ) .'" target="_blank" rel="noopener noreferrer">' . $item[ $column_name ] . '</a>';
|
60 |
break;
|
61 |
case 'date_recorded':
|
62 |
+
$date_time_format = 'm/d/Y g:ia';
|
63 |
return get_date_from_gmt( gmdate( 'Y-m-d H:i:s', strtotime( $item[ $column_name ] ) ), $date_time_format );
|
64 |
break;
|
65 |
case 'actions':
|
66 |
ob_start();
|
67 |
?>
|
68 |
+
<button class="button zerospam-details-trigger" data-id="<?php echo esc_attr( $item['log_id'] ); ?>" aria-label="<?php esc_html_e( 'Details', 'zero-spam' ); ?>"><img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-info.svg" width="13" /></button>
|
69 |
<div class="zerospam-modal" id="zerospam-details-<?php echo esc_attr( $item['log_id'] ); ?>">
|
70 |
<button class="zerospam-close-modal" aria-label="<?php echo esc_attr( __( 'Close Modal', 'zero-spam' ) ); ?>"></button>
|
71 |
+
|
72 |
+
<div class="zerospam-block zerospam-block--list">
|
73 |
+
<h3 class="zerospam-block__headline"><?php esc_html_e( 'Detection ID #', 'zero-spam' ); ?><?php echo esc_attr( $item['log_id'] ); ?></h3>
|
74 |
+
<div class="zerospam-block__content">
|
75 |
+
<?php require ZEROSPAM_PATH . 'includes/templates/admin-modal-details.php'; ?>
|
76 |
+
</div>
|
77 |
+
</div>
|
78 |
+
|
79 |
</div>
|
80 |
<?php
|
81 |
$blocked = ZeroSpam\Includes\DB::blocked( $item['user_ip'] );
|
88 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['start_block'] ) ) ); ?>"
|
89 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['end_block'] ) ) ); ?>"
|
90 |
data-type="<?php echo esc_attr( $blocked['blocked_type'] ); ?>"
|
91 |
+
aria-label="<?php esc_html_e( 'Update Block', 'zero-spam' ); ?>"
|
92 |
>
|
93 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-edit.svg" width="13" />
|
94 |
</button>
|
95 |
<?php
|
96 |
else :
|
97 |
?>
|
98 |
+
<button class="button zerospam-block-trigger" data-ip="<?php echo esc_attr( $item['user_ip'] ); ?>" aria-label="<?php esc_html_e( 'Block IP', 'zero-spam' ); ?>"><img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-blocked.svg" width="13" /></button>
|
99 |
<?php
|
100 |
endif;
|
101 |
|
core/class-access.php
CHANGED
@@ -35,11 +35,16 @@ class Access {
|
|
35 |
}
|
36 |
|
37 |
/**
|
38 |
-
*
|
39 |
*
|
40 |
* @param boolean $ignore_ajax True if AJAX shouldn't be checked.
|
41 |
*/
|
42 |
public static function process( $ignore_ajax = false ) {
|
|
|
|
|
|
|
|
|
|
|
43 |
if ( $ignore_ajax && is_admin() || is_user_logged_in() ) {
|
44 |
return false;
|
45 |
} elseif ( ! $ignore_ajax && ( is_admin() && ! wp_doing_ajax() ) || is_user_logged_in() ) {
|
@@ -163,9 +168,7 @@ class Access {
|
|
163 |
* @param array $settings The plugin settings.
|
164 |
*/
|
165 |
public function check_blocked( $access_checks, $user_ip, $settings ) {
|
166 |
-
$access_checks['blocked'] =
|
167 |
-
'blocked' => false,
|
168 |
-
);
|
169 |
|
170 |
// Check if geolocation information is available, if so, check if blocked.
|
171 |
$geolocation_information = \ZeroSpam\Core\Utilities::geolocation( $user_ip );
|
35 |
}
|
36 |
|
37 |
/**
|
38 |
+
* Determines is security checks need to be triggers.
|
39 |
*
|
40 |
* @param boolean $ignore_ajax True if AJAX shouldn't be checked.
|
41 |
*/
|
42 |
public static function process( $ignore_ajax = false ) {
|
43 |
+
// Fix for .favicon requests.
|
44 |
+
if ( strpos( $_SERVER['REQUEST_URI'], '.ico' ) !== false ) {
|
45 |
+
return false;
|
46 |
+
}
|
47 |
+
|
48 |
if ( $ignore_ajax && is_admin() || is_user_logged_in() ) {
|
49 |
return false;
|
50 |
} elseif ( ! $ignore_ajax && ( is_admin() && ! wp_doing_ajax() ) || is_user_logged_in() ) {
|
168 |
* @param array $settings The plugin settings.
|
169 |
*/
|
170 |
public function check_blocked( $access_checks, $user_ip, $settings ) {
|
171 |
+
$access_checks['blocked'] = false;
|
|
|
|
|
172 |
|
173 |
// Check if geolocation information is available, if so, check if blocked.
|
174 |
$geolocation_information = \ZeroSpam\Core\Utilities::geolocation( $user_ip );
|
core/class-settings.php
CHANGED
@@ -33,10 +33,16 @@ class Settings {
|
|
33 |
* Returns the plugin setting sections
|
34 |
*/
|
35 |
public static function get_sections() {
|
|
|
36 |
self::$sections['general'] = array(
|
37 |
'title' => __( 'General Settings', 'zero-spam' ),
|
38 |
);
|
39 |
|
|
|
|
|
|
|
|
|
|
|
40 |
return apply_filters( 'zerospam_setting_sections', self::$sections );
|
41 |
}
|
42 |
|
@@ -60,11 +66,11 @@ class Settings {
|
|
60 |
* Updates blocked email domains with recommended settings.
|
61 |
*/
|
62 |
public static function update_blocked_email_domains() {
|
63 |
-
$
|
64 |
$recommended_blocked_email_domains = \ZeroSpam\Core\Utilities::blocked_email_domains();
|
65 |
|
66 |
$new_settings = array();
|
67 |
-
foreach ( $settings as $key => $setting ) {
|
68 |
if ( 'blocked_email_domains' === $key ) {
|
69 |
$new_settings[ $key ] = implode( "\n", $recommended_blocked_email_domains );
|
70 |
} else {
|
@@ -73,7 +79,7 @@ class Settings {
|
|
73 |
}
|
74 |
|
75 |
if ( $new_settings ) {
|
76 |
-
update_option( '
|
77 |
}
|
78 |
}
|
79 |
|
@@ -82,19 +88,41 @@ class Settings {
|
|
82 |
*/
|
83 |
public static function auto_configure() {
|
84 |
$settings = self::get_settings();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
|
86 |
-
$recommended_settings = array();
|
87 |
foreach ( $settings as $key => $setting ) {
|
88 |
-
|
89 |
-
|
90 |
-
|
|
|
|
|
|
|
91 |
}
|
92 |
}
|
93 |
|
94 |
-
|
95 |
-
update_option( 'wpzerospam', $recommended_settings );
|
96 |
-
update_option( 'zerospam_configured', 1 );
|
97 |
-
}
|
98 |
}
|
99 |
|
100 |
/**
|
@@ -103,18 +131,27 @@ class Settings {
|
|
103 |
* @param string $key Setting key to retrieve.
|
104 |
*/
|
105 |
public static function get_settings( $key = false ) {
|
106 |
-
$options = get_option( '
|
107 |
|
108 |
self::$settings['use_recommended_settings'] = array(
|
109 |
'title' => __( 'Use Recommended Settings', 'zero-spam' ),
|
110 |
'desc' => sprintf(
|
111 |
wp_kses(
|
112 |
-
|
|
|
113 |
array(
|
|
|
114 |
'strong' => array(),
|
|
|
|
|
|
|
|
|
|
|
115 |
)
|
116 |
-
)
|
|
|
117 |
),
|
|
|
118 |
'section' => 'general',
|
119 |
'type' => 'html',
|
120 |
'html' => sprintf(
|
@@ -134,24 +171,27 @@ class Settings {
|
|
134 |
|
135 |
self::$settings['share_data'] = array(
|
136 |
'title' => __( 'Usage Data Sharing', 'zero-spam' ),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
137 |
'section' => 'general',
|
138 |
'type' => 'checkbox',
|
139 |
'options' => array(
|
140 |
-
'enabled' =>
|
141 |
-
wp_kses(
|
142 |
-
/* translators: %s: url */
|
143 |
-
__( 'Join <a href="%1$s" target="_blank" rel="noreferrer noopener">Zero Spam\'s global community</a> & report detections by opting in to share non-sensitive data. <a href="%2$s" target="_blank" rel="noreferrer noopener">Learn more</a>.', 'zero-spam' ),
|
144 |
-
array(
|
145 |
-
'a' => array(
|
146 |
-
'target' => array(),
|
147 |
-
'href' => array(),
|
148 |
-
'rel' => array(),
|
149 |
-
),
|
150 |
-
)
|
151 |
-
),
|
152 |
-
esc_url( ZEROSPAM_URL . '?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=data_sharing' ),
|
153 |
-
esc_url( 'https://github.com/bmarshall511/wordpress-zero-spam/wiki/FAQ#what-data-is-shared-when-usage-data-sharing-is-enabled' )
|
154 |
-
),
|
155 |
),
|
156 |
'value' => ! empty( $options['share_data'] ) ? $options['share_data'] : false,
|
157 |
'recommended' => 'enabled',
|
@@ -168,6 +208,7 @@ class Settings {
|
|
168 |
self::$settings['widget_visibility'] = array(
|
169 |
'title' => __( 'Dashboard Widget Visibility', 'zero-spam' ),
|
170 |
'section' => 'general',
|
|
|
171 |
'type' => 'select',
|
172 |
'desc' => __( 'Select which user roles have access to the admin dashboard widget. You may control-click (Windows) or command-click (Mac) to select more than one.', 'zero-spam' ),
|
173 |
'options' => $roles_array,
|
@@ -180,6 +221,7 @@ class Settings {
|
|
180 |
'title' => __( 'IP Block Handler', 'zero-spam' ),
|
181 |
'desc' => __( 'Determines how blocked IPs are handled when they attempt to access the site.', 'zero-spam' ),
|
182 |
'section' => 'general',
|
|
|
183 |
'type' => 'radio',
|
184 |
'options' => array(
|
185 |
'redirect' => __( 'Redirect user', 'zero-spam' ),
|
@@ -222,6 +264,7 @@ class Settings {
|
|
222 |
esc_url( 'https://www.highfivery.com/?utm_source=' . get_bloginfo( 'url' ) . '&utm_medium=zerospam_plugin_htaccess&utm_campaign=zerospam_plugin' )
|
223 |
),
|
224 |
'section' => 'general',
|
|
|
225 |
'type' => 'radio',
|
226 |
'options' => array(
|
227 |
'htaccess_legacy' => __( '.htaccess (Apache servers < 2.4)', 'zero-spam' ),
|
@@ -238,6 +281,7 @@ class Settings {
|
|
238 |
'title' => __( 'Blocked Message', 'zero-spam' ),
|
239 |
'desc' => __( 'The message displayed to blocked users when \'Display a 403 Forbidden error\' is selected.', 'zero-spam' ),
|
240 |
'section' => 'general',
|
|
|
241 |
'type' => 'text',
|
242 |
'field_class' => 'large-text',
|
243 |
'placeholder' => $message,
|
@@ -249,6 +293,7 @@ class Settings {
|
|
249 |
'title' => __( 'Blocked Users Redirect', 'zero-spam' ),
|
250 |
'desc' => __( 'The URL blocked users are redirected to when \'Redirect user\' is selected.', 'zero-spam' ),
|
251 |
'section' => 'general',
|
|
|
252 |
'type' => 'url',
|
253 |
'field_class' => 'regular-text',
|
254 |
'placeholder' => 'https://wordpress.org/plugins/zero-spam/',
|
@@ -259,10 +304,11 @@ class Settings {
|
|
259 |
self::$settings['log_blocked_ips'] = array(
|
260 |
'title' => __( 'Log Blocked IPs', 'zero-spam' ),
|
261 |
'section' => 'general',
|
|
|
262 |
'type' => 'checkbox',
|
263 |
-
'desc' => __( '
|
264 |
'options' => array(
|
265 |
-
'enabled' =>
|
266 |
),
|
267 |
'value' => ! empty( $options['log_blocked_ips'] ) ? $options['log_blocked_ips'] : false,
|
268 |
'recommended' => 'enabled',
|
@@ -272,6 +318,7 @@ class Settings {
|
|
272 |
'title' => __( 'Maximum Log Entries', 'zero-spam' ),
|
273 |
'desc' => __( 'The maximum number of log entries when logging is enabled. When the maximum is reached, the oldest entries will be deleted.', 'zero-spam' ),
|
274 |
'section' => 'general',
|
|
|
275 |
'type' => 'number',
|
276 |
'field_class' => 'small-text',
|
277 |
'placeholder' => 10000,
|
@@ -283,6 +330,7 @@ class Settings {
|
|
283 |
'title' => __( 'IP Whitelist', 'zero-spam' ),
|
284 |
'desc' => __( 'Enter IPs that should be whitelisted (IPs that should never be blocked), one per line.', 'zero-spam' ),
|
285 |
'section' => 'general',
|
|
|
286 |
'type' => 'textarea',
|
287 |
'field_class' => 'regular-text code',
|
288 |
'placeholder' => '',
|
@@ -293,6 +341,7 @@ class Settings {
|
|
293 |
'title' => __( 'Blocked Email Domains', 'zero-spam' ),
|
294 |
'desc' => __( 'Enter a list of email domains that should be blocked, one per line.', 'zero-spam' ),
|
295 |
'section' => 'general',
|
|
|
296 |
'type' => 'textarea',
|
297 |
'field_class' => 'regular-text code',
|
298 |
'placeholder' => '',
|
@@ -310,6 +359,7 @@ class Settings {
|
|
310 |
)
|
311 |
),
|
312 |
'section' => 'general',
|
|
|
313 |
'type' => 'html',
|
314 |
'html' => sprintf(
|
315 |
wp_kses(
|
@@ -339,6 +389,7 @@ class Settings {
|
|
339 |
\ZeroSpam\Core\Utilities::get_honeypot()
|
340 |
),
|
341 |
'section' => 'general',
|
|
|
342 |
'type' => 'html',
|
343 |
'html' => sprintf(
|
344 |
wp_kses(
|
@@ -359,6 +410,7 @@ class Settings {
|
|
359 |
'title' => __( 'Override & Update Core Disallowed Words', 'zero-spam' ),
|
360 |
'desc' => __( 'Update WP core\'s disallowed words option with <a href="https://github.com/splorp/wordpress-comment-blacklist/" target="_blank" rel="noreferrer noopener">splorp\'s Comment Blacklist for WordPress</a>. <strong>WARNING:</strong> This will override any existing words.', 'zero-spam' ),
|
361 |
'section' => 'general',
|
|
|
362 |
'type' => 'html',
|
363 |
'html' => sprintf(
|
364 |
wp_kses(
|
@@ -375,7 +427,7 @@ class Settings {
|
|
375 |
),
|
376 |
);
|
377 |
|
378 |
-
$settings = apply_filters( 'zerospam_settings', self::$settings
|
379 |
|
380 |
if ( $key ) {
|
381 |
if ( ! empty( $settings[ $key ]['value'] ) ) {
|
33 |
* Returns the plugin setting sections
|
34 |
*/
|
35 |
public static function get_sections() {
|
36 |
+
// DEPRECATED
|
37 |
self::$sections['general'] = array(
|
38 |
'title' => __( 'General Settings', 'zero-spam' ),
|
39 |
);
|
40 |
|
41 |
+
// v5.4
|
42 |
+
self::$sections['settings'] = array(
|
43 |
+
'title' => __( 'Settings', 'zero-spam' ),
|
44 |
+
);
|
45 |
+
|
46 |
return apply_filters( 'zerospam_setting_sections', self::$sections );
|
47 |
}
|
48 |
|
66 |
* Updates blocked email domains with recommended settings.
|
67 |
*/
|
68 |
public static function update_blocked_email_domains() {
|
69 |
+
$modules = self::get_settings_by_module();
|
70 |
$recommended_blocked_email_domains = \ZeroSpam\Core\Utilities::blocked_email_domains();
|
71 |
|
72 |
$new_settings = array();
|
73 |
+
foreach ( $modules['settings'] as $key => $setting ) {
|
74 |
if ( 'blocked_email_domains' === $key ) {
|
75 |
$new_settings[ $key ] = implode( "\n", $recommended_blocked_email_domains );
|
76 |
} else {
|
79 |
}
|
80 |
|
81 |
if ( $new_settings ) {
|
82 |
+
update_option( 'zero-spam-settings', $new_settings );
|
83 |
}
|
84 |
}
|
85 |
|
88 |
*/
|
89 |
public static function auto_configure() {
|
90 |
$settings = self::get_settings();
|
91 |
+
$modules = self::get_settings_by_module();
|
92 |
+
|
93 |
+
foreach ( $modules as $module => $setting ) {
|
94 |
+
$recommended_settings = array();
|
95 |
+
foreach ( $setting as $key => $args ) {
|
96 |
+
$recommended_settings[ $key ] = isset( $args['value'] ) ? $args['value'] : false;
|
97 |
+
if ( isset( $args['recommended'] ) ) {
|
98 |
+
$recommended_settings[ $key ] = $args['recommended'];
|
99 |
+
}
|
100 |
+
}
|
101 |
+
|
102 |
+
update_option( "zero-spam-$module", $recommended_settings );
|
103 |
+
}
|
104 |
+
|
105 |
+
update_option( 'zerospam_configured', 1 );
|
106 |
+
}
|
107 |
+
|
108 |
+
/**
|
109 |
+
* Returns settings by modules.
|
110 |
+
*/
|
111 |
+
public static function get_settings_by_module() {
|
112 |
+
$settings = self::get_settings();
|
113 |
+
$modules = array();
|
114 |
|
|
|
115 |
foreach ( $settings as $key => $setting ) {
|
116 |
+
if ( ! array_key_exists( $setting['module'], $modules ) ) {
|
117 |
+
$modules[ $setting['module'] ] = array(
|
118 |
+
$key => $setting
|
119 |
+
);
|
120 |
+
} else {
|
121 |
+
$modules[ $setting['module'] ][ $key ] = $setting;
|
122 |
}
|
123 |
}
|
124 |
|
125 |
+
return $modules;
|
|
|
|
|
|
|
126 |
}
|
127 |
|
128 |
/**
|
131 |
* @param string $key Setting key to retrieve.
|
132 |
*/
|
133 |
public static function get_settings( $key = false ) {
|
134 |
+
$options = get_option( 'zero-spam-settings' );
|
135 |
|
136 |
self::$settings['use_recommended_settings'] = array(
|
137 |
'title' => __( 'Use Recommended Settings', 'zero-spam' ),
|
138 |
'desc' => sprintf(
|
139 |
wp_kses(
|
140 |
+
/* translators: %s: url */
|
141 |
+
__( 'Get maximum protection fast with our one-click configuration setup. Please enter any <a href="%1$s" target="_blank" rel="noreferrer noopener">supported plugins</a> are installed & activated first. <strong>Performing this action will override all existing settings.', 'zero-spam' ),
|
142 |
array(
|
143 |
+
'rel' => array(),
|
144 |
'strong' => array(),
|
145 |
+
'a' => array(
|
146 |
+
'href' => array(),
|
147 |
+
'class' => array(),
|
148 |
+
'target' => array()
|
149 |
+
),
|
150 |
)
|
151 |
+
),
|
152 |
+
"https://github.com/Highfivery/zero-spam-for-wordpress/wiki/FAQ#what-plugins-are-supported-by-zero-spam-for-wordpress"
|
153 |
),
|
154 |
+
'module' => 'settings',
|
155 |
'section' => 'general',
|
156 |
'type' => 'html',
|
157 |
'html' => sprintf(
|
171 |
|
172 |
self::$settings['share_data'] = array(
|
173 |
'title' => __( 'Usage Data Sharing', 'zero-spam' ),
|
174 |
+
'desc' => sprintf(
|
175 |
+
wp_kses(
|
176 |
+
/* translators: %s: url */
|
177 |
+
__( 'Help us provide better protection & contribute to our <a href="%1$s" target="_blank" rel="noreferrer noopener">real-time global detection network</a> by opting into sharing non-sensitive data (<strong>we will never share or sell any personal identifiable information, <a href="%2$s" target="_blank" rel="noreferrer noopener">learn more</a></strong>).', 'zero-spam' ),
|
178 |
+
array(
|
179 |
+
'strong' => array(),
|
180 |
+
'a' => array(
|
181 |
+
'target' => array(),
|
182 |
+
'href' => array(),
|
183 |
+
'rel' => array(),
|
184 |
+
),
|
185 |
+
)
|
186 |
+
),
|
187 |
+
esc_url( ZEROSPAM_URL . '?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=data_sharing' ),
|
188 |
+
esc_url( 'https://github.com/bmarshall511/wordpress-zero-spam/wiki/FAQ#what-data-is-shared-when-usage-data-sharing-is-enabled' )
|
189 |
+
),
|
190 |
+
'module' => 'settings',
|
191 |
'section' => 'general',
|
192 |
'type' => 'checkbox',
|
193 |
'options' => array(
|
194 |
+
'enabled' => false,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
195 |
),
|
196 |
'value' => ! empty( $options['share_data'] ) ? $options['share_data'] : false,
|
197 |
'recommended' => 'enabled',
|
208 |
self::$settings['widget_visibility'] = array(
|
209 |
'title' => __( 'Dashboard Widget Visibility', 'zero-spam' ),
|
210 |
'section' => 'general',
|
211 |
+
'module' => 'settings',
|
212 |
'type' => 'select',
|
213 |
'desc' => __( 'Select which user roles have access to the admin dashboard widget. You may control-click (Windows) or command-click (Mac) to select more than one.', 'zero-spam' ),
|
214 |
'options' => $roles_array,
|
221 |
'title' => __( 'IP Block Handler', 'zero-spam' ),
|
222 |
'desc' => __( 'Determines how blocked IPs are handled when they attempt to access the site.', 'zero-spam' ),
|
223 |
'section' => 'general',
|
224 |
+
'module' => 'settings',
|
225 |
'type' => 'radio',
|
226 |
'options' => array(
|
227 |
'redirect' => __( 'Redirect user', 'zero-spam' ),
|
264 |
esc_url( 'https://www.highfivery.com/?utm_source=' . get_bloginfo( 'url' ) . '&utm_medium=zerospam_plugin_htaccess&utm_campaign=zerospam_plugin' )
|
265 |
),
|
266 |
'section' => 'general',
|
267 |
+
'module' => 'settings',
|
268 |
'type' => 'radio',
|
269 |
'options' => array(
|
270 |
'htaccess_legacy' => __( '.htaccess (Apache servers < 2.4)', 'zero-spam' ),
|
281 |
'title' => __( 'Blocked Message', 'zero-spam' ),
|
282 |
'desc' => __( 'The message displayed to blocked users when \'Display a 403 Forbidden error\' is selected.', 'zero-spam' ),
|
283 |
'section' => 'general',
|
284 |
+
'module' => 'settings',
|
285 |
'type' => 'text',
|
286 |
'field_class' => 'large-text',
|
287 |
'placeholder' => $message,
|
293 |
'title' => __( 'Blocked Users Redirect', 'zero-spam' ),
|
294 |
'desc' => __( 'The URL blocked users are redirected to when \'Redirect user\' is selected.', 'zero-spam' ),
|
295 |
'section' => 'general',
|
296 |
+
'module' => 'settings',
|
297 |
'type' => 'url',
|
298 |
'field_class' => 'regular-text',
|
299 |
'placeholder' => 'https://wordpress.org/plugins/zero-spam/',
|
304 |
self::$settings['log_blocked_ips'] = array(
|
305 |
'title' => __( 'Log Blocked IPs', 'zero-spam' ),
|
306 |
'section' => 'general',
|
307 |
+
'module' => 'settings',
|
308 |
'type' => 'checkbox',
|
309 |
+
'desc' => __( 'When enabled, logs all IPs that are blocked from accessing the site. Not recommended for high-traffic websites.', 'zero-spam' ),
|
310 |
'options' => array(
|
311 |
+
'enabled' => false
|
312 |
),
|
313 |
'value' => ! empty( $options['log_blocked_ips'] ) ? $options['log_blocked_ips'] : false,
|
314 |
'recommended' => 'enabled',
|
318 |
'title' => __( 'Maximum Log Entries', 'zero-spam' ),
|
319 |
'desc' => __( 'The maximum number of log entries when logging is enabled. When the maximum is reached, the oldest entries will be deleted.', 'zero-spam' ),
|
320 |
'section' => 'general',
|
321 |
+
'module' => 'settings',
|
322 |
'type' => 'number',
|
323 |
'field_class' => 'small-text',
|
324 |
'placeholder' => 10000,
|
330 |
'title' => __( 'IP Whitelist', 'zero-spam' ),
|
331 |
'desc' => __( 'Enter IPs that should be whitelisted (IPs that should never be blocked), one per line.', 'zero-spam' ),
|
332 |
'section' => 'general',
|
333 |
+
'module' => 'settings',
|
334 |
'type' => 'textarea',
|
335 |
'field_class' => 'regular-text code',
|
336 |
'placeholder' => '',
|
341 |
'title' => __( 'Blocked Email Domains', 'zero-spam' ),
|
342 |
'desc' => __( 'Enter a list of email domains that should be blocked, one per line.', 'zero-spam' ),
|
343 |
'section' => 'general',
|
344 |
+
'module' => 'settings',
|
345 |
'type' => 'textarea',
|
346 |
'field_class' => 'regular-text code',
|
347 |
'placeholder' => '',
|
359 |
)
|
360 |
),
|
361 |
'section' => 'general',
|
362 |
+
'module' => 'settings',
|
363 |
'type' => 'html',
|
364 |
'html' => sprintf(
|
365 |
wp_kses(
|
389 |
\ZeroSpam\Core\Utilities::get_honeypot()
|
390 |
),
|
391 |
'section' => 'general',
|
392 |
+
'module' => 'settings',
|
393 |
'type' => 'html',
|
394 |
'html' => sprintf(
|
395 |
wp_kses(
|
410 |
'title' => __( 'Override & Update Core Disallowed Words', 'zero-spam' ),
|
411 |
'desc' => __( 'Update WP core\'s disallowed words option with <a href="https://github.com/splorp/wordpress-comment-blacklist/" target="_blank" rel="noreferrer noopener">splorp\'s Comment Blacklist for WordPress</a>. <strong>WARNING:</strong> This will override any existing words.', 'zero-spam' ),
|
412 |
'section' => 'general',
|
413 |
+
'module' => 'settings',
|
414 |
'type' => 'html',
|
415 |
'html' => sprintf(
|
416 |
wp_kses(
|
427 |
),
|
428 |
);
|
429 |
|
430 |
+
$settings = apply_filters( 'zerospam_settings', self::$settings );
|
431 |
|
432 |
if ( $key ) {
|
433 |
if ( ! empty( $settings[ $key ]['value'] ) ) {
|
core/class-utilities.php
CHANGED
@@ -111,6 +111,29 @@ class Utilities {
|
|
111 |
return false;
|
112 |
}
|
113 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
/**
|
115 |
* Determines if an email has been blocked by it's domain.
|
116 |
*
|
@@ -211,7 +234,7 @@ class Utilities {
|
|
211 |
return false;
|
212 |
}
|
213 |
|
214 |
-
if ( insert_with_markers( $htaccess_file, '
|
215 |
return true;
|
216 |
} else {
|
217 |
self::log( 'Unable to update the .htacess file, unknown error.' );
|
@@ -270,9 +293,9 @@ class Utilities {
|
|
270 |
}
|
271 |
|
272 |
// Write the log file.
|
273 |
-
$
|
274 |
-
$file
|
275 |
-
$bytes
|
276 |
fclose( $file );
|
277 |
|
278 |
return $bytes;
|
@@ -623,7 +646,6 @@ class Utilities {
|
|
623 |
/**
|
624 |
* Returns the generated key for checking submissions.
|
625 |
*
|
626 |
-
* @since 5.0.0
|
627 |
* @access public
|
628 |
*
|
629 |
* @return string A unique key used for the 'honeypot' field.
|
@@ -736,8 +758,6 @@ class Utilities {
|
|
736 |
/**
|
737 |
* Get an IP address geolocation information.
|
738 |
*
|
739 |
-
* @since 5.1.1
|
740 |
-
*
|
741 |
* @param string $ip IP address to lookup.
|
742 |
* @return boolean|array False if geolocation is unavailable or array of location information.
|
743 |
*/
|
@@ -771,7 +791,7 @@ class Utilities {
|
|
771 |
|
772 |
// 2. Query the ipstack API.
|
773 |
$ipstack_location = \ZeroSpam\Modules\ipstack::get_geolocation( $ip );
|
774 |
-
if ( $ipstack_location ) {
|
775 |
// ipstack API key provided, process the response.
|
776 |
if ( ! empty( $ipstack_location['error'] ) ) {
|
777 |
// ipstack returned an error, log it for future reference.
|
@@ -826,7 +846,7 @@ class Utilities {
|
|
826 |
|
827 |
// 3. Query the IPinfo API.
|
828 |
$ipinfo_location = ZeroSpam\Modules\IPinfoModule::get_geolocation( $ip );
|
829 |
-
if ( $ipinfo_location ) {
|
830 |
// IPinfo token provided, process the response.
|
831 |
// Add available location info to the standarized array.
|
832 |
if ( ! empty( $ipinfo_location['hostname'] ) ) {
|
111 |
return false;
|
112 |
}
|
113 |
|
114 |
+
/**
|
115 |
+
* Determines if an email is valid.
|
116 |
+
*
|
117 |
+
* @param string $email Email address.
|
118 |
+
*/
|
119 |
+
public static function is_email( $email ) {
|
120 |
+
if ( ! is_email( $email ) ) {
|
121 |
+
return false;
|
122 |
+
}
|
123 |
+
|
124 |
+
// Check the email domain.
|
125 |
+
if ( function_exists( 'checkdnsrr' ) ) {
|
126 |
+
$email_domain = substr( $email, strpos( $email, '@' ) + 1 );
|
127 |
+
if ( ! checkdnsrr( $email_domain, "MX" ) ) {
|
128 |
+
if ( ! ( checkdnsrr( $email_domain, "A" ) ) || ! ( checkdnsrr( $email_domain, "AAAA" ) ) ) {
|
129 |
+
return false;
|
130 |
+
}
|
131 |
+
}
|
132 |
+
}
|
133 |
+
|
134 |
+
return true;;
|
135 |
+
}
|
136 |
+
|
137 |
/**
|
138 |
* Determines if an email has been blocked by it's domain.
|
139 |
*
|
234 |
return false;
|
235 |
}
|
236 |
|
237 |
+
if ( insert_with_markers( $htaccess_file, 'Zero Spam for WordPress', $lines ) ) {
|
238 |
return true;
|
239 |
} else {
|
240 |
self::log( 'Unable to update the .htacess file, unknown error.' );
|
293 |
}
|
294 |
|
295 |
// Write the log file.
|
296 |
+
$file_path = $upload_dir . '/' . $file . '.log';
|
297 |
+
$file = fopen( $file_path, $mode );
|
298 |
+
$bytes = fwrite( $file, current_time( 'mysql' ) . "::" . $entry . "\n" );
|
299 |
fclose( $file );
|
300 |
|
301 |
return $bytes;
|
646 |
/**
|
647 |
* Returns the generated key for checking submissions.
|
648 |
*
|
|
|
649 |
* @access public
|
650 |
*
|
651 |
* @return string A unique key used for the 'honeypot' field.
|
758 |
/**
|
759 |
* Get an IP address geolocation information.
|
760 |
*
|
|
|
|
|
761 |
* @param string $ip IP address to lookup.
|
762 |
* @return boolean|array False if geolocation is unavailable or array of location information.
|
763 |
*/
|
791 |
|
792 |
// 2. Query the ipstack API.
|
793 |
$ipstack_location = \ZeroSpam\Modules\ipstack::get_geolocation( $ip );
|
794 |
+
if ( ! empty( $ipstack_location ) ) {
|
795 |
// ipstack API key provided, process the response.
|
796 |
if ( ! empty( $ipstack_location['error'] ) ) {
|
797 |
// ipstack returned an error, log it for future reference.
|
846 |
|
847 |
// 3. Query the IPinfo API.
|
848 |
$ipinfo_location = ZeroSpam\Modules\IPinfoModule::get_geolocation( $ip );
|
849 |
+
if ( ! empty( $ipinfo_location ) ) {
|
850 |
// IPinfo token provided, process the response.
|
851 |
// Add available location info to the standarized array.
|
852 |
if ( ! empty( $ipinfo_location['hostname'] ) ) {
|
includes/class-db.php
CHANGED
@@ -16,7 +16,7 @@ defined( 'ABSPATH' ) || die();
|
|
16 |
class DB {
|
17 |
|
18 |
// Current DB version.
|
19 |
-
const DB_VERSION = '0.
|
20 |
|
21 |
/**
|
22 |
* DB tables
|
@@ -67,7 +67,7 @@ class DB {
|
|
67 |
blocked_type ENUM('permanent','temporary') NOT NULL DEFAULT 'temporary',
|
68 |
user_ip VARCHAR(39) NOT NULL,
|
69 |
blocked_key VARCHAR(255) NULL,
|
70 |
-
key_type ENUM('ip','email','username','country_code','region_code','zip') NOT NULL DEFAULT 'ip',
|
71 |
date_added DATETIME NOT NULL,
|
72 |
start_block DATETIME NULL DEFAULT NULL,
|
73 |
end_block DATETIME NULL DEFAULT NULL,
|
16 |
class DB {
|
17 |
|
18 |
// Current DB version.
|
19 |
+
const DB_VERSION = '0.9';
|
20 |
|
21 |
/**
|
22 |
* DB tables
|
67 |
blocked_type ENUM('permanent','temporary') NOT NULL DEFAULT 'temporary',
|
68 |
user_ip VARCHAR(39) NOT NULL,
|
69 |
blocked_key VARCHAR(255) NULL,
|
70 |
+
key_type ENUM('ip','email','username','country_code','region_code','zip', 'city') NOT NULL DEFAULT 'ip',
|
71 |
date_added DATETIME NOT NULL,
|
72 |
start_block DATETIME NULL DEFAULT NULL,
|
73 |
end_block DATETIME NULL DEFAULT NULL,
|
includes/class-plugin.php
CHANGED
@@ -81,6 +81,12 @@ class Plugin {
|
|
81 |
// Database functionality.
|
82 |
new \ZeroSpam\Includes\DB();
|
83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
// Zero Spam module.
|
85 |
new \ZeroSpam\Modules\Zero_Spam();
|
86 |
|
@@ -159,6 +165,11 @@ class Plugin {
|
|
159 |
new \ZeroSpam\Modules\WooCommerce\WooCommerce();
|
160 |
}
|
161 |
|
|
|
|
|
|
|
|
|
|
|
162 |
// Debug module.
|
163 |
new \ZeroSpam\Modules\Debug();
|
164 |
}
|
81 |
// Database functionality.
|
82 |
new \ZeroSpam\Includes\DB();
|
83 |
|
84 |
+
// Updates functionality.
|
85 |
+
new \ZeroSpam\Includes\Updates();
|
86 |
+
|
87 |
+
// Site security
|
88 |
+
new \ZeroSpam\Modules\Security();
|
89 |
+
|
90 |
// Zero Spam module.
|
91 |
new \ZeroSpam\Modules\Zero_Spam();
|
92 |
|
165 |
new \ZeroSpam\Modules\WooCommerce\WooCommerce();
|
166 |
}
|
167 |
|
168 |
+
// Zero Spam Gravity Forms module.
|
169 |
+
if ( is_plugin_active( 'gravityforms/gravityforms.php' ) ) {
|
170 |
+
new \ZeroSpam\Modules\GravityForms\GravityForms();
|
171 |
+
}
|
172 |
+
|
173 |
// Debug module.
|
174 |
new \ZeroSpam\Modules\Debug();
|
175 |
}
|
includes/class-updates.php
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Updates class
|
4 |
+
*
|
5 |
+
* @package ZeroSpam
|
6 |
+
*/
|
7 |
+
|
8 |
+
namespace ZeroSpam\Includes;
|
9 |
+
|
10 |
+
// Security Note: Blocks direct access to the plugin PHP files.
|
11 |
+
defined( 'ABSPATH' ) || die();
|
12 |
+
|
13 |
+
/**
|
14 |
+
* Updates class
|
15 |
+
*/
|
16 |
+
class Updates {
|
17 |
+
/**
|
18 |
+
* Constructor
|
19 |
+
*/
|
20 |
+
public function __construct() {
|
21 |
+
add_action( 'init', array( $this, 'check' ) );
|
22 |
+
}
|
23 |
+
|
24 |
+
/**
|
25 |
+
* Checks for updates
|
26 |
+
*/
|
27 |
+
public function check() {
|
28 |
+
$last_update = get_option( 'zero-spam-last-update' );
|
29 |
+
if ( ! $last_update || ZEROSPAM_VERSION !== $last_update ) {
|
30 |
+
|
31 |
+
// Update old settings value to new.
|
32 |
+
// @TODO: Delete the wpzerospam option once enough time has passed to allow people to upgrade.
|
33 |
+
$old_settings = get_option( 'wpzerospam' );
|
34 |
+
if ( $old_settings ) {
|
35 |
+
$modules = \ZeroSpam\Core\Settings::get_settings_by_module();
|
36 |
+
foreach ( $modules as $module => $settings ) {
|
37 |
+
$updated_settings = array();
|
38 |
+
foreach ( $settings as $key => $attr ) {
|
39 |
+
$updated_settings[ $key ] = ! empty( $attr['value'] ) ? $attr['value'] : false;
|
40 |
+
|
41 |
+
if ( ! empty( $old_settings[ $key ] ) ) {
|
42 |
+
$updated_settings[ $key ] = $old_settings[ $key ];
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
update_option( "zero-spam-$module", $updated_settings, true );
|
47 |
+
}
|
48 |
+
|
49 |
+
update_option( 'zero-spam-last-update', ZEROSPAM_VERSION );
|
50 |
+
}
|
51 |
+
|
52 |
+
}
|
53 |
+
}
|
54 |
+
}
|
includes/templates/admin-block-ip.php
CHANGED
@@ -3,76 +3,81 @@
|
|
3 |
* Block IP.
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
-
* @since 5.0.0
|
7 |
*/
|
8 |
?>
|
9 |
|
10 |
-
<form method="post"
|
11 |
<?php wp_nonce_field( 'zerospam', 'zerospam' ); ?>
|
12 |
<input type="hidden" name="action" value="add_blocked_ip" />
|
13 |
-
<input type="hidden" name="redirect" value="<?php echo esc_url( ZeroSpam\Core\Utilities::current_url() ); ?>" />
|
14 |
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
<
|
29 |
-
<
|
30 |
-
<
|
31 |
-
|
32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
</select>
|
34 |
-
</
|
35 |
|
36 |
-
<
|
37 |
-
|
|
|
|
|
|
|
|
|
|
|
38 |
<input
|
39 |
-
|
40 |
-
|
41 |
-
name="
|
42 |
value=""
|
43 |
-
placeholder="
|
44 |
/>
|
45 |
-
</
|
46 |
-
<?php endif; ?>
|
47 |
|
48 |
-
<
|
49 |
-
|
50 |
-
<
|
51 |
-
|
52 |
-
|
53 |
-
</label>
|
54 |
-
|
55 |
-
<label for="blocked-reason">
|
56 |
-
<?php esc_html_e( 'Reason', 'zero-spam' ); ?>
|
57 |
-
<input type="text" id="blocked-reason" name="blocked_reason" value="" placeholder="<?php esc_attr_e( 'e.g. Spammed form', 'zero-spam' ); ?>" />
|
58 |
-
</label>
|
59 |
-
|
60 |
-
<label for="blocked-start-date">
|
61 |
-
<?php esc_html_e( 'Start Date', 'zero-spam' ); ?>
|
62 |
-
<input
|
63 |
-
type="datetime-local"
|
64 |
-
id="blocked-start-date"
|
65 |
-
name="blocked_start_date"
|
66 |
-
value=""
|
67 |
-
placeholder="<?php echo esc_attr( __( 'Optional', 'zero-spam' ) ); ?>"
|
68 |
-
/>
|
69 |
-
</label>
|
70 |
-
|
71 |
-
<label for="blocked-end-date">
|
72 |
-
<?php esc_html_e( 'End Date', 'zero-spam' ); ?>
|
73 |
-
<input type="datetime-local" id="blocked-end-date" name="blocked_end_date" value="" placeholder="<?php esc_attr_e( 'Optional', 'zero-spam' ); ?>" />
|
74 |
-
</label>
|
75 |
-
|
76 |
-
<input type="submit" class="button button-primary" value="<?php esc_attr_e( 'Add/Update Blocked IP', 'zero-spam' ); ?>" />
|
77 |
|
|
|
|
|
|
|
|
|
|
|
78 |
</form>
|
3 |
* Block IP.
|
4 |
*
|
5 |
* @package ZeroSpam
|
|
|
6 |
*/
|
7 |
?>
|
8 |
|
9 |
+
<form method="post" class="zerospam-table-form<?php if ( ! empty( $location_form ) ) : ?> zerospam-block-location-form<?php endif; ?>" action="<?php echo esc_url( admin_url( 'admin.php' ) ); ?>">
|
10 |
<?php wp_nonce_field( 'zerospam', 'zerospam' ); ?>
|
11 |
<input type="hidden" name="action" value="add_blocked_ip" />
|
|
|
12 |
|
13 |
+
<div class="zerospam-form-fields">
|
14 |
+
<?php if ( empty( $location_form ) ) : ?>
|
15 |
+
<div class="zerospam-form-field zerospam-form-field--half">
|
16 |
+
<label for="blocked-ip"><?php _e( 'IP Address', 'zero-spam' ); ?></label>
|
17 |
+
<input
|
18 |
+
d="blocked-ip"
|
19 |
+
type="text"
|
20 |
+
name="blocked_ip"
|
21 |
+
value="<?php if( ! empty( $_REQUEST['ip'] ) ) : echo esc_attr( $_REQUEST['ip'] ); endif; ?>"
|
22 |
+
placeholder="e.g. xxx.xxx.x.x"
|
23 |
+
/>
|
24 |
+
</div>
|
25 |
+
<?php else: ?>
|
26 |
+
<div class="zerospam-form-field zerospam-form-field--half">
|
27 |
+
<label for="location-type"><?php esc_html_e( 'Location Type', 'zero-spam' ); ?></label>
|
28 |
+
<select id="location-type" name="key_type">
|
29 |
+
<option value="country_code"><?php esc_html_e( 'Country Code', 'zero-spam' ); ?></option>
|
30 |
+
<option value="region_code"><?php esc_html_e( 'Region Code', 'zero-spam' ); ?></option>
|
31 |
+
<option value="city"><?php esc_html_e( 'City Name', 'zero-spam' ); ?></option>
|
32 |
+
<option value="zip"><?php esc_html_e( 'Zip/Postal Code', 'zero-spam' ); ?></option>
|
33 |
+
</select>
|
34 |
+
</div>
|
35 |
+
|
36 |
+
<div class="zerospam-form-field zerospam-form-field--half">
|
37 |
+
<label for="location-key"><?php esc_html_e( 'Location Key', 'zero-spam' ); ?></label>
|
38 |
+
<input
|
39 |
+
id="location-key"
|
40 |
+
type="text"
|
41 |
+
name="blocked_key"
|
42 |
+
value=""
|
43 |
+
placeholder="ex. US"
|
44 |
+
/>
|
45 |
+
</div>
|
46 |
+
<?php endif; ?>
|
47 |
+
|
48 |
+
<div class="zerospam-form-field zerospam-form-field--half">
|
49 |
+
<label for="blocked-type"><?php esc_html_e( 'Type', 'zero-spam' ); ?></label>
|
50 |
+
<select id="blocked-type" name="blocked_type">
|
51 |
+
<option value="temporary"><?php esc_html_e( 'Temporary', 'zero-spam' ); ?></option>
|
52 |
+
<option value="permanent"><?php esc_html_e( 'Permanent', 'zero-spam' ); ?></option>
|
53 |
</select>
|
54 |
+
</div>
|
55 |
|
56 |
+
<div class="zerospam-form-field">
|
57 |
+
<label for="blocked-reason"><?php esc_html_e( 'Reason', 'zero-spam' ); ?></label>
|
58 |
+
<input type="text" id="blocked-reason" name="blocked_reason" value="" placeholder="<?php esc_attr_e( 'e.g. Spammed form', 'zero-spam' ); ?>" />
|
59 |
+
</div>
|
60 |
+
|
61 |
+
<div class="zerospam-form-field zerospam-form-field--half">
|
62 |
+
<label for="blocked-start-date"><?php esc_html_e( 'Start Date', 'zero-spam' ); ?></label>
|
63 |
<input
|
64 |
+
type="datetime-local"
|
65 |
+
id="blocked-start-date"
|
66 |
+
name="blocked_start_date"
|
67 |
value=""
|
68 |
+
placeholder="<?php echo esc_attr( __( 'Optional', 'zero-spam' ) ); ?>"
|
69 |
/>
|
70 |
+
</div>
|
|
|
71 |
|
72 |
+
<div class="zerospam-form-field zerospam-form-field--half">
|
73 |
+
<label for="blocked-end-date"><?php esc_html_e( 'End Date', 'zero-spam' ); ?></label>
|
74 |
+
<input type="datetime-local" id="blocked-end-date" name="blocked_end_date" value="" placeholder="<?php esc_attr_e( 'Optional', 'zero-spam' ); ?>" />
|
75 |
+
</div>
|
76 |
+
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
77 |
|
78 |
+
<?php if ( empty( $location_form ) ) : ?>
|
79 |
+
<input type="submit" class="button button-primary" value="<?php esc_attr_e( 'Add/Update Blocked IP →', 'zero-spam' ); ?>" />
|
80 |
+
<?php else: ?>
|
81 |
+
<input type="submit" class="button button-primary" value="<?php esc_attr_e( 'Add/Update Blocked Location →', 'zero-spam' ); ?>" />
|
82 |
+
<?php endif; ?>
|
83 |
</form>
|
includes/templates/admin-callout.php
DELETED
@@ -1,130 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Callout.
|
4 |
-
*
|
5 |
-
* @package ZeroSpam
|
6 |
-
* @since 5.0.0
|
7 |
-
*/
|
8 |
-
|
9 |
-
$settings = \ZeroSpam\Core\Settings::get_settings();
|
10 |
-
?>
|
11 |
-
|
12 |
-
<div class="zerospam-callout">
|
13 |
-
<div class="zerospam-callout-col">
|
14 |
-
<?php if ( 'enabled' !== $settings['zerospam']['value'] || empty( $settings['zerospam_license']['value'] ) ) : ?>
|
15 |
-
<h2>
|
16 |
-
<?php
|
17 |
-
echo sprintf(
|
18 |
-
wp_kses(
|
19 |
-
/* translators: %s: Zero Spam API link */
|
20 |
-
__( 'Super-charge WordPress Zero Spam with a <a href="%s" target="_blank" rel="noopener noreferrer"> Zero Spam API License</a>.', 'zero-spam' ),
|
21 |
-
array(
|
22 |
-
'a' => array(
|
23 |
-
'target' => array(),
|
24 |
-
'href' => array(),
|
25 |
-
'rel' => array(),
|
26 |
-
),
|
27 |
-
)
|
28 |
-
),
|
29 |
-
esc_url( ZEROSPAM_URL . 'subscribe/' )
|
30 |
-
);
|
31 |
-
?>
|
32 |
-
</h2>
|
33 |
-
<?php
|
34 |
-
echo sprintf(
|
35 |
-
wp_kses(
|
36 |
-
/* translators: %s: Zero Spam API link */
|
37 |
-
__( '<p>Enable enhanced protection with a <strong>Zero Spam API license</strong> — one of the largest, most comprehensive, constantly-growing global malicious IP, email, and username databases available.</p><p><a href="%1$s" target="_blank" rel="noopener noreferrer">Zero Spam</a> is comprised of a global detection network of over 30,000+ apps and sites that monitor traffic and usage in real-time to detect malicious activity. <a href="%1$s" target="_blank" rel="noopener noreferrer"><strong>Subscribe today</strong></a> for enhanced protection.</p>', 'zero-spam' ),
|
38 |
-
array(
|
39 |
-
'a' => array(
|
40 |
-
'target' => array(),
|
41 |
-
'href' => array(),
|
42 |
-
'rel' => array(),
|
43 |
-
),
|
44 |
-
'p' => array(),
|
45 |
-
'strong' => array(),
|
46 |
-
)
|
47 |
-
),
|
48 |
-
esc_url( ZEROSPAM_URL . '?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=license' ),
|
49 |
-
esc_url( ZEROSPAM_URL . 'subscribe/?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=license' )
|
50 |
-
);
|
51 |
-
?>
|
52 |
-
<p style="margin-top: 30px">
|
53 |
-
<a class="button button-primary" href="<?php echo esc_url( ZEROSPAM_URL ); ?>subscribe/?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=license" target="_blank" rel="noopener noreferrer"><?php esc_html_e( 'Enable Enhanced Protection', 'zero-spam' ); ?></a>
|
54 |
-
<a href="<?php echo esc_url( ZEROSPAM_URL ); ?>?utm_source=wordpress_zero_spam&utm_medium=dashboard_widget&utm_campaign=license" target="_blank" rel="noreferrer noopener" class="button button-secondary"><?php esc_html_e( 'Learn More', 'zero-spam' ); ?></a>
|
55 |
-
</p>
|
56 |
-
<?php else : ?>
|
57 |
-
<h2>
|
58 |
-
<?php
|
59 |
-
echo sprintf(
|
60 |
-
wp_kses(
|
61 |
-
/* translators: %s: Zero Spam link */
|
62 |
-
__( 'Congratulations, <a href="%1$s" target="_blank" rel="noopener noreferrer">Zero Spam</a> enhanced protection is enabled!', 'zero-spam' ),
|
63 |
-
array(
|
64 |
-
'a' => array(
|
65 |
-
'target' => array(),
|
66 |
-
'href' => array(),
|
67 |
-
'rel' => array(),
|
68 |
-
),
|
69 |
-
)
|
70 |
-
),
|
71 |
-
esc_url( ZEROSPAM_URL . '?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=license' )
|
72 |
-
);
|
73 |
-
?>
|
74 |
-
</h2>
|
75 |
-
<?php
|
76 |
-
echo sprintf(
|
77 |
-
wp_kses(
|
78 |
-
/* translators: %s: Zero Spam API link */
|
79 |
-
__( '<p><a href="%1$s" target="_blank" rel="noopener noreferrer">Zero Spam</a> is comprised of a global detection network of over 30,000+ apps and sites that monitor traffic and usage in real-time to detect malicious activity.</p>', 'zero-spam' ),
|
80 |
-
array(
|
81 |
-
'a' => array(
|
82 |
-
'target' => array(),
|
83 |
-
'href' => array(),
|
84 |
-
'rel' => array(),
|
85 |
-
),
|
86 |
-
'p' => array(),
|
87 |
-
'strong' => array(),
|
88 |
-
)
|
89 |
-
),
|
90 |
-
esc_url( ZEROSPAM_URL . '?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=license' )
|
91 |
-
);
|
92 |
-
?>
|
93 |
-
<?php endif; ?>
|
94 |
-
</div>
|
95 |
-
<div class="zerospam-callout-col zerospam-callout-actions">
|
96 |
-
<ul style="margin-top: 0">
|
97 |
-
<?php if ( 'enabled' !== $settings['zerospam']['value'] || empty( $settings['zerospam_license']['value'] ) ) : ?>
|
98 |
-
<li style="margin-bottom: 20px;">
|
99 |
-
<a href="<?php echo esc_url( ZEROSPAM_URL ); ?>subscribe/?utm_source=wordpress_zero_spam&utm_medium=settings_page&utm_campaign=license" target="_blank">
|
100 |
-
<strong><?php esc_html_e( 'Get a Zero Spam API License', 'zero-spam' ); ?></strong>
|
101 |
-
</a>
|
102 |
-
</li>
|
103 |
-
<?php endif; ?>
|
104 |
-
<li><a href="https://github.com/bmarshall511/wordpress-zero-spam/issues" target="_blank"><?php esc_html_e( 'Submit a Bug or Feature Request', 'zero-spam' ); ?></a></li>
|
105 |
-
<li><a href="https://github.com/bmarshall511/wordpress-zero-spam/wiki" target="_blank" rel="noreferrer noopener"><?php esc_html_e( 'WordPress Zero Spam Plugin Documentation', 'zero-spam' ); ?></a></li>
|
106 |
-
<li><a href="https://github.com/bmarshall511/wordpress-zero-spam" target="_blank" rel="noreferrer noopener"><?php esc_html_e( 'Become a Contributor — Fork on Github', 'zero-spam' ); ?></a></li>
|
107 |
-
<li><a href="https://twitter.com/ZeroSpamOrg" target="_blank"><?php esc_html_e( 'Follow us on Twitter', 'zero-spam' ); ?></a> & <a href="https://www.facebook.com/zerospamorg/" target="_blank"><?php esc_html_e( 'Facebook', 'zero-spam' ); ?></a></li>
|
108 |
-
</ul>
|
109 |
-
<hr />
|
110 |
-
<?php
|
111 |
-
echo sprintf(
|
112 |
-
wp_kses(
|
113 |
-
/* translators: %s: Zero Spam API link */
|
114 |
-
__( '<p><small>WordPress Zero Spam is proudly developed & maintained by <a href="%1$s" target="_blank" rel="noopener noreferrer">Highfivery LLC — a creative digital agency</a>.</small></p>', 'zero-spam' ),
|
115 |
-
array(
|
116 |
-
'a' => array(
|
117 |
-
'target' => array(),
|
118 |
-
'href' => array(),
|
119 |
-
'rel' => array(),
|
120 |
-
),
|
121 |
-
'p' => array(),
|
122 |
-
'strong' => array(),
|
123 |
-
'small' => array(),
|
124 |
-
)
|
125 |
-
),
|
126 |
-
esc_url( 'https://www.highfivery.com/?utm_source=' . get_bloginfo( 'url' ) . '&utm_medium=zerospam_plugin_callout&utm_campaign=zerospam_plugin' )
|
127 |
-
);
|
128 |
-
?>
|
129 |
-
</div>
|
130 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/templates/admin-header.php
ADDED
@@ -0,0 +1,100 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Admin header
|
4 |
+
*
|
5 |
+
* @package ZeroSpam
|
6 |
+
*/
|
7 |
+
|
8 |
+
?>
|
9 |
+
|
10 |
+
<header class="zerospam-header">
|
11 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ) . 'assets/img/text-zero-spam.svg' ?>" width="250" />
|
12 |
+
<div class="zerospam-header__status">
|
13 |
+
<?php
|
14 |
+
$status = \ZeroSpam\Core\Settings::get_settings( 'zerospam' );
|
15 |
+
if ( 'enabled' !== $status ) :
|
16 |
+
echo '<img src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-error.svg" class="zerospam-small-icon" />';
|
17 |
+
echo sprintf(
|
18 |
+
wp_kses(
|
19 |
+
/* translators: %1s: Replaced with the Zero Spam URL */
|
20 |
+
__( '<strong>Enhanced Protection is <a href="%1$s">DISABLED</a>.</strong>', 'zero-spam' ),
|
21 |
+
array(
|
22 |
+
'h3' => array(),
|
23 |
+
'p' => array(),
|
24 |
+
'a' => array(
|
25 |
+
'href' => array(),
|
26 |
+
'class' => array(),
|
27 |
+
'rel' => array(),
|
28 |
+
),
|
29 |
+
'strong' => array(),
|
30 |
+
)
|
31 |
+
),
|
32 |
+
admin_url( "options-general.php?page=wordpress-zero-spam-settings&subview=zerospam" )
|
33 |
+
);
|
34 |
+
else :
|
35 |
+
$license_key = \ZeroSpam\Core\Settings::get_settings( 'zerospam_license' );
|
36 |
+
if ( $license_key ) :
|
37 |
+
$license = \ZeroSpam\Modules\Zero_Spam::get_license( $license_key );
|
38 |
+
if ( empty( $license['license_key'] ) ) :
|
39 |
+
echo '<img src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-error.svg" class="zerospam-small-icon" />';
|
40 |
+
echo sprintf(
|
41 |
+
wp_kses(
|
42 |
+
/* translators: %1s: Replaced with the Zero Spam URL */
|
43 |
+
__( '<strong>Enhanced Protection is <a href="%1$s">DISABLED</a> (invalid license).</strong>', 'zero-spam' ),
|
44 |
+
array(
|
45 |
+
'h3' => array(),
|
46 |
+
'p' => array(),
|
47 |
+
'a' => array(
|
48 |
+
'href' => array(),
|
49 |
+
'class' => array(),
|
50 |
+
'rel' => array(),
|
51 |
+
),
|
52 |
+
'strong' => array(),
|
53 |
+
)
|
54 |
+
),
|
55 |
+
admin_url( "options-general.php?page=wordpress-zero-spam-settings&subview=zerospam" )
|
56 |
+
);
|
57 |
+
else :
|
58 |
+
echo '<img src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-success.svg" class="zerospam-small-icon" />';
|
59 |
+
echo sprintf(
|
60 |
+
wp_kses(
|
61 |
+
/* translators: %1s: Replaced with the Zero Spam URL */
|
62 |
+
__( '<strong>Protected — %1s queries available</strong>', 'zero-spam' ),
|
63 |
+
array(
|
64 |
+
'h3' => array(),
|
65 |
+
'p' => array(),
|
66 |
+
'a' => array(
|
67 |
+
'href' => array(),
|
68 |
+
'class' => array(),
|
69 |
+
'rel' => array(),
|
70 |
+
),
|
71 |
+
'strong' => array(),
|
72 |
+
)
|
73 |
+
),
|
74 |
+
number_format( $license['queries_remaining'], 0 )
|
75 |
+
);
|
76 |
+
endif;
|
77 |
+
else:
|
78 |
+
echo '<img src="' . plugin_dir_url( ZEROSPAM ) . 'assets/img/icon-error.svg" class="zerospam-small-icon" />';
|
79 |
+
echo sprintf(
|
80 |
+
wp_kses(
|
81 |
+
/* translators: %1s: Replaced with the Zero Spam URL, %2$s: Replaced with the DDoD attack wiki URL */
|
82 |
+
__( '<strong>Enhanced Protection is <a href="%1$s">DISABLED</a>.</strong>', 'zero-spam' ),
|
83 |
+
array(
|
84 |
+
'h3' => array(),
|
85 |
+
'p' => array(),
|
86 |
+
'a' => array(
|
87 |
+
'href' => array(),
|
88 |
+
'class' => array(),
|
89 |
+
'rel' => array(),
|
90 |
+
),
|
91 |
+
'strong' => array(),
|
92 |
+
)
|
93 |
+
),
|
94 |
+
admin_url( "options-general.php?page=wordpress-zero-spam-settings&subview=zerospam" )
|
95 |
+
);
|
96 |
+
endif;
|
97 |
+
endif;
|
98 |
+
?>
|
99 |
+
</div>
|
100 |
+
</header>
|
includes/templates/admin-ips.php
CHANGED
@@ -34,7 +34,7 @@ if ( $ips ) {
|
|
34 |
arsort( $ips );
|
35 |
}
|
36 |
?>
|
37 |
-
<ul class="zerospam-list">
|
38 |
<?php
|
39 |
$limit = 12;
|
40 |
$cnt = 0;
|
@@ -45,29 +45,29 @@ if ( $ips ) {
|
|
45 |
}
|
46 |
?>
|
47 |
<li>
|
48 |
-
<span>
|
49 |
<?php if ( ! empty( $data['country'] ) ) : ?>
|
50 |
<img
|
51 |
src="<?php echo esc_url( ZeroSpam\Core\Utilities::country_flag_url( $data['country'] ) ); ?>"
|
52 |
alt="<?php echo esc_attr( $data['country'] ); ?>"
|
53 |
class="zerospam-flag"
|
54 |
-
width="
|
55 |
-
height="
|
56 |
/>
|
57 |
<?php endif; ?>
|
58 |
<a href="<?php echo esc_url( ZEROSPAM_URL ); ?>ip-lookup/<?php echo urlencode( $ip ); ?>" target="_blank" rel="noopener noreferrer">
|
59 |
<?php echo esc_html( $ip ); ?>
|
60 |
</a>
|
61 |
</span>
|
62 |
-
<span>
|
63 |
<?php if ( ! empty( $data['country'] ) ) : ?>
|
64 |
<?php echo ZeroSpam\Core\Utilities::countries( $data['country'] ); ?>
|
65 |
<?php else: ?>
|
66 |
<?php esc_html_e( 'Unknown', 'zero-spam' ); ?>
|
67 |
<?php endif; ?>
|
68 |
</span>
|
69 |
-
<span><?php echo number_format( $data['count'], 0 ); ?></span>
|
70 |
-
<span>
|
71 |
<?php
|
72 |
$blocked = ZeroSpam\Includes\DB::blocked( $ip );
|
73 |
if ( $blocked ) :
|
@@ -79,13 +79,14 @@ if ( $ips ) {
|
|
79 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['start_block'] ) ) ); ?>"
|
80 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['end_block'] ) ) ); ?>"
|
81 |
data-type="<?php echo esc_attr( $blocked['blocked_type'] ); ?>"
|
|
|
82 |
>
|
83 |
-
<?php
|
84 |
</button>
|
85 |
<?php
|
86 |
else :
|
87 |
?>
|
88 |
-
<button class="button zerospam-block-trigger" data-ip="<?php echo esc_attr( $ip ); ?>"
|
89 |
<?php
|
90 |
endif;
|
91 |
?>
|
34 |
arsort( $ips );
|
35 |
}
|
36 |
?>
|
37 |
+
<ul class="zerospam-list zerospam-list--data-actions">
|
38 |
<?php
|
39 |
$limit = 12;
|
40 |
$cnt = 0;
|
45 |
}
|
46 |
?>
|
47 |
<li>
|
48 |
+
<span class="zerospam-list__value">
|
49 |
<?php if ( ! empty( $data['country'] ) ) : ?>
|
50 |
<img
|
51 |
src="<?php echo esc_url( ZeroSpam\Core\Utilities::country_flag_url( $data['country'] ) ); ?>"
|
52 |
alt="<?php echo esc_attr( $data['country'] ); ?>"
|
53 |
class="zerospam-flag"
|
54 |
+
width="14"
|
55 |
+
height="14"
|
56 |
/>
|
57 |
<?php endif; ?>
|
58 |
<a href="<?php echo esc_url( ZEROSPAM_URL ); ?>ip-lookup/<?php echo urlencode( $ip ); ?>" target="_blank" rel="noopener noreferrer">
|
59 |
<?php echo esc_html( $ip ); ?>
|
60 |
</a>
|
61 |
</span>
|
62 |
+
<span class="zerospam-list__value">
|
63 |
<?php if ( ! empty( $data['country'] ) ) : ?>
|
64 |
<?php echo ZeroSpam\Core\Utilities::countries( $data['country'] ); ?>
|
65 |
<?php else: ?>
|
66 |
<?php esc_html_e( 'Unknown', 'zero-spam' ); ?>
|
67 |
<?php endif; ?>
|
68 |
</span>
|
69 |
+
<span class="zerospam-list__value"><?php echo number_format( $data['count'], 0 ); ?></span>
|
70 |
+
<span class="zerospam-list__value">
|
71 |
<?php
|
72 |
$blocked = ZeroSpam\Includes\DB::blocked( $ip );
|
73 |
if ( $blocked ) :
|
79 |
data-start="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['start_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['start_block'] ) ) ); ?>"
|
80 |
data-end="<?php echo esc_attr( gmdate( 'Y-m-d', strtotime( $blocked['end_block'] ) ) ); ?>T<?php echo esc_attr( gmdate( 'H:i', strtotime( $blocked['end_block'] ) ) ); ?>"
|
81 |
data-type="<?php echo esc_attr( $blocked['blocked_type'] ); ?>"
|
82 |
+
aria-label="<?php esc_html_e( 'Update Block', 'zero-spam' ); ?>"
|
83 |
>
|
84 |
+
<img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-edit.svg" width="13" />
|
85 |
</button>
|
86 |
<?php
|
87 |
else :
|
88 |
?>
|
89 |
+
<button class="button zerospam-block-trigger" data-ip="<?php echo esc_attr( $ip ); ?>" aria-label="<?php esc_html_e( 'Block IP', 'zero-spam' ); ?>"><img src="<?php echo plugin_dir_url( ZEROSPAM ); ?>assets/img/icon-blocked.svg" width="13" /></button>
|
90 |
<?php
|
91 |
endif;
|
92 |
?>
|
includes/templates/admin-modal-details.php
CHANGED
@@ -15,24 +15,23 @@ if ( $submission_data ) :
|
|
15 |
endif;
|
16 |
?>
|
17 |
<div class="zerospam-modal-details">
|
18 |
-
<
|
19 |
-
<
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
<ul class="zerospam-modal-list">
|
33 |
<li>
|
34 |
-
<
|
35 |
-
<span>
|
36 |
<?php
|
37 |
$lookup_url = ZEROSPAM_URL . 'ip-lookup/';
|
38 |
$lookup_url .= rawurlencode( $item['user_ip'] ) . '/';
|
@@ -60,8 +59,8 @@ endif;
|
|
60 |
</span>
|
61 |
</li>
|
62 |
<li>
|
63 |
-
<
|
64 |
-
<span>
|
65 |
<?php
|
66 |
$detection_types = apply_filters( 'zerospam_types', array() );
|
67 |
if ( ! empty( $detection_types[ $item['log_type'] ] ) ) :
|
@@ -77,8 +76,8 @@ endif;
|
|
77 |
</li>
|
78 |
<?php if ( $submission_data && ! empty( $submission_data['failed'] ) ) : ?>
|
79 |
<li>
|
80 |
-
<
|
81 |
-
<span>
|
82 |
<?php
|
83 |
$failed_types = apply_filters( 'zerospam_failed_types', array() );
|
84 |
if ( ! empty( $failed_types[ $submission_data['failed'] ] ) ) :
|
@@ -98,9 +97,7 @@ endif;
|
|
98 |
?>
|
99 |
</ul>
|
100 |
|
101 |
-
<button class="button
|
102 |
-
<?php esc_html_e( 'Block IP', 'zero-spam' ); ?>
|
103 |
-
</button>
|
104 |
|
105 |
<?php if ( ! empty( $item['latitude'] ) && ! empty( $item['longitude'] ) ) : ?>
|
106 |
<h4 class="zerospam-modal-headline"><?php esc_html_e( 'Location', 'zero-spam' ); ?></h4>
|
@@ -108,16 +105,16 @@ endif;
|
|
108 |
$coordinates = $item['latitude'] . ',' . $item['longitude'];
|
109 |
do_action( 'zerospam_google_map', $coordinates );
|
110 |
?>
|
111 |
-
<ul class="zerospam-
|
112 |
<?php if ( ! empty( $item['country'] ) ) : ?>
|
113 |
<li>
|
114 |
-
<
|
115 |
-
<span>
|
116 |
<?php
|
117 |
$country_name = ! empty( $item['country_name'] ) ? $item['country_name'] : false;
|
118 |
-
$flag = ZeroSpam\Core\Utilities::country_flag_url( $item['country'] );
|
119 |
|
120 |
-
$country = '<img src="' .
|
121 |
if ( $country_name ) {
|
122 |
$country .= esc_html( $country_name . ' (' . $item['country'] . ')' );
|
123 |
} else {
|
@@ -128,6 +125,7 @@ endif;
|
|
128 |
$country,
|
129 |
array(
|
130 |
'img' => array(
|
|
|
131 |
'width' => array(),
|
132 |
'height' => array(),
|
133 |
'alt' => array(),
|
@@ -141,8 +139,8 @@ endif;
|
|
141 |
<?php endif; ?>
|
142 |
<?php if ( ! empty( $item['region'] ) || ! empty( $item['region_name'] ) ) : ?>
|
143 |
<li>
|
144 |
-
<
|
145 |
-
<span>
|
146 |
<?php if ( ! empty( $item['region_name'] ) ) : ?>
|
147 |
<?php echo esc_html( $item['region_name'] ); ?>
|
148 |
<?php endif; ?>
|
@@ -154,22 +152,22 @@ endif;
|
|
154 |
<?php endif; ?>
|
155 |
<?php if ( ! empty( $item['city'] ) ) : ?>
|
156 |
<li>
|
157 |
-
<
|
158 |
-
<span><?php echo esc_html( $item['city'] ); ?>
|
159 |
</span>
|
160 |
</li>
|
161 |
<?php endif; ?>
|
162 |
<?php if ( ! empty( $item['zip'] ) ) : ?>
|
163 |
<li>
|
164 |
-
<
|
165 |
-
<span><?php echo esc_html( $item['zip'] ); ?>
|
166 |
</span>
|
167 |
</li>
|
168 |
<?php endif; ?>
|
169 |
<?php if ( ! empty( $item['latitude'] ) || ! empty( $item['region_name'] ) ) : ?>
|
170 |
<li>
|
171 |
-
<
|
172 |
-
<span>
|
173 |
<?php if ( ! empty( $item['latitude'] ) ) : ?>
|
174 |
<?php echo esc_html( $item['latitude'] ); ?>°,
|
175 |
<?php endif; ?>
|
@@ -188,12 +186,12 @@ endif;
|
|
188 |
<?php
|
189 |
|
190 |
if ( $submission_data ) :
|
191 |
-
echo '<ul class="zerospam-
|
192 |
foreach ( $submission_data as $key => $value ) :
|
193 |
?>
|
194 |
<li>
|
195 |
-
<
|
196 |
-
<span>
|
197 |
<?php
|
198 |
if ( is_array( $value ) ) :
|
199 |
// Sanatize the array.
|
15 |
endif;
|
16 |
?>
|
17 |
<div class="zerospam-modal-details">
|
18 |
+
<ul class="zerospam-list zerospam-list--data">
|
19 |
+
<li>
|
20 |
+
<span class="zerospam-list__label"><?php esc_html_e( 'Date', 'zero-spam' ); ?></span>
|
21 |
+
<span class="zerospam-list__value">
|
22 |
+
<?php
|
23 |
+
echo esc_html(
|
24 |
+
gmdate(
|
25 |
+
'M j, Y g:ia',
|
26 |
+
strtotime( $item['date_recorded'] )
|
27 |
+
)
|
28 |
+
);
|
29 |
+
?>
|
30 |
+
</span>
|
31 |
+
</li>
|
|
|
32 |
<li>
|
33 |
+
<span class="zerospam-list__label"><?php esc_html_e( 'IP Address', 'zero-spam' ); ?></span>
|
34 |
+
<span class="zerospam-list__value">
|
35 |
<?php
|
36 |
$lookup_url = ZEROSPAM_URL . 'ip-lookup/';
|
37 |
$lookup_url .= rawurlencode( $item['user_ip'] ) . '/';
|
59 |
</span>
|
60 |
</li>
|
61 |
<li>
|
62 |
+
<span class="zerospam-list__label"><?php esc_html_e( 'Type', 'zero-spam' ); ?></span>
|
63 |
+
<span class="zerospam-list__value">
|
64 |
<?php
|
65 |
$detection_types = apply_filters( 'zerospam_types', array() );
|
66 |
if ( ! empty( $detection_types[ $item['log_type'] ] ) ) :
|
76 |
</li>
|
77 |
<?php if ( $submission_data && ! empty( $submission_data['failed'] ) ) : ?>
|
78 |
<li>
|
79 |
+
<span class="zerospam-list__label"><?php esc_html_e( 'Failed', 'zero-spam' ); ?></span>
|
80 |
+
<span class="zerospam-list__value">
|
81 |
<?php
|
82 |
$failed_types = apply_filters( 'zerospam_failed_types', array() );
|
83 |
if ( ! empty( $failed_types[ $submission_data['failed'] ] ) ) :
|
97 |
?>
|
98 |
</ul>
|
99 |
|
100 |
+
<button class="button zerospam-block-trigger" data-ip="<?php echo esc_attr( $item['user_ip'] ); ?>"><?php esc_html_e( 'Block IP', 'zero-spam' ); ?></button>
|
|
|
|
|
101 |
|
102 |
<?php if ( ! empty( $item['latitude'] ) && ! empty( $item['longitude'] ) ) : ?>
|
103 |
<h4 class="zerospam-modal-headline"><?php esc_html_e( 'Location', 'zero-spam' ); ?></h4>
|
105 |
$coordinates = $item['latitude'] . ',' . $item['longitude'];
|
106 |
do_action( 'zerospam_google_map', $coordinates );
|
107 |
?>
|
108 |
+
<ul class="zerospam-list zerospam-list--data">
|
109 |
<?php if ( ! empty( $item['country'] ) ) : ?>
|
110 |
<li>
|
111 |
+
<span class="zerospam-list__label"><?php esc_html_e( 'Country', 'zero-spam' ); ?></span>
|
112 |
+
<span class="zerospam-list__value">
|
113 |
<?php
|
114 |
$country_name = ! empty( $item['country_name'] ) ? $item['country_name'] : false;
|
115 |
+
$flag = \ZeroSpam\Core\Utilities::country_flag_url( $item['country'] );
|
116 |
|
117 |
+
$country = '<img src="' . $flag . '" width="16" height="16" alt="' . esc_attr( $country_name . ' (' . $item['country'] . ')' ) . '" class="zerospam-flag" />';
|
118 |
if ( $country_name ) {
|
119 |
$country .= esc_html( $country_name . ' (' . $item['country'] . ')' );
|
120 |
} else {
|
125 |
$country,
|
126 |
array(
|
127 |
'img' => array(
|
128 |
+
'src' => array(),
|
129 |
'width' => array(),
|
130 |
'height' => array(),
|
131 |
'alt' => array(),
|
139 |
<?php endif; ?>
|
140 |
<?php if ( ! empty( $item['region'] ) || ! empty( $item['region_name'] ) ) : ?>
|
141 |
<li>
|
142 |
+
<span class="zerospam-list__label"><?php esc_html_e( 'Region', 'zero-spam' ); ?></span>
|
143 |
+
<span class="zerospam-list__value">
|
144 |
<?php if ( ! empty( $item['region_name'] ) ) : ?>
|
145 |
<?php echo esc_html( $item['region_name'] ); ?>
|
146 |
<?php endif; ?>
|
152 |
<?php endif; ?>
|
153 |
<?php if ( ! empty( $item['city'] ) ) : ?>
|
154 |
<li>
|
155 |
+
<span class="zerospam-list__label"><?php echo esc_html_e( 'City', 'zero-spam' ); ?></span>
|
156 |
+
<span class="zerospam-list__value"><?php echo esc_html( $item['city'] ); ?>
|
157 |
</span>
|
158 |
</li>
|
159 |
<?php endif; ?>
|
160 |
<?php if ( ! empty( $item['zip'] ) ) : ?>
|
161 |
<li>
|
162 |
+
<span class="zerospam-list__label"><?php echo esc_html_e( 'Zip/Postal Code', 'zero-spam' ); ?></span>
|
163 |
+
<span class="zerospam-list__value"><?php echo esc_html( $item['zip'] ); ?>
|
164 |
</span>
|
165 |
</li>
|
166 |
<?php endif; ?>
|
167 |
<?php if ( ! empty( $item['latitude'] ) || ! empty( $item['region_name'] ) ) : ?>
|
168 |
<li>
|
169 |
+
<span class="zerospam-list__label"><?php echo esc_html_e( 'Coordinates', 'zero-spam' ); ?></span>
|
170 |
+
<span class="zerospam-list__value">
|
171 |
<?php if ( ! empty( $item['latitude'] ) ) : ?>
|
172 |
<?php echo esc_html( $item['latitude'] ); ?>°,
|
173 |
<?php endif; ?>
|
186 |
<?php
|
187 |
|
188 |
if ( $submission_data ) :
|
189 |
+
echo '<ul class="zerospam-list zerospam-list--data">';
|
190 |
foreach ( $submission_data as $key => $value ) :
|
191 |
?>
|
192 |
<li>
|
193 |
+
<span class="zerospam-list__label"><?php echo esc_html( $key ); ?></span>
|
194 |
+
<span class="zerospam-list__value">
|
195 |
<?php
|
196 |
if ( is_array( $value ) ) :
|
197 |
// Sanatize the array.
|
includes/templates/settings/errors.php
DELETED
@@ -1,21 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Settings: Error log template
|
4 |
-
*
|
5 |
-
* @package ZeroSpam
|
6 |
-
*/
|
7 |
-
|
8 |
-
$log = \ZeroSpam\Core\Utilities::get_error_log();
|
9 |
-
if ( ! $log ) {
|
10 |
-
esc_html_e( 'Yay! No errors have been reported.', 'zero-spam' );
|
11 |
-
return;
|
12 |
-
}
|
13 |
-
?>
|
14 |
-
|
15 |
-
<textarea readonly class="large-text code" rows="30"><?php echo esc_html( $log ); ?></textarea>
|
16 |
-
<a
|
17 |
-
href="<?php echo esc_url( wp_nonce_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings&zerospam-action=delete-error-log' ), 'delete-error-log', 'zero-spam' ) ); ?>"
|
18 |
-
class="button button-primary"
|
19 |
-
>
|
20 |
-
<?php esc_html_e( 'Clear Error Log', 'zero-spam' ); ?>
|
21 |
-
</a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/templates/settings/export.php
DELETED
@@ -1,56 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Settings: Export/import template
|
4 |
-
*
|
5 |
-
* @package ZeroSpam
|
6 |
-
*/
|
7 |
-
|
8 |
-
?>
|
9 |
-
|
10 |
-
<?php if ( ! empty( $_GET['zerospam-error'] ) ) : ?>
|
11 |
-
<div class="notice notice-error is-dismissible">
|
12 |
-
<p><strong>
|
13 |
-
<?php
|
14 |
-
switch( intval( $_GET['zerospam-error'] ) ) :
|
15 |
-
case 1:
|
16 |
-
esc_html_e( 'There was a problem importing the settings JSON. Please try again.', 'zero-spam' );
|
17 |
-
break;
|
18 |
-
endswitch;
|
19 |
-
?>
|
20 |
-
</strong></p>
|
21 |
-
<button type="button" class="notice-dismiss"><span class="screen-reader-text"><?php esc_html_e( 'Dismiss this notice.', 'zero-spam' ); ?></span></button>
|
22 |
-
</div>
|
23 |
-
<?php elseif ( ! empty( $_GET['zerospam-success'] ) ) : ?>
|
24 |
-
<div class="notice notice-success is-dismissible">
|
25 |
-
<p><strong><?php esc_html_e( 'The settings JSON has been successfully imported.', 'zero-spam' ); ?></strong></p>
|
26 |
-
<button type="button" class="notice-dismiss"><span class="screen-reader-text"><?php esc_html_e( 'Dismiss this notice.', 'zero-spam' ); ?>.</span></button>
|
27 |
-
</div>
|
28 |
-
<?php endif; ?>
|
29 |
-
|
30 |
-
<h3><?php esc_html_e( 'Settings Import/Export', 'zero-spam' ); ?></h3>
|
31 |
-
<p><?php esc_html_e( 'Quickly export and import your saved settings into other sites below.', 'zero-spam' ); ?></p>
|
32 |
-
<?php
|
33 |
-
$settings = ZeroSpam\Core\Settings::get_settings();
|
34 |
-
$settings_json = array();
|
35 |
-
foreach ( $settings as $key => $data ) :
|
36 |
-
if ( isset( $data['value'] ) ) :
|
37 |
-
$settings_json[ $key ] = $data['value'];
|
38 |
-
endif;
|
39 |
-
endforeach;
|
40 |
-
?>
|
41 |
-
<div class="zerospam-export-import-block">
|
42 |
-
<div class="zerospam-export-import-block-column">
|
43 |
-
<h4><?php esc_html_e( 'Settings JSON', 'zero-spam' ); ?></h4>
|
44 |
-
<textarea readonly class="large-text code" rows="10"><?php echo wp_json_encode( $settings_json ); ?></textarea>
|
45 |
-
</div>
|
46 |
-
<div class="zerospam-export-import-block-column">
|
47 |
-
<h4><?php esc_html_e( 'Paste the settings JSON to import.', 'zero-spam' ); ?></h4>
|
48 |
-
<form method="post" action="<?php echo esc_url( admin_url( 'admin.php' ) ); ?>" class="zerospam-import-settings-form">
|
49 |
-
<?php wp_nonce_field( 'import_settings', 'zerospam' ); ?>
|
50 |
-
<input type="hidden" name="action" value="import_settings" />
|
51 |
-
<input type="hidden" name="redirect" value="<?php echo esc_url( ZeroSpam\Core\Utilities::current_url() ); ?>" />
|
52 |
-
<textarea class="large-text code" name="settings" rows="10"></textarea>
|
53 |
-
<input type="submit" class="button button-primary" value="<?php esc_html_e( 'Import Settings', 'zero-spam' ); ?>" />
|
54 |
-
</form>
|
55 |
-
</div>
|
56 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/templates/settings/settings.php
DELETED
@@ -1,22 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Settings: Export/import template
|
4 |
-
*
|
5 |
-
* @package ZeroSpam
|
6 |
-
*/
|
7 |
-
|
8 |
-
?>
|
9 |
-
|
10 |
-
<form action="options.php" method="post">
|
11 |
-
<?php
|
12 |
-
// Output security fields for the registered setting "wpzerospam".
|
13 |
-
settings_fields( 'wpzerospam' );
|
14 |
-
|
15 |
-
echo '<div class="zerospam-settings-tabs">';
|
16 |
-
// Output setting sections and their fields.
|
17 |
-
do_settings_sections( 'wpzerospam' );
|
18 |
-
|
19 |
-
// Output save settings button.
|
20 |
-
submit_button( 'Save Settings' );
|
21 |
-
?>
|
22 |
-
</form>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
modules/class-debug.php
CHANGED
@@ -26,7 +26,7 @@ class Debug {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_get_ip', array( $this, 'debug_ip' ), 10, 1 );
|
31 |
}
|
32 |
|
@@ -56,6 +56,7 @@ class Debug {
|
|
56 |
public function sections( $sections ) {
|
57 |
$sections['debug'] = array(
|
58 |
'title' => __( 'Debug', 'zero-spam' ),
|
|
|
59 |
);
|
60 |
|
61 |
return $sections;
|
@@ -65,16 +66,18 @@ class Debug {
|
|
65 |
* Admin settings
|
66 |
*
|
67 |
* @param array $settings Array of available settings.
|
68 |
-
* @param array $options Array of saved database options.
|
69 |
*/
|
70 |
-
public function settings( $settings
|
|
|
|
|
71 |
$settings['debug'] = array(
|
72 |
'title' => __( 'Debug', 'zero-spam' ),
|
73 |
-
'desc' => __( '
|
74 |
'section' => 'debug',
|
|
|
75 |
'type' => 'checkbox',
|
76 |
'options' => array(
|
77 |
-
'enabled' =>
|
78 |
),
|
79 |
'value' => ! empty( $options['debug'] ) ? $options['debug'] : false,
|
80 |
);
|
@@ -83,12 +86,13 @@ class Debug {
|
|
83 |
'title' => __( 'Debug IP', 'zero-spam' ),
|
84 |
'desc' => wp_kses(
|
85 |
/* translators: %s: url */
|
86 |
-
__( 'Mock
|
87 |
array(
|
88 |
'strong' => array(),
|
89 |
)
|
90 |
),
|
91 |
'section' => 'debug',
|
|
|
92 |
'type' => 'text',
|
93 |
'placeholder' => '127.0.0.1',
|
94 |
'value' => ! empty( $options['debug_ip'] ) ? $options['debug_ip'] : false,
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
add_filter( 'zerospam_get_ip', array( $this, 'debug_ip' ), 10, 1 );
|
31 |
}
|
32 |
|
56 |
public function sections( $sections ) {
|
57 |
$sections['debug'] = array(
|
58 |
'title' => __( 'Debug', 'zero-spam' ),
|
59 |
+
'icon' => 'assets/img/icon-bug.svg'
|
60 |
);
|
61 |
|
62 |
return $sections;
|
66 |
* Admin settings
|
67 |
*
|
68 |
* @param array $settings Array of available settings.
|
|
|
69 |
*/
|
70 |
+
public function settings( $settings ) {
|
71 |
+
$options = get_option( 'zero-spam-debug' );
|
72 |
+
|
73 |
$settings['debug'] = array(
|
74 |
'title' => __( 'Debug', 'zero-spam' ),
|
75 |
+
'desc' => __( 'When enabled, provides verbose logging & allows the site admin to test an IP address access.', 'zero-spam' ),
|
76 |
'section' => 'debug',
|
77 |
+
'module' => 'debug',
|
78 |
'type' => 'checkbox',
|
79 |
'options' => array(
|
80 |
+
'enabled' => false,
|
81 |
),
|
82 |
'value' => ! empty( $options['debug'] ) ? $options['debug'] : false,
|
83 |
);
|
86 |
'title' => __( 'Debug IP', 'zero-spam' ),
|
87 |
'desc' => wp_kses(
|
88 |
/* translators: %s: url */
|
89 |
+
__( 'Mock an IP address for debugging. This overrides all visitor IP addresses and <strong>while enabled could block legit visitors from accessing the site</strong>.', 'zero-spam' ),
|
90 |
array(
|
91 |
'strong' => array(),
|
92 |
)
|
93 |
),
|
94 |
'section' => 'debug',
|
95 |
+
'module' => 'debug',
|
96 |
'type' => 'text',
|
97 |
'placeholder' => '127.0.0.1',
|
98 |
'value' => ! empty( $options['debug_ip'] ) ? $options['debug_ip'] : false,
|
modules/class-google.php
CHANGED
@@ -26,7 +26,7 @@ class Google {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
|
31 |
$api_key = \ZeroSpam\Core\Settings::get_settings( 'google_api' );
|
32 |
if ( ! empty( $api_key ) ) {
|
@@ -69,7 +69,8 @@ class Google {
|
|
69 |
*/
|
70 |
public function sections( $sections ) {
|
71 |
$sections['google'] = array(
|
72 |
-
'title' => __( 'Google
|
|
|
73 |
);
|
74 |
|
75 |
return $sections;
|
@@ -79,12 +80,14 @@ class Google {
|
|
79 |
* Admin settings
|
80 |
*
|
81 |
* @param array $settings Array of available settings.
|
82 |
-
* @param array $options Array of saved database options.
|
83 |
*/
|
84 |
-
public function settings( $settings
|
|
|
|
|
85 |
$settings['google_api'] = array(
|
86 |
'title' => __( 'Google API Key', 'zero-spam' ),
|
87 |
'section' => 'google',
|
|
|
88 |
'type' => 'text',
|
89 |
'field_class' => 'regular-text',
|
90 |
'placeholder' => __( 'Enter your Google API key.', 'zero-spam' ),
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
|
31 |
$api_key = \ZeroSpam\Core\Settings::get_settings( 'google_api' );
|
32 |
if ( ! empty( $api_key ) ) {
|
69 |
*/
|
70 |
public function sections( $sections ) {
|
71 |
$sections['google'] = array(
|
72 |
+
'title' => __( 'Google Map', 'zero-spam' ),
|
73 |
+
'icon' => 'assets/img/icon-google.svg'
|
74 |
);
|
75 |
|
76 |
return $sections;
|
80 |
* Admin settings
|
81 |
*
|
82 |
* @param array $settings Array of available settings.
|
|
|
83 |
*/
|
84 |
+
public function settings( $settings ) {
|
85 |
+
$options = get_option( 'zero-spam-google' );
|
86 |
+
|
87 |
$settings['google_api'] = array(
|
88 |
'title' => __( 'Google API Key', 'zero-spam' ),
|
89 |
'section' => 'google',
|
90 |
+
'module' => 'google',
|
91 |
'type' => 'text',
|
92 |
'field_class' => 'regular-text',
|
93 |
'placeholder' => __( 'Enter your Google API key.', 'zero-spam' ),
|
modules/class-ipinfomodule.php
CHANGED
@@ -28,7 +28,7 @@ class IPinfoModule {
|
|
28 |
*/
|
29 |
public function init() {
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
32 |
add_filter( 'zerospam_log_record', array( $this, 'log_record' ) );
|
33 |
}
|
34 |
|
@@ -39,7 +39,8 @@ class IPinfoModule {
|
|
39 |
*/
|
40 |
public function sections( $sections ) {
|
41 |
$sections['ipinfo'] = array(
|
42 |
-
'title' => __( 'IPinfo
|
|
|
43 |
);
|
44 |
|
45 |
return $sections;
|
@@ -49,9 +50,10 @@ class IPinfoModule {
|
|
49 |
* Admin settings
|
50 |
*
|
51 |
* @param array $settings Array of available settings.
|
52 |
-
* @param array $options Array of saved database options.
|
53 |
*/
|
54 |
-
public function settings( $settings
|
|
|
|
|
55 |
$settings['ipinfo_access_token'] = array(
|
56 |
'title' => __( 'Access Token', 'zero-spam' ),
|
57 |
'desc' => sprintf(
|
@@ -71,6 +73,7 @@ class IPinfoModule {
|
|
71 |
esc_url( 'https://ipinfo.io/signup/' )
|
72 |
),
|
73 |
'section' => 'ipinfo',
|
|
|
74 |
'type' => 'text',
|
75 |
'field_class' => 'regular-text',
|
76 |
'placeholder' => __( 'Enter your IPinfo access token.', 'zero-spam' ),
|
@@ -80,6 +83,7 @@ class IPinfoModule {
|
|
80 |
$settings['ipinfo_cache'] = array(
|
81 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
82 |
'section' => 'ipinfo',
|
|
|
83 |
'type' => 'number',
|
84 |
'field_class' => 'small-text',
|
85 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
@@ -158,9 +162,9 @@ class IPinfoModule {
|
|
158 |
$client = new IPinfo( $settings['ipinfo_access_token']['value'] );
|
159 |
$result = $client->getDetails( $ip );
|
160 |
} catch ( \ipinfo\ipinfo\IPinfoException $e ) {
|
161 |
-
\ZeroSpam\Core\Utilities::log( $e->__toString() );
|
162 |
} catch ( Exception $e ) {
|
163 |
-
\ZeroSpam\Core\Utilities::log( $e->__toString() );
|
164 |
}
|
165 |
|
166 |
if ( $result ) {
|
28 |
*/
|
29 |
public function init() {
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
32 |
add_filter( 'zerospam_log_record', array( $this, 'log_record' ) );
|
33 |
}
|
34 |
|
39 |
*/
|
40 |
public function sections( $sections ) {
|
41 |
$sections['ipinfo'] = array(
|
42 |
+
'title' => __( 'IPinfo (geolocation)', 'zero-spam' ),
|
43 |
+
'icon' => 'assets/img/icon-ipinfo.svg'
|
44 |
);
|
45 |
|
46 |
return $sections;
|
50 |
* Admin settings
|
51 |
*
|
52 |
* @param array $settings Array of available settings.
|
|
|
53 |
*/
|
54 |
+
public function settings( $settings ) {
|
55 |
+
$options = get_option( 'zero-spam-ipinfo' );
|
56 |
+
|
57 |
$settings['ipinfo_access_token'] = array(
|
58 |
'title' => __( 'Access Token', 'zero-spam' ),
|
59 |
'desc' => sprintf(
|
73 |
esc_url( 'https://ipinfo.io/signup/' )
|
74 |
),
|
75 |
'section' => 'ipinfo',
|
76 |
+
'module' => 'ipinfo',
|
77 |
'type' => 'text',
|
78 |
'field_class' => 'regular-text',
|
79 |
'placeholder' => __( 'Enter your IPinfo access token.', 'zero-spam' ),
|
83 |
$settings['ipinfo_cache'] = array(
|
84 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
85 |
'section' => 'ipinfo',
|
86 |
+
'module' => 'ipinfo',
|
87 |
'type' => 'number',
|
88 |
'field_class' => 'small-text',
|
89 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
162 |
$client = new IPinfo( $settings['ipinfo_access_token']['value'] );
|
163 |
$result = $client->getDetails( $ip );
|
164 |
} catch ( \ipinfo\ipinfo\IPinfoException $e ) {
|
165 |
+
\ZeroSpam\Core\Utilities::log( 'ipinfo: ' . $e->__toString() );
|
166 |
} catch ( Exception $e ) {
|
167 |
+
\ZeroSpam\Core\Utilities::log( 'ipinfo: ' . $e->__toString() );
|
168 |
}
|
169 |
|
170 |
if ( $result ) {
|
modules/class-ipstack.php
CHANGED
@@ -26,7 +26,7 @@ class ipstack {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_log_record', array( $this, 'log_record' ) );
|
31 |
}
|
32 |
|
@@ -37,7 +37,8 @@ class ipstack {
|
|
37 |
*/
|
38 |
public function sections( $sections ) {
|
39 |
$sections['ipstack'] = array(
|
40 |
-
'title' => __( 'ipstack
|
|
|
41 |
);
|
42 |
|
43 |
return $sections;
|
@@ -47,9 +48,10 @@ class ipstack {
|
|
47 |
* Admin settings
|
48 |
*
|
49 |
* @param array $settings Array of available settings.
|
50 |
-
* @param array $options Array of saved database options.
|
51 |
*/
|
52 |
-
public function settings( $settings
|
|
|
|
|
53 |
$settings['ipstack_api'] = array(
|
54 |
'title' => __( 'API Key', 'zero-spam' ),
|
55 |
'desc' => sprintf(
|
@@ -69,6 +71,7 @@ class ipstack {
|
|
69 |
esc_url( 'https://ipstack.com/product?fpr=zerospam' )
|
70 |
),
|
71 |
'section' => 'ipstack',
|
|
|
72 |
'type' => 'text',
|
73 |
'field_class' => 'regular-text',
|
74 |
'placeholder' => __( 'Enter your ipstack API key.', 'zero-spam' ),
|
@@ -78,6 +81,7 @@ class ipstack {
|
|
78 |
$settings['ipstack_timeout'] = array(
|
79 |
'title' => __( 'API Timeout', 'zero-spam' ),
|
80 |
'section' => 'ipstack',
|
|
|
81 |
'type' => 'number',
|
82 |
'field_class' => 'small-text',
|
83 |
'suffix' => __( 'seconds', 'zero-spam' ),
|
@@ -90,6 +94,7 @@ class ipstack {
|
|
90 |
$settings['ipstack_cache'] = array(
|
91 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
92 |
'section' => 'ipstack',
|
|
|
93 |
'type' => 'number',
|
94 |
'field_class' => 'small-text',
|
95 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
@@ -179,6 +184,12 @@ class ipstack {
|
|
179 |
if ( $response ) {
|
180 |
$result = json_decode( $response, true );
|
181 |
|
|
|
|
|
|
|
|
|
|
|
|
|
182 |
$expiration = 14 * DAY_IN_SECONDS;
|
183 |
if ( ! empty( $settings['ipstack_cache']['value'] ) ) {
|
184 |
$expiration = $settings['ipstack_cache']['value'] * DAY_IN_SECONDS;
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
add_filter( 'zerospam_log_record', array( $this, 'log_record' ) );
|
31 |
}
|
32 |
|
37 |
*/
|
38 |
public function sections( $sections ) {
|
39 |
$sections['ipstack'] = array(
|
40 |
+
'title' => __( 'ipstack (geolocation)', 'zero-spam' ),
|
41 |
+
'icon' => 'assets/img/icon-ipstack.svg'
|
42 |
);
|
43 |
|
44 |
return $sections;
|
48 |
* Admin settings
|
49 |
*
|
50 |
* @param array $settings Array of available settings.
|
|
|
51 |
*/
|
52 |
+
public function settings( $settings ) {
|
53 |
+
$options = get_option( 'zero-spam-ipstack' );
|
54 |
+
|
55 |
$settings['ipstack_api'] = array(
|
56 |
'title' => __( 'API Key', 'zero-spam' ),
|
57 |
'desc' => sprintf(
|
71 |
esc_url( 'https://ipstack.com/product?fpr=zerospam' )
|
72 |
),
|
73 |
'section' => 'ipstack',
|
74 |
+
'module' => 'ipstack',
|
75 |
'type' => 'text',
|
76 |
'field_class' => 'regular-text',
|
77 |
'placeholder' => __( 'Enter your ipstack API key.', 'zero-spam' ),
|
81 |
$settings['ipstack_timeout'] = array(
|
82 |
'title' => __( 'API Timeout', 'zero-spam' ),
|
83 |
'section' => 'ipstack',
|
84 |
+
'module' => 'ipstack',
|
85 |
'type' => 'number',
|
86 |
'field_class' => 'small-text',
|
87 |
'suffix' => __( 'seconds', 'zero-spam' ),
|
94 |
$settings['ipstack_cache'] = array(
|
95 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
96 |
'section' => 'ipstack',
|
97 |
+
'module' => 'ipstack',
|
98 |
'type' => 'number',
|
99 |
'field_class' => 'small-text',
|
100 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
184 |
if ( $response ) {
|
185 |
$result = json_decode( $response, true );
|
186 |
|
187 |
+
if ( ! empty( $result ) && ! empty( $result['error'] ) ) {
|
188 |
+
\ZeroSpam\Core\Utilities::log( 'ipstack: ' . json_encode( $result['error'] ));
|
189 |
+
|
190 |
+
return false;
|
191 |
+
}
|
192 |
+
|
193 |
$expiration = 14 * DAY_IN_SECONDS;
|
194 |
if ( ! empty( $settings['ipstack_cache']['value'] ) ) {
|
195 |
$expiration = $settings['ipstack_cache']['value'] * DAY_IN_SECONDS;
|
modules/class-projecthoneypot.php
CHANGED
@@ -26,7 +26,7 @@ class ProjectHoneypot {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
|
31 |
if ( \ZeroSpam\Core\Access::process() ) {
|
32 |
add_filter( 'zerospam_access_checks', array( $this, 'access_check' ), 10, 2 );
|
@@ -91,11 +91,6 @@ class ProjectHoneypot {
|
|
91 |
|
92 |
$response = wp_cache_get( $cache_key );
|
93 |
if ( false === $response ) {
|
94 |
-
$timeout = 5;
|
95 |
-
if ( ! empty( $settings['project_honeypot_timeout']['value'] ) ) {
|
96 |
-
$timeout = intval( $settings['project_honeypot_timeout']['value'] );
|
97 |
-
}
|
98 |
-
|
99 |
$octets = explode( '.', $ip );
|
100 |
krsort( $octets );
|
101 |
|
@@ -105,11 +100,13 @@ class ProjectHoneypot {
|
|
105 |
$dns_array = dns_get_record( $endpoint, DNS_A );
|
106 |
|
107 |
if ( ! isset( $dns_array[0]['ip'] ) ) {
|
|
|
108 |
return false;
|
109 |
}
|
110 |
|
111 |
$results = explode( '.', $dns_array[0]['ip'] );
|
112 |
if ( '127' !== $results[0] ) {
|
|
|
113 |
return false;
|
114 |
}
|
115 |
|
@@ -168,7 +165,8 @@ class ProjectHoneypot {
|
|
168 |
*/
|
169 |
public function sections( $sections ) {
|
170 |
$sections['project_honeypot'] = array(
|
171 |
-
'title' => __( 'Project Honeypot
|
|
|
172 |
);
|
173 |
|
174 |
return $sections;
|
@@ -178,12 +176,14 @@ class ProjectHoneypot {
|
|
178 |
* Admin settings
|
179 |
*
|
180 |
* @param array $settings Array of available settings.
|
181 |
-
* @param array $options Array of saved database options.
|
182 |
*/
|
183 |
-
public function settings( $settings
|
|
|
|
|
184 |
$settings['project_honeypot'] = array(
|
185 |
'title' => __( 'Status', 'zero-spam' ),
|
186 |
'section' => 'project_honeypot',
|
|
|
187 |
'type' => 'checkbox',
|
188 |
'options' => array(
|
189 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
@@ -226,6 +226,7 @@ class ProjectHoneypot {
|
|
226 |
esc_url( 'https://www.projecthoneypot.org/create_account.php' )
|
227 |
),
|
228 |
'section' => 'project_honeypot',
|
|
|
229 |
'type' => 'text',
|
230 |
'field_class' => 'regular-text',
|
231 |
'placeholder' => __( 'Enter your Project Honeypot access key.', 'zero-spam' ),
|
@@ -235,6 +236,7 @@ class ProjectHoneypot {
|
|
235 |
$settings['project_honeypot_cache'] = array(
|
236 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
237 |
'section' => 'project_honeypot',
|
|
|
238 |
'type' => 'number',
|
239 |
'field_class' => 'small-text',
|
240 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
@@ -248,6 +250,7 @@ class ProjectHoneypot {
|
|
248 |
$settings['project_honeypot_score_min'] = array(
|
249 |
'title' => __( 'Threat Score Minimum', 'zero-spam' ),
|
250 |
'section' => 'project_honeypot',
|
|
|
251 |
'type' => 'number',
|
252 |
'field_class' => 'small-text',
|
253 |
'placeholder' => __( '50', 'zero-spam' ),
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
|
31 |
if ( \ZeroSpam\Core\Access::process() ) {
|
32 |
add_filter( 'zerospam_access_checks', array( $this, 'access_check' ), 10, 2 );
|
91 |
|
92 |
$response = wp_cache_get( $cache_key );
|
93 |
if ( false === $response ) {
|
|
|
|
|
|
|
|
|
|
|
94 |
$octets = explode( '.', $ip );
|
95 |
krsort( $octets );
|
96 |
|
100 |
$dns_array = dns_get_record( $endpoint, DNS_A );
|
101 |
|
102 |
if ( ! isset( $dns_array[0]['ip'] ) ) {
|
103 |
+
\ZeroSpam\Core\Utilities::log( 'Project Honeypot Error: could not query the IP' );
|
104 |
return false;
|
105 |
}
|
106 |
|
107 |
$results = explode( '.', $dns_array[0]['ip'] );
|
108 |
if ( '127' !== $results[0] ) {
|
109 |
+
\ZeroSpam\Core\Utilities::log( 'Project Honeypot Error: query error' );
|
110 |
return false;
|
111 |
}
|
112 |
|
165 |
*/
|
166 |
public function sections( $sections ) {
|
167 |
$sections['project_honeypot'] = array(
|
168 |
+
'title' => __( 'Project Honeypot', 'zero-spam' ),
|
169 |
+
'icon' => 'assets/img/icon-honeypot.svg'
|
170 |
);
|
171 |
|
172 |
return $sections;
|
176 |
* Admin settings
|
177 |
*
|
178 |
* @param array $settings Array of available settings.
|
|
|
179 |
*/
|
180 |
+
public function settings( $settings ) {
|
181 |
+
$options = get_option( 'zero-spam-project_honeypot' );
|
182 |
+
|
183 |
$settings['project_honeypot'] = array(
|
184 |
'title' => __( 'Status', 'zero-spam' ),
|
185 |
'section' => 'project_honeypot',
|
186 |
+
'module' => 'project_honeypot',
|
187 |
'type' => 'checkbox',
|
188 |
'options' => array(
|
189 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
226 |
esc_url( 'https://www.projecthoneypot.org/create_account.php' )
|
227 |
),
|
228 |
'section' => 'project_honeypot',
|
229 |
+
'module' => 'project_honeypot',
|
230 |
'type' => 'text',
|
231 |
'field_class' => 'regular-text',
|
232 |
'placeholder' => __( 'Enter your Project Honeypot access key.', 'zero-spam' ),
|
236 |
$settings['project_honeypot_cache'] = array(
|
237 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
238 |
'section' => 'project_honeypot',
|
239 |
+
'module' => 'project_honeypot',
|
240 |
'type' => 'number',
|
241 |
'field_class' => 'small-text',
|
242 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
250 |
$settings['project_honeypot_score_min'] = array(
|
251 |
'title' => __( 'Threat Score Minimum', 'zero-spam' ),
|
252 |
'section' => 'project_honeypot',
|
253 |
+
'module' => 'project_honeypot',
|
254 |
'type' => 'number',
|
255 |
'field_class' => 'small-text',
|
256 |
'placeholder' => __( '50', 'zero-spam' ),
|
modules/class-security.php
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Site security
|
4 |
+
*
|
5 |
+
* Implement Zero Spam's recommended WordPress security practices.
|
6 |
+
*
|
7 |
+
* @package ZeroSpam
|
8 |
+
*/
|
9 |
+
|
10 |
+
namespace ZeroSpam\Modules;
|
11 |
+
|
12 |
+
// Security Note: Blocks direct access to the plugin PHP files.
|
13 |
+
defined( 'ABSPATH' ) || die();
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Security class
|
17 |
+
*/
|
18 |
+
class Security {
|
19 |
+
/**
|
20 |
+
* Constructor
|
21 |
+
*/
|
22 |
+
public function __construct() {
|
23 |
+
// It can be considered a security risk to make your WP version visible &
|
24 |
+
// public you should hide it.
|
25 |
+
remove_action( 'wp_head', 'wp_generator' );
|
26 |
+
|
27 |
+
// XML-RPC can significantly amplify the brute-force attacks.
|
28 |
+
add_filter( 'xmlrpc_enabled', '__return_false' );
|
29 |
+
}
|
30 |
+
}
|
modules/class-stopforumspam.php
CHANGED
@@ -26,7 +26,7 @@ class StopForumSpam {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
|
31 |
if (
|
32 |
'enabled' === \ZeroSpam\Core\Settings::get_settings( 'stop_forum_spam' ) &&
|
@@ -45,7 +45,8 @@ class StopForumSpam {
|
|
45 |
*/
|
46 |
public function sections( $sections ) {
|
47 |
$sections['stop_forum_spam'] = array(
|
48 |
-
'title' => __( 'Stop Forum Spam
|
|
|
49 |
);
|
50 |
|
51 |
return $sections;
|
@@ -55,12 +56,14 @@ class StopForumSpam {
|
|
55 |
* Admin settings
|
56 |
*
|
57 |
* @param array $settings Array of available settings.
|
58 |
-
* @param array $options Array of saved database options.
|
59 |
*/
|
60 |
-
public function settings( $settings
|
|
|
|
|
61 |
$settings['stop_forum_spam'] = array(
|
62 |
'title' => __( 'Status', 'zero-spam' ),
|
63 |
'section' => 'stop_forum_spam',
|
|
|
64 |
'type' => 'checkbox',
|
65 |
'options' => array(
|
66 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
@@ -87,6 +90,7 @@ class StopForumSpam {
|
|
87 |
$settings['stop_forum_spam_timeout'] = array(
|
88 |
'title' => __( 'API Timeout', 'zero-spam' ),
|
89 |
'section' => 'stop_forum_spam',
|
|
|
90 |
'type' => 'number',
|
91 |
'field_class' => 'small-text',
|
92 |
'suffix' => __( 'seconds', 'zero-spam' ),
|
@@ -100,6 +104,7 @@ class StopForumSpam {
|
|
100 |
$settings['stop_forum_spam_cache'] = array(
|
101 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
102 |
'section' => 'stop_forum_spam',
|
|
|
103 |
'type' => 'number',
|
104 |
'field_class' => 'small-text',
|
105 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
@@ -113,6 +118,7 @@ class StopForumSpam {
|
|
113 |
$settings['stop_forum_spam_confidence_min'] = array(
|
114 |
'title' => __( 'Confidence Minimum', 'zero-spam' ),
|
115 |
'section' => 'stop_forum_spam',
|
|
|
116 |
'type' => 'number',
|
117 |
'field_class' => 'small-text',
|
118 |
'suffix' => __( '%', 'zero-spam' ),
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
|
31 |
if (
|
32 |
'enabled' === \ZeroSpam\Core\Settings::get_settings( 'stop_forum_spam' ) &&
|
45 |
*/
|
46 |
public function sections( $sections ) {
|
47 |
$sections['stop_forum_spam'] = array(
|
48 |
+
'title' => __( 'Stop Forum Spam', 'zero-spam' ),
|
49 |
+
'icon' => 'assets/img/icon-stop-forum-spam.png'
|
50 |
);
|
51 |
|
52 |
return $sections;
|
56 |
* Admin settings
|
57 |
*
|
58 |
* @param array $settings Array of available settings.
|
|
|
59 |
*/
|
60 |
+
public function settings( $settings ) {
|
61 |
+
$options = get_option( 'zero-spam-stop_forum_spam' );
|
62 |
+
|
63 |
$settings['stop_forum_spam'] = array(
|
64 |
'title' => __( 'Status', 'zero-spam' ),
|
65 |
'section' => 'stop_forum_spam',
|
66 |
+
'module' => 'stop_forum_spam',
|
67 |
'type' => 'checkbox',
|
68 |
'options' => array(
|
69 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
90 |
$settings['stop_forum_spam_timeout'] = array(
|
91 |
'title' => __( 'API Timeout', 'zero-spam' ),
|
92 |
'section' => 'stop_forum_spam',
|
93 |
+
'module' => 'stop_forum_spam',
|
94 |
'type' => 'number',
|
95 |
'field_class' => 'small-text',
|
96 |
'suffix' => __( 'seconds', 'zero-spam' ),
|
104 |
$settings['stop_forum_spam_cache'] = array(
|
105 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
106 |
'section' => 'stop_forum_spam',
|
107 |
+
'module' => 'stop_forum_spam',
|
108 |
'type' => 'number',
|
109 |
'field_class' => 'small-text',
|
110 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
118 |
$settings['stop_forum_spam_confidence_min'] = array(
|
119 |
'title' => __( 'Confidence Minimum', 'zero-spam' ),
|
120 |
'section' => 'stop_forum_spam',
|
121 |
+
'module' => 'stop_forum_spam',
|
122 |
'type' => 'number',
|
123 |
'field_class' => 'small-text',
|
124 |
'suffix' => __( '%', 'zero-spam' ),
|
modules/class-zerospam.php
CHANGED
@@ -32,11 +32,7 @@ class Zero_Spam {
|
|
32 |
*/
|
33 |
public function init() {
|
34 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
35 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
36 |
-
|
37 |
-
// Displays any available admin notices.
|
38 |
-
add_action( 'admin_notices', array( $this, 'admin_notices' ) );
|
39 |
-
add_action( 'admin_init', array( $this, 'check_notice_dismissal' ) );
|
40 |
|
41 |
// Fires when a user submission has been detected as spam.
|
42 |
add_action( 'zerospam_share_detection', array( $this, 'share_detection' ), 10, 1 );
|
@@ -94,7 +90,8 @@ class Zero_Spam {
|
|
94 |
*/
|
95 |
public function sections( $sections ) {
|
96 |
$sections['zerospam'] = array(
|
97 |
-
'title' => __( '
|
|
|
98 |
);
|
99 |
|
100 |
return $sections;
|
@@ -104,36 +101,14 @@ class Zero_Spam {
|
|
104 |
* Admin settings
|
105 |
*
|
106 |
* @param array $settings Array of available settings.
|
107 |
-
* @param array $options Array of saved database options.
|
108 |
*/
|
109 |
-
public function settings( $settings
|
110 |
-
$
|
111 |
-
'section' => 'zerospam',
|
112 |
-
'type' => 'html',
|
113 |
-
'html' => sprintf(
|
114 |
-
wp_kses(
|
115 |
-
/* translators: %1s: Replaced with the Zero Spam URL, %2$s: Replaced with the DDoD attack wiki URL */
|
116 |
-
__( '<h3 style="margin-top: 0">Enabling enhanced protection is highly recommended.</h3><p>Enhanced protection adds additional checks using one of the largest, most comprehensive, constantly-growing global malicious IP, email, and username databases available, the <a href="%1$s" target="_blank" rel="noopener noreferrer">Zero Spam Blacklist</a>. Once enabled, all visitors will be checked against this blacklist that includes protected forms containing email and username fields — giving you the peace of mind that submissions are coming from legitimate. It can also help prevent <a href="%2$s" target="_blank" rel="noopener noreferrer">DDoS attacks</a> & fraudsters looking to test stolen credit card numbers.</p>', 'zero-spam' ),
|
117 |
-
array(
|
118 |
-
'h3' => array(
|
119 |
-
'style' => array(),
|
120 |
-
),
|
121 |
-
'p' => array(),
|
122 |
-
'a' => array(
|
123 |
-
'href' => array(),
|
124 |
-
'class' => array(),
|
125 |
-
),
|
126 |
-
'strong' => array(),
|
127 |
-
)
|
128 |
-
),
|
129 |
-
esc_url( ZEROSPAM_URL . '?utm_source=' . site_url() . '&utm_medium=admin_zerospam_info&utm_campaign=wpzerospam' ),
|
130 |
-
esc_url( 'https://en.wikipedia.org/wiki/Denial-of-service_attack' )
|
131 |
-
),
|
132 |
-
);
|
133 |
|
134 |
$settings['zerospam'] = array(
|
135 |
'title' => __( 'Status', 'zero-spam' ),
|
136 |
'section' => 'zerospam',
|
|
|
137 |
'type' => 'checkbox',
|
138 |
'options' => array(
|
139 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
@@ -178,6 +153,7 @@ class Zero_Spam {
|
|
178 |
esc_url( ZEROSPAM_URL . 'product/premium/' )
|
179 |
),
|
180 |
'section' => 'zerospam',
|
|
|
181 |
'type' => 'text',
|
182 |
'field_class' => 'regular-text',
|
183 |
'placeholder' => __( 'Enter your Zero Spam license key.', 'zero-spam' ),
|
@@ -191,6 +167,7 @@ class Zero_Spam {
|
|
191 |
$settings['zerospam_timeout'] = array(
|
192 |
'title' => __( 'API Timeout', 'zero-spam' ),
|
193 |
'section' => 'zerospam',
|
|
|
194 |
'type' => 'number',
|
195 |
'field_class' => 'small-text',
|
196 |
'suffix' => __( 'seconds', 'zero-spam' ),
|
@@ -204,6 +181,7 @@ class Zero_Spam {
|
|
204 |
$settings['zerospam_cache'] = array(
|
205 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
206 |
'section' => 'zerospam',
|
|
|
207 |
'type' => 'number',
|
208 |
'field_class' => 'small-text',
|
209 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
@@ -217,6 +195,7 @@ class Zero_Spam {
|
|
217 |
$settings['zerospam_confidence_min'] = array(
|
218 |
'title' => __( 'Confidence Minimum', 'zero-spam' ),
|
219 |
'section' => 'zerospam',
|
|
|
220 |
'type' => 'number',
|
221 |
'field_class' => 'small-text',
|
222 |
'suffix' => __( '%', 'zero-spam' ),
|
@@ -304,7 +283,7 @@ class Zero_Spam {
|
|
304 |
// Add specially defined data to the API report.
|
305 |
|
306 |
// From comments.
|
307 |
-
if ( ! empty( $data['comment_author_email'] ) && is_email( $data['comment_author_email'] ) ) {
|
308 |
$api_data['email_address'] = sanitize_email( $data['comment_author_email'] );
|
309 |
|
310 |
if ( ! empty( $data['comment_author'] ) ) {
|
@@ -313,30 +292,30 @@ class Zero_Spam {
|
|
313 |
}
|
314 |
|
315 |
// From registration.
|
316 |
-
if ( ! empty( $data['user_email'] ) && is_email( $data['user_email'] ) ) {
|
317 |
$api_data['email_address'] = sanitize_email( $data['user_email'] );
|
318 |
}
|
319 |
|
320 |
// From WooCommerce registration.
|
321 |
-
if ( ! empty( $data['email'] ) && is_email( $data['email'] ) ) {
|
322 |
$api_data['email_address'] = sanitize_email( $data['email'] );
|
323 |
}
|
324 |
|
325 |
if ( ! empty( $data['post'] ) ) {
|
326 |
// From MemberPress.
|
327 |
-
if ( ! empty( $data['post']['user_email'] ) && is_email( $data['post']['user_email'] ) ) {
|
328 |
$api_data['email_address'] = sanitize_email( $data['post']['user_email'] );
|
329 |
}
|
330 |
|
331 |
// From Mailchimp for WordPress.
|
332 |
-
if ( ! empty( $data['post']['EMAIL'] ) && is_email( $data['post']['EMAIL'] ) ) {
|
333 |
$api_data['email_address'] = sanitize_email( $data['post']['EMAIL'] );
|
334 |
}
|
335 |
}
|
336 |
|
337 |
if ( ! empty( $data['data'] ) ) {
|
338 |
// From GiveWP.
|
339 |
-
if ( ! empty( $data['data']['give_email'] ) && is_email( $data['data']['give_email'] ) ) {
|
340 |
$api_data['email_address'] = sanitize_email( $data['post']['give_email'] );
|
341 |
}
|
342 |
}
|
@@ -365,6 +344,10 @@ class Zero_Spam {
|
|
365 |
* @param string $license The license key.
|
366 |
*/
|
367 |
public static function get_license( $license ) {
|
|
|
|
|
|
|
|
|
368 |
$cache_key = sanitize_title( 'license_' . $license );
|
369 |
$license_data = wp_cache_get( $cache_key );
|
370 |
if ( false === $license_data ) {
|
@@ -378,6 +361,10 @@ class Zero_Spam {
|
|
378 |
if ( $license_data ) {
|
379 |
$license_data = json_decode( $license_data, true );
|
380 |
|
|
|
|
|
|
|
|
|
381 |
if ( ! empty( $license_data['license_key'] ) ) {
|
382 |
$expiration = 1 * MONTH_IN_SECONDS;
|
383 |
wp_cache_set( $cache_key, $license_data, 'zero_spam_store', $expiration );
|
@@ -388,113 +375,6 @@ class Zero_Spam {
|
|
388 |
return $license_data;
|
389 |
}
|
390 |
|
391 |
-
/**
|
392 |
-
* Checks if a notice should be dismissed.
|
393 |
-
*/
|
394 |
-
public function check_notice_dismissal() {
|
395 |
-
$user_id = get_current_user_id();
|
396 |
-
|
397 |
-
// @codingStandardsIgnoreLine
|
398 |
-
if ( isset( $_GET['zero-spam-dismiss-notice-enhanced-protection'] ) ) {
|
399 |
-
update_user_meta( $user_id, 'zero_spam_dismiss_notice_enhanced_protection', current_time( 'mysql' ) );
|
400 |
-
// @codingStandardsIgnoreLine
|
401 |
-
} elseif ( isset( $_GET['zero-spam-dismiss-notice-license'] ) ) {
|
402 |
-
update_user_meta( $user_id, 'zero_spam_dismiss_notice_missing_license', current_time( 'mysql' ) );
|
403 |
-
}
|
404 |
-
}
|
405 |
-
|
406 |
-
/**
|
407 |
-
* Outputs any available admin notices.
|
408 |
-
*/
|
409 |
-
public function admin_notices() {
|
410 |
-
// Only display notices for administrators.
|
411 |
-
if ( ! current_user_can( 'administrator' ) ) {
|
412 |
-
return;
|
413 |
-
}
|
414 |
-
|
415 |
-
$settings = \ZeroSpam\Core\Settings::get_settings();
|
416 |
-
$user_id = get_current_user_id();
|
417 |
-
|
418 |
-
$is_zerospam_enabled = 'enabled' === $settings['zerospam']['value'] ? true : false;
|
419 |
-
|
420 |
-
$classes = array();
|
421 |
-
|
422 |
-
if ( $is_zerospam_enabled ) {
|
423 |
-
$license = ! empty( $settings['zerospam_license']['value'] ) ? $settings['zerospam_license']['value'] : false;
|
424 |
-
if ( ! $license ) {
|
425 |
-
|
426 |
-
$message_dismissed = get_user_meta( $user_id, 'zero_spam_dismiss_notice_missing_license', true );
|
427 |
-
|
428 |
-
if ( $message_dismissed ) {
|
429 |
-
$days_since_last_dismissed = \ZeroSpam\Core\Utilities::time_since( $message_dismissed, current_time( 'mysql' ), 'd' );
|
430 |
-
|
431 |
-
if ( $days_since_last_dismissed <= 7 ) {
|
432 |
-
return;
|
433 |
-
}
|
434 |
-
}
|
435 |
-
} else {
|
436 |
-
// Check license.
|
437 |
-
$license_data = self::get_license( $license );
|
438 |
-
if ( ! empty( $license_data['license_key'] ) ) {
|
439 |
-
return;
|
440 |
-
}
|
441 |
-
}
|
442 |
-
|
443 |
-
$classes[] = 'notice-error';
|
444 |
-
|
445 |
-
$content = '<p>' . sprintf(
|
446 |
-
wp_kses(
|
447 |
-
/* translators: %1$s: Zero Spam settings URL, %2$s: dismiss message URL */
|
448 |
-
__( '<strong>Your site is vulnerable to attacks.</strong> Please enter a valid <a href="%1$s" target="_blank" rel="noreferrer noopener"><strong>Zero Spam license key</strong></a> under <a href="%2$s">Zero Spam Enhanced Protection</a> or disable the Zero Spam Enhanced Protection option to dismiss this message.', 'zero-spam' ),
|
449 |
-
array(
|
450 |
-
'strong' => array(),
|
451 |
-
'a' => array(
|
452 |
-
'href' => array(),
|
453 |
-
),
|
454 |
-
)
|
455 |
-
),
|
456 |
-
esc_url( esc_url( ZEROSPAM_URL . 'subscribe/' ), ),
|
457 |
-
esc_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings' ) ),
|
458 |
-
esc_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings&zero-spam-dismiss-notice-license' ) ),
|
459 |
-
) . '</p>';
|
460 |
-
} else {
|
461 |
-
$message_dismissed = get_user_meta( $user_id, 'zero_spam_dismiss_notice_enhanced_protection', true );
|
462 |
-
|
463 |
-
if ( $message_dismissed ) {
|
464 |
-
$days_since_last_dismissed = \ZeroSpam\Core\Utilities::time_since( $message_dismissed, current_time( 'mysql' ), 'd' );
|
465 |
-
|
466 |
-
if ( $days_since_last_dismissed <= 365 ) {
|
467 |
-
return false;
|
468 |
-
}
|
469 |
-
}
|
470 |
-
|
471 |
-
$classes[] = 'notice-warning';
|
472 |
-
|
473 |
-
$content = '<p>' . sprintf(
|
474 |
-
wp_kses(
|
475 |
-
/* translators: %1$s: Zero Spam settings URL, %2$s: dismiss message URL */
|
476 |
-
__( '<strong>Your site isn\'t taking full advantage of Zero Spam protection.</strong> For enhanced protection, please enable <a href="%1$s"><strong>Zero Spam Enhanced Protection</strong></a>. <a href="%2$s">Dismiss</a>', 'zero-spam' ),
|
477 |
-
array(
|
478 |
-
'strong' => array(),
|
479 |
-
'a' => array(
|
480 |
-
'href' => array(),
|
481 |
-
),
|
482 |
-
)
|
483 |
-
),
|
484 |
-
esc_url( admin_url( 'options-general.php?page=wordpress-zero-spam-settings' ) ),
|
485 |
-
esc_url( \ZeroSpam\Core\Utilities::current_url( array( 'zero-spam-dismiss-notice-enhanced-protection' ) ) ),
|
486 |
-
) . '</p>';
|
487 |
-
}
|
488 |
-
?>
|
489 |
-
<div class="notice <?php echo implode( ' ', $classes ); ?>">
|
490 |
-
<?php
|
491 |
-
// @codingStandardsIgnoreLine
|
492 |
-
echo $content;
|
493 |
-
?>
|
494 |
-
</div>
|
495 |
-
<?php
|
496 |
-
}
|
497 |
-
|
498 |
/**
|
499 |
* Query the Zero Spam Blacklist API
|
500 |
*
|
@@ -522,13 +402,14 @@ class Zero_Spam {
|
|
522 |
if ( false === $response ) {
|
523 |
// Limit the number of requests.
|
524 |
$last_query_option = get_site_option( 'zero_spam_last_api_query', false );
|
|
|
525 |
if ( $last_query_option ) {
|
526 |
list( $first_query_date, $num_queries) = explode( '*', $last_query_option );
|
527 |
|
528 |
if ( gmdate( 'Y-m-d', strtotime( $first_query_date ) ) !== gmdate( 'Y-m-d' ) ) {
|
529 |
// New day.
|
530 |
update_site_option( 'zero_spam_last_api_query', current_time( 'mysql' ) . '*1' );
|
531 |
-
} elseif ( $num_queries >
|
532 |
return false;
|
533 |
} else {
|
534 |
update_site_option( 'zero_spam_last_api_query', $first_query_date . '*' . ( $num_queries+1 ) );
|
32 |
*/
|
33 |
public function init() {
|
34 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
35 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
|
|
|
|
|
|
|
|
36 |
|
37 |
// Fires when a user submission has been detected as spam.
|
38 |
add_action( 'zerospam_share_detection', array( $this, 'share_detection' ), 10, 1 );
|
90 |
*/
|
91 |
public function sections( $sections ) {
|
92 |
$sections['zerospam'] = array(
|
93 |
+
'title' => __( 'Enhanced Protection', 'zero-spam' ),
|
94 |
+
'icon' => 'assets/img/icon.svg'
|
95 |
);
|
96 |
|
97 |
return $sections;
|
101 |
* Admin settings
|
102 |
*
|
103 |
* @param array $settings Array of available settings.
|
|
|
104 |
*/
|
105 |
+
public function settings( $settings ) {
|
106 |
+
$options = get_option( 'zero-spam-zerospam' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
107 |
|
108 |
$settings['zerospam'] = array(
|
109 |
'title' => __( 'Status', 'zero-spam' ),
|
110 |
'section' => 'zerospam',
|
111 |
+
'module' => 'zerospam',
|
112 |
'type' => 'checkbox',
|
113 |
'options' => array(
|
114 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
153 |
esc_url( ZEROSPAM_URL . 'product/premium/' )
|
154 |
),
|
155 |
'section' => 'zerospam',
|
156 |
+
'module' => 'zerospam',
|
157 |
'type' => 'text',
|
158 |
'field_class' => 'regular-text',
|
159 |
'placeholder' => __( 'Enter your Zero Spam license key.', 'zero-spam' ),
|
167 |
$settings['zerospam_timeout'] = array(
|
168 |
'title' => __( 'API Timeout', 'zero-spam' ),
|
169 |
'section' => 'zerospam',
|
170 |
+
'module' => 'zerospam',
|
171 |
'type' => 'number',
|
172 |
'field_class' => 'small-text',
|
173 |
'suffix' => __( 'seconds', 'zero-spam' ),
|
181 |
$settings['zerospam_cache'] = array(
|
182 |
'title' => __( 'Cache Expiration', 'zero-spam' ),
|
183 |
'section' => 'zerospam',
|
184 |
+
'module' => 'zerospam',
|
185 |
'type' => 'number',
|
186 |
'field_class' => 'small-text',
|
187 |
'suffix' => __( 'day(s)', 'zero-spam' ),
|
195 |
$settings['zerospam_confidence_min'] = array(
|
196 |
'title' => __( 'Confidence Minimum', 'zero-spam' ),
|
197 |
'section' => 'zerospam',
|
198 |
+
'module' => 'zerospam',
|
199 |
'type' => 'number',
|
200 |
'field_class' => 'small-text',
|
201 |
'suffix' => __( '%', 'zero-spam' ),
|
283 |
// Add specially defined data to the API report.
|
284 |
|
285 |
// From comments.
|
286 |
+
if ( ! empty( $data['comment_author_email'] ) && \ZeroSpam\Core\Utilities::is_email( $data['comment_author_email'] ) ) {
|
287 |
$api_data['email_address'] = sanitize_email( $data['comment_author_email'] );
|
288 |
|
289 |
if ( ! empty( $data['comment_author'] ) ) {
|
292 |
}
|
293 |
|
294 |
// From registration.
|
295 |
+
if ( ! empty( $data['user_email'] ) && \ZeroSpam\Core\Utilities::is_email( $data['user_email'] ) ) {
|
296 |
$api_data['email_address'] = sanitize_email( $data['user_email'] );
|
297 |
}
|
298 |
|
299 |
// From WooCommerce registration.
|
300 |
+
if ( ! empty( $data['email'] ) && \ZeroSpam\Core\Utilities::is_email( $data['email'] ) ) {
|
301 |
$api_data['email_address'] = sanitize_email( $data['email'] );
|
302 |
}
|
303 |
|
304 |
if ( ! empty( $data['post'] ) ) {
|
305 |
// From MemberPress.
|
306 |
+
if ( ! empty( $data['post']['user_email'] ) && \ZeroSpam\Core\Utilities::is_email( $data['post']['user_email'] ) ) {
|
307 |
$api_data['email_address'] = sanitize_email( $data['post']['user_email'] );
|
308 |
}
|
309 |
|
310 |
// From Mailchimp for WordPress.
|
311 |
+
if ( ! empty( $data['post']['EMAIL'] ) && \ZeroSpam\Core\Utilities::is_email( $data['post']['EMAIL'] ) ) {
|
312 |
$api_data['email_address'] = sanitize_email( $data['post']['EMAIL'] );
|
313 |
}
|
314 |
}
|
315 |
|
316 |
if ( ! empty( $data['data'] ) ) {
|
317 |
// From GiveWP.
|
318 |
+
if ( ! empty( $data['data']['give_email'] ) && \ZeroSpam\Core\Utilities::is_email( $data['data']['give_email'] ) ) {
|
319 |
$api_data['email_address'] = sanitize_email( $data['post']['give_email'] );
|
320 |
}
|
321 |
}
|
344 |
* @param string $license The license key.
|
345 |
*/
|
346 |
public static function get_license( $license ) {
|
347 |
+
if ( strpos( $license, 'invalid' ) !== false ) {
|
348 |
+
return false;
|
349 |
+
}
|
350 |
+
|
351 |
$cache_key = sanitize_title( 'license_' . $license );
|
352 |
$license_data = wp_cache_get( $cache_key );
|
353 |
if ( false === $license_data ) {
|
361 |
if ( $license_data ) {
|
362 |
$license_data = json_decode( $license_data, true );
|
363 |
|
364 |
+
if ( empty( $license_data['license_key'] ) ) {
|
365 |
+
\ZeroSpam\Core\Utilities::log( 'Zero Spam License Check: ' . $license_data['response'] );
|
366 |
+
}
|
367 |
+
|
368 |
if ( ! empty( $license_data['license_key'] ) ) {
|
369 |
$expiration = 1 * MONTH_IN_SECONDS;
|
370 |
wp_cache_set( $cache_key, $license_data, 'zero_spam_store', $expiration );
|
375 |
return $license_data;
|
376 |
}
|
377 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
378 |
/**
|
379 |
* Query the Zero Spam Blacklist API
|
380 |
*
|
402 |
if ( false === $response ) {
|
403 |
// Limit the number of requests.
|
404 |
$last_query_option = get_site_option( 'zero_spam_last_api_query', false );
|
405 |
+
|
406 |
if ( $last_query_option ) {
|
407 |
list( $first_query_date, $num_queries) = explode( '*', $last_query_option );
|
408 |
|
409 |
if ( gmdate( 'Y-m-d', strtotime( $first_query_date ) ) !== gmdate( 'Y-m-d' ) ) {
|
410 |
// New day.
|
411 |
update_site_option( 'zero_spam_last_api_query', current_time( 'mysql' ) . '*1' );
|
412 |
+
} elseif ( $num_queries > 100 ) {
|
413 |
return false;
|
414 |
} else {
|
415 |
update_site_option( 'zero_spam_last_api_query', $first_query_date . '*' . ( $num_queries+1 ) );
|
modules/comments/class-comments.php
CHANGED
@@ -1,6 +1,13 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Comments
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -28,14 +35,14 @@ class Comments {
|
|
28 |
*/
|
29 |
public function init() {
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
32 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
33 |
|
34 |
if (
|
35 |
'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_comments' ) &&
|
36 |
\ZeroSpam\Core\Access::process()
|
37 |
) {
|
38 |
-
add_action( 'comment_form_before', array( $this, '
|
39 |
add_filter( 'comment_form_defaults', array( $this, 'honeypot' ) );
|
40 |
add_action( 'preprocess_comment', array( $this, 'preprocess_comments' ) );
|
41 |
}
|
@@ -55,8 +62,15 @@ class Comments {
|
|
55 |
/**
|
56 |
* Load the scripts
|
57 |
*/
|
58 |
-
public function
|
59 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
}
|
61 |
|
62 |
/**
|
@@ -89,6 +103,11 @@ class Comments {
|
|
89 |
$validation_errors[] = 'honeypot';
|
90 |
}
|
91 |
|
|
|
|
|
|
|
|
|
|
|
92 |
// Check blocked email domains.
|
93 |
if (
|
94 |
! empty( $commentdata['comment_author_email'] ) &&
|
@@ -186,7 +205,9 @@ class Comments {
|
|
186 |
*/
|
187 |
public function sections( $sections ) {
|
188 |
$sections['comments'] = array(
|
189 |
-
'title'
|
|
|
|
|
190 |
);
|
191 |
|
192 |
return $sections;
|
@@ -196,15 +217,18 @@ class Comments {
|
|
196 |
* Admin settings
|
197 |
*
|
198 |
* @param array $settings Array of available settings.
|
199 |
-
* @param array $options Array of saved database options.
|
200 |
*/
|
201 |
-
public function settings( $settings
|
|
|
|
|
202 |
$settings['verify_comments'] = array(
|
203 |
'title' => __( 'Protect Comments', 'zero-spam' ),
|
|
|
204 |
'section' => 'comments',
|
|
|
205 |
'type' => 'checkbox',
|
206 |
'options' => array(
|
207 |
-
'enabled' =>
|
208 |
),
|
209 |
'value' => ! empty( $options['verify_comments'] ) ? $options['verify_comments'] : false,
|
210 |
'recommended' => 'enabled',
|
@@ -213,9 +237,10 @@ class Comments {
|
|
213 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
214 |
|
215 |
$settings['comment_spam_message'] = array(
|
216 |
-
'title' => __( '
|
217 |
-
'desc' => __( '
|
218 |
'section' => 'comments',
|
|
|
219 |
'type' => 'text',
|
220 |
'field_class' => 'large-text',
|
221 |
'placeholder' => $message,
|
@@ -226,13 +251,14 @@ class Comments {
|
|
226 |
$settings['log_blocked_comments'] = array(
|
227 |
'title' => __( 'Log Blocked Comments', 'zero-spam' ),
|
228 |
'section' => 'comments',
|
|
|
229 |
'type' => 'checkbox',
|
230 |
'desc' => wp_kses(
|
231 |
-
__( '
|
232 |
array( 'strong' => array() )
|
233 |
),
|
234 |
'options' => array(
|
235 |
-
'enabled' =>
|
236 |
),
|
237 |
'value' => ! empty( $options['log_blocked_comments'] ) ? $options['log_blocked_comments'] : false,
|
238 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Comments integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Checks blocked email domains (author email)
|
9 |
+
* 3. Uses the David Walsh technique
|
10 |
+
* 4. Checks against the disallowed words list
|
11 |
*
|
12 |
* @package ZeroSpam
|
13 |
*/
|
35 |
*/
|
36 |
public function init() {
|
37 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
38 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
39 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
40 |
|
41 |
if (
|
42 |
'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_comments' ) &&
|
43 |
\ZeroSpam\Core\Access::process()
|
44 |
) {
|
45 |
+
add_action( 'comment_form_before', array( $this, 'add_scripts' ) );
|
46 |
add_filter( 'comment_form_defaults', array( $this, 'honeypot' ) );
|
47 |
add_action( 'preprocess_comment', array( $this, 'preprocess_comments' ) );
|
48 |
}
|
62 |
/**
|
63 |
* Load the scripts
|
64 |
*/
|
65 |
+
public function add_scripts() {
|
66 |
+
// Only add scripts to the appropriate pages.
|
67 |
+
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_comments' ) ) {
|
68 |
+
wp_enqueue_script( 'zerospam-davidwalsh' );
|
69 |
+
add_action( 'wp_footer', function() {
|
70 |
+
// .wpd_comm_form for the wpDiscuz plugin
|
71 |
+
echo '<script type="text/javascript">jQuery(".comment-form, #commentform, .wpd_comm_form").ZeroSpamDavidWalsh();</script>';
|
72 |
+
}, 999 );
|
73 |
+
}
|
74 |
}
|
75 |
|
76 |
/**
|
103 |
$validation_errors[] = 'honeypot';
|
104 |
}
|
105 |
|
106 |
+
// Check email.
|
107 |
+
if ( ! empty( $commentdata['comment_author_email'] ) && ! \ZeroSpam\Core\Utilities::is_email( $commentdata['comment_author_email'] ) ) {
|
108 |
+
$validation_errors[] = 'invalid_email';
|
109 |
+
}
|
110 |
+
|
111 |
// Check blocked email domains.
|
112 |
if (
|
113 |
! empty( $commentdata['comment_author_email'] ) &&
|
205 |
*/
|
206 |
public function sections( $sections ) {
|
207 |
$sections['comments'] = array(
|
208 |
+
'title' => __( 'Comments', 'zero-spam' ),
|
209 |
+
'icon' => 'assets/img/icon-wordpress.svg',
|
210 |
+
'supports' => array( 'honeypot', 'email', 'davidwalsh', 'words' ),
|
211 |
);
|
212 |
|
213 |
return $sections;
|
217 |
* Admin settings
|
218 |
*
|
219 |
* @param array $settings Array of available settings.
|
|
|
220 |
*/
|
221 |
+
public function settings( $settings ) {
|
222 |
+
$options = get_option( 'zero-spam-comments' );
|
223 |
+
|
224 |
$settings['verify_comments'] = array(
|
225 |
'title' => __( 'Protect Comments', 'zero-spam' ),
|
226 |
+
'desc' => __( 'Protects & monitors comment submissions.', 'zero-spam' ),
|
227 |
'section' => 'comments',
|
228 |
+
'module' => 'comments',
|
229 |
'type' => 'checkbox',
|
230 |
'options' => array(
|
231 |
+
'enabled' => false
|
232 |
),
|
233 |
'value' => ! empty( $options['verify_comments'] ) ? $options['verify_comments'] : false,
|
234 |
'recommended' => 'enabled',
|
237 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
238 |
|
239 |
$settings['comment_spam_message'] = array(
|
240 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
241 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
242 |
'section' => 'comments',
|
243 |
+
'module' => 'comments',
|
244 |
'type' => 'text',
|
245 |
'field_class' => 'large-text',
|
246 |
'placeholder' => $message,
|
251 |
$settings['log_blocked_comments'] = array(
|
252 |
'title' => __( 'Log Blocked Comments', 'zero-spam' ),
|
253 |
'section' => 'comments',
|
254 |
+
'module' => 'comments',
|
255 |
'type' => 'checkbox',
|
256 |
'desc' => wp_kses(
|
257 |
+
__( 'When enabled, stores blocked comment submissions in the database.', 'zero-spam' ),
|
258 |
array( 'strong' => array() )
|
259 |
),
|
260 |
'options' => array(
|
261 |
+
'enabled' => false,
|
262 |
),
|
263 |
'value' => ! empty( $options['log_blocked_comments'] ) ? $options['log_blocked_comments'] : false,
|
264 |
'recommended' => 'enabled',
|
modules/contactform7/class-contactform7.php
CHANGED
@@ -1,6 +1,11 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Contact Form 7
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -26,7 +31,7 @@ class ContactForm7 {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -34,7 +39,7 @@ class ContactForm7 {
|
|
34 |
\ZeroSpam\Core\Access::process()
|
35 |
) {
|
36 |
// Load scripts.
|
37 |
-
add_action( 'wpcf7_enqueue_scripts', array( $this, '
|
38 |
|
39 |
// Adds Zero Spam's honeypot field.
|
40 |
add_filter( 'wpcf7_form_elements', array( $this, 'add_honeypot' ), 10, 1 );
|
@@ -47,8 +52,13 @@ class ContactForm7 {
|
|
47 |
/**
|
48 |
* Load the scripts
|
49 |
*/
|
50 |
-
public function
|
51 |
-
|
|
|
|
|
|
|
|
|
|
|
52 |
}
|
53 |
|
54 |
/**
|
@@ -141,7 +151,9 @@ class ContactForm7 {
|
|
141 |
*/
|
142 |
public function sections( $sections ) {
|
143 |
$sections['contactform7'] = array(
|
144 |
-
'title'
|
|
|
|
|
145 |
);
|
146 |
|
147 |
return $sections;
|
@@ -151,15 +163,18 @@ class ContactForm7 {
|
|
151 |
* Admin settings
|
152 |
*
|
153 |
* @param array $settings Array of available settings.
|
154 |
-
* @param array $options Array of saved database options.
|
155 |
*/
|
156 |
-
public function settings( $settings
|
|
|
|
|
157 |
$settings['verify_contactform7'] = array(
|
158 |
'title' => __( 'Protect CF7 Submissions', 'zero-spam' ),
|
|
|
|
|
159 |
'section' => 'contactform7',
|
160 |
'type' => 'checkbox',
|
161 |
'options' => array(
|
162 |
-
'enabled' =>
|
163 |
),
|
164 |
'value' => ! empty( $options['verify_contactform7'] ) ? $options['verify_contactform7'] : false,
|
165 |
'recommended' => 'enabled',
|
@@ -168,8 +183,9 @@ class ContactForm7 {
|
|
168 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
169 |
|
170 |
$settings['contactform7_spam_message'] = array(
|
171 |
-
'title' => __( '
|
172 |
-
'desc' => __( '
|
|
|
173 |
'section' => 'contactform7',
|
174 |
'type' => 'text',
|
175 |
'field_class' => 'large-text',
|
@@ -180,14 +196,15 @@ class ContactForm7 {
|
|
180 |
|
181 |
$settings['log_blocked_contactform7'] = array(
|
182 |
'title' => __( 'Log Blocked CF7 Submissions', 'zero-spam' ),
|
|
|
183 |
'section' => 'contactform7',
|
184 |
'type' => 'checkbox',
|
185 |
'desc' => wp_kses(
|
186 |
-
__( '
|
187 |
array( 'strong' => array() )
|
188 |
),
|
189 |
'options' => array(
|
190 |
-
'enabled' =>
|
191 |
),
|
192 |
'value' => ! empty( $options['log_blocked_contactform7'] ) ? $options['log_blocked_contactform7'] : false,
|
193 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Contact Form 7 integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Uses the David Walsh technique
|
9 |
*
|
10 |
* @package ZeroSpam
|
11 |
*/
|
31 |
*/
|
32 |
public function init() {
|
33 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
34 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
35 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
36 |
|
37 |
if (
|
39 |
\ZeroSpam\Core\Access::process()
|
40 |
) {
|
41 |
// Load scripts.
|
42 |
+
add_action( 'wpcf7_enqueue_scripts', array( $this, 'add_scripts' ), 10 );
|
43 |
|
44 |
// Adds Zero Spam's honeypot field.
|
45 |
add_filter( 'wpcf7_form_elements', array( $this, 'add_honeypot' ), 10, 1 );
|
52 |
/**
|
53 |
* Load the scripts
|
54 |
*/
|
55 |
+
public function add_scripts() {
|
56 |
+
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_contactform7' ) ) {
|
57 |
+
wp_enqueue_script( 'zerospam-davidwalsh' );
|
58 |
+
add_action( 'wp_footer', function() {
|
59 |
+
echo '<script type="text/javascript">jQuery(".wpcf7-form").ZeroSpamDavidWalsh();</script>';
|
60 |
+
}, 999 );
|
61 |
+
}
|
62 |
}
|
63 |
|
64 |
/**
|
151 |
*/
|
152 |
public function sections( $sections ) {
|
153 |
$sections['contactform7'] = array(
|
154 |
+
'title' => __( 'Contact Form 7', 'zero-spam' ),
|
155 |
+
'icon' => 'modules/contactform7/icon-cf7.png',
|
156 |
+
'supports' => array( 'honeypot', 'davidwalsh' ),
|
157 |
);
|
158 |
|
159 |
return $sections;
|
163 |
* Admin settings
|
164 |
*
|
165 |
* @param array $settings Array of available settings.
|
|
|
166 |
*/
|
167 |
+
public function settings( $settings ) {
|
168 |
+
$options = get_option( 'zero-spam-contactform7' );
|
169 |
+
|
170 |
$settings['verify_contactform7'] = array(
|
171 |
'title' => __( 'Protect CF7 Submissions', 'zero-spam' ),
|
172 |
+
'desc' => __( 'Protects & monitors Contact Form 7 submissions.', 'zero-spam' ),
|
173 |
+
'module' => 'contactform7',
|
174 |
'section' => 'contactform7',
|
175 |
'type' => 'checkbox',
|
176 |
'options' => array(
|
177 |
+
'enabled' => false,
|
178 |
),
|
179 |
'value' => ! empty( $options['verify_contactform7'] ) ? $options['verify_contactform7'] : false,
|
180 |
'recommended' => 'enabled',
|
183 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
184 |
|
185 |
$settings['contactform7_spam_message'] = array(
|
186 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
187 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
188 |
+
'module' => 'contactform7',
|
189 |
'section' => 'contactform7',
|
190 |
'type' => 'text',
|
191 |
'field_class' => 'large-text',
|
196 |
|
197 |
$settings['log_blocked_contactform7'] = array(
|
198 |
'title' => __( 'Log Blocked CF7 Submissions', 'zero-spam' ),
|
199 |
+
'module' => 'contactform7',
|
200 |
'section' => 'contactform7',
|
201 |
'type' => 'checkbox',
|
202 |
'desc' => wp_kses(
|
203 |
+
__( 'When enabled, stores blocked Contact Form 7 submissions in the database.', 'zero-spam' ),
|
204 |
array( 'strong' => array() )
|
205 |
),
|
206 |
'options' => array(
|
207 |
+
'enabled' => false,
|
208 |
),
|
209 |
'value' => ! empty( $options['log_blocked_contactform7'] ) ? $options['log_blocked_contactform7'] : false,
|
210 |
'recommended' => 'enabled',
|
{assets/img → modules/contactform7}/icon-cf7.png
RENAMED
File without changes
|
modules/davidwalsh/assets/js/davidwalsh.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
/**
|
2 |
-
*
|
3 |
*
|
4 |
* Handles adding the required functionality for spam detections.
|
5 |
*/
|
@@ -34,7 +34,7 @@
|
|
34 |
|
35 |
$(function () {
|
36 |
var selectors =
|
37 |
-
"
|
38 |
if (
|
39 |
typeof ZeroSpamDavidWalsh.selectors != "undefined" &&
|
40 |
ZeroSpamDavidWalsh.selectors
|
1 |
/**
|
2 |
+
* Zero Spam for WordPress David Walsh jQuery plugin.
|
3 |
*
|
4 |
* Handles adding the required functionality for spam detections.
|
5 |
*/
|
34 |
|
35 |
$(function () {
|
36 |
var selectors =
|
37 |
+
".frm-fluent-form, .mepr-signup-form, .mc4wp-form, #mepr_loginform";
|
38 |
if (
|
39 |
typeof ZeroSpamDavidWalsh.selectors != "undefined" &&
|
40 |
ZeroSpamDavidWalsh.selectors
|
modules/davidwalsh/class-davidwalsh.php
CHANGED
@@ -28,7 +28,7 @@ class DavidWalsh {
|
|
28 |
*/
|
29 |
public function init() {
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
32 |
add_filter( 'zerospam_failed_types', array( $this, 'failed_types' ), 10, 1 );
|
33 |
|
34 |
if (
|
@@ -37,11 +37,6 @@ class DavidWalsh {
|
|
37 |
) {
|
38 |
add_action( 'wp_enqueue_scripts', array( $this, 'scripts' ), 0 );
|
39 |
add_action( 'login_enqueue_scripts', array( $this, 'scripts' ) );
|
40 |
-
|
41 |
-
add_action( 'zerospam_comment_scripts', array( $this, 'enqueue_script' ) );
|
42 |
-
// See https://contactform7.com/loading-javascript-and-stylesheet-only-when-it-is-necessary/.
|
43 |
-
add_action( 'zerospam_wpcf7_scripts', array( $this, 'enqueue_script' ) );
|
44 |
-
add_action( 'zerospam_wpforms_scripts', array( $this, 'enqueue_script' ) );
|
45 |
add_action( 'zerospam_fluentforms_scripts', array( $this, 'enqueue_script' ) );
|
46 |
add_action( 'zerospam_mailchimp4wp_scripts', array( $this, 'enqueue_script' ) );
|
47 |
add_action( 'zerospam_memberpress_login_scripts', array( $this, 'enqueue_script' ) );
|
@@ -66,6 +61,7 @@ class DavidWalsh {
|
|
66 |
add_filter( 'zerospam_preprocess_memberpress_login', array( $this, 'validate_post' ), 10, 3 );
|
67 |
add_filter( 'zerospam_preprocess_mailchimp4wp', array( $this, 'validate_post' ), 10, 3 );
|
68 |
add_filter( 'zerospam_process_woocommerce_registration', array( $this, 'validate_post' ), 10, 3 );
|
|
|
69 |
}
|
70 |
}
|
71 |
|
@@ -112,7 +108,8 @@ class DavidWalsh {
|
|
112 |
*/
|
113 |
public function sections( $sections ) {
|
114 |
$sections['davidwalsh'] = array(
|
115 |
-
'title' => __( 'David Walsh
|
|
|
116 |
);
|
117 |
|
118 |
return $sections;
|
@@ -122,9 +119,10 @@ class DavidWalsh {
|
|
122 |
* Admin settings
|
123 |
*
|
124 |
* @param array $settings Array of available settings.
|
125 |
-
* @param array $options Array of saved database options.
|
126 |
*/
|
127 |
-
public function settings( $settings
|
|
|
|
|
128 |
$settings['davidwalsh'] = array(
|
129 |
'title' => __( 'David Walsh Technique', 'zero-spam' ),
|
130 |
'desc' => sprintf(
|
@@ -143,6 +141,7 @@ class DavidWalsh {
|
|
143 |
esc_url( 'https://davidwalsh.name/wordpress-comment-spam#utm_source=wordpresszerospam&utm_medium=admin_link&utm_campaign=wordpresszerospam' )
|
144 |
),
|
145 |
'section' => 'davidwalsh',
|
|
|
146 |
'type' => 'checkbox',
|
147 |
'options' => array(
|
148 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
@@ -168,6 +167,7 @@ class DavidWalsh {
|
|
168 |
esc_url( 'https://davidwalsh.name/wordpress-comment-spam#utm_source=wordpresszerospam&utm_medium=admin_link&utm_campaign=wordpresszerospam' )
|
169 |
),
|
170 |
'section' => 'davidwalsh',
|
|
|
171 |
'type' => 'text',
|
172 |
'field_class' => 'large-text',
|
173 |
'placeholder' => '.custom-form',
|
28 |
*/
|
29 |
public function init() {
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
32 |
add_filter( 'zerospam_failed_types', array( $this, 'failed_types' ), 10, 1 );
|
33 |
|
34 |
if (
|
37 |
) {
|
38 |
add_action( 'wp_enqueue_scripts', array( $this, 'scripts' ), 0 );
|
39 |
add_action( 'login_enqueue_scripts', array( $this, 'scripts' ) );
|
|
|
|
|
|
|
|
|
|
|
40 |
add_action( 'zerospam_fluentforms_scripts', array( $this, 'enqueue_script' ) );
|
41 |
add_action( 'zerospam_mailchimp4wp_scripts', array( $this, 'enqueue_script' ) );
|
42 |
add_action( 'zerospam_memberpress_login_scripts', array( $this, 'enqueue_script' ) );
|
61 |
add_filter( 'zerospam_preprocess_memberpress_login', array( $this, 'validate_post' ), 10, 3 );
|
62 |
add_filter( 'zerospam_preprocess_mailchimp4wp', array( $this, 'validate_post' ), 10, 3 );
|
63 |
add_filter( 'zerospam_process_woocommerce_registration', array( $this, 'validate_post' ), 10, 3 );
|
64 |
+
add_filter( 'zerospam_process_givewp_submission', array( $this, 'validate_post' ), 10, 3 );
|
65 |
}
|
66 |
}
|
67 |
|
108 |
*/
|
109 |
public function sections( $sections ) {
|
110 |
$sections['davidwalsh'] = array(
|
111 |
+
'title' => __( 'David Walsh', 'zero-spam' ),
|
112 |
+
'icon' => 'modules/davidwalsh/icon-david-walsh.png'
|
113 |
);
|
114 |
|
115 |
return $sections;
|
119 |
* Admin settings
|
120 |
*
|
121 |
* @param array $settings Array of available settings.
|
|
|
122 |
*/
|
123 |
+
public function settings( $settings ) {
|
124 |
+
$options = get_option( 'zero-spam-davidwalsh' );
|
125 |
+
|
126 |
$settings['davidwalsh'] = array(
|
127 |
'title' => __( 'David Walsh Technique', 'zero-spam' ),
|
128 |
'desc' => sprintf(
|
141 |
esc_url( 'https://davidwalsh.name/wordpress-comment-spam#utm_source=wordpresszerospam&utm_medium=admin_link&utm_campaign=wordpresszerospam' )
|
142 |
),
|
143 |
'section' => 'davidwalsh',
|
144 |
+
'module' => 'davidwalsh',
|
145 |
'type' => 'checkbox',
|
146 |
'options' => array(
|
147 |
'enabled' => __( 'Enabled', 'zero-spam' ),
|
167 |
esc_url( 'https://davidwalsh.name/wordpress-comment-spam#utm_source=wordpresszerospam&utm_medium=admin_link&utm_campaign=wordpresszerospam' )
|
168 |
),
|
169 |
'section' => 'davidwalsh',
|
170 |
+
'module' => 'davidwalsh',
|
171 |
'type' => 'text',
|
172 |
'field_class' => 'large-text',
|
173 |
'placeholder' => '.custom-form',
|
modules/davidwalsh/icon-david-walsh.png
ADDED
Binary file
|
modules/fluentforms/class-fluentforms.php
CHANGED
@@ -26,7 +26,7 @@ class FluentForms {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -178,7 +178,8 @@ class FluentForms {
|
|
178 |
// Check blocked email domains.
|
179 |
if (
|
180 |
! empty( $form_data[ $field_name ] ) &&
|
181 |
-
\ZeroSpam\Core\Utilities::is_email_domain_blocked( $form_data[ $field_name ] )
|
|
|
182 |
) {
|
183 |
$error_message = \ZeroSpam\Core\Utilities::detection_message( 'fluentforms_spam_message' );
|
184 |
|
@@ -206,8 +207,9 @@ class FluentForms {
|
|
206 |
* @param array $sections Array of available setting sections.
|
207 |
*/
|
208 |
public function sections( $sections ) {
|
209 |
-
$sections['
|
210 |
-
'title' => __( 'Fluent Forms
|
|
|
211 |
);
|
212 |
|
213 |
return $sections;
|
@@ -217,15 +219,18 @@ class FluentForms {
|
|
217 |
* Admin settings
|
218 |
*
|
219 |
* @param array $settings Array of available settings.
|
220 |
-
* @param array $options Array of saved database options.
|
221 |
*/
|
222 |
-
public function settings( $settings
|
|
|
|
|
223 |
$settings['verify_fluentforms'] = array(
|
224 |
'title' => __( 'Protect Fluent Form Submissions', 'zero-spam' ),
|
225 |
-
'
|
|
|
|
|
226 |
'type' => 'checkbox',
|
227 |
'options' => array(
|
228 |
-
'enabled' =>
|
229 |
),
|
230 |
'value' => ! empty( $options['verify_fluentforms'] ) ? $options['verify_fluentforms'] : false,
|
231 |
'recommended' => 'enabled',
|
@@ -234,9 +239,10 @@ class FluentForms {
|
|
234 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
235 |
|
236 |
$settings['fluentforms_spam_message'] = array(
|
237 |
-
'title' => __( '
|
238 |
-
'desc' => __( '
|
239 |
-
'section' => '
|
|
|
240 |
'type' => 'text',
|
241 |
'field_class' => 'large-text',
|
242 |
'placeholder' => $message,
|
@@ -246,14 +252,15 @@ class FluentForms {
|
|
246 |
|
247 |
$settings['log_blocked_fluentforms'] = array(
|
248 |
'title' => __( 'Log Blocked Fluent Form Submissions', 'zero-spam' ),
|
249 |
-
'section' => '
|
|
|
250 |
'type' => 'checkbox',
|
251 |
'desc' => wp_kses(
|
252 |
-
__( '
|
253 |
array( 'strong' => array() )
|
254 |
),
|
255 |
'options' => array(
|
256 |
-
'enabled' =>
|
257 |
),
|
258 |
'value' => ! empty( $options['log_blocked_fluentforms'] ) ? $options['log_blocked_fluentforms'] : false,
|
259 |
'recommended' => 'enabled',
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
178 |
// Check blocked email domains.
|
179 |
if (
|
180 |
! empty( $form_data[ $field_name ] ) &&
|
181 |
+
\ZeroSpam\Core\Utilities::is_email_domain_blocked( $form_data[ $field_name ] ) &&
|
182 |
+
! \ZeroSpam\Core\Utilities::is_email( $form_data[ $field_name ] )
|
183 |
) {
|
184 |
$error_message = \ZeroSpam\Core\Utilities::detection_message( 'fluentforms_spam_message' );
|
185 |
|
207 |
* @param array $sections Array of available setting sections.
|
208 |
*/
|
209 |
public function sections( $sections ) {
|
210 |
+
$sections['fluent_form'] = array(
|
211 |
+
'title' => __( 'Fluent Forms', 'zero-spam' ),
|
212 |
+
'icon' => 'modules/fluentforms/icon-fluent-forms.svg'
|
213 |
);
|
214 |
|
215 |
return $sections;
|
219 |
* Admin settings
|
220 |
*
|
221 |
* @param array $settings Array of available settings.
|
|
|
222 |
*/
|
223 |
+
public function settings( $settings ) {
|
224 |
+
$options = get_option( 'zero-spam-fluent_form' );
|
225 |
+
|
226 |
$settings['verify_fluentforms'] = array(
|
227 |
'title' => __( 'Protect Fluent Form Submissions', 'zero-spam' ),
|
228 |
+
'desc' => __( 'Protects & monitors Fluent Form submissions.', 'zero-spam' ),
|
229 |
+
'section' => 'fluent_form',
|
230 |
+
'module' => 'fluent_form',
|
231 |
'type' => 'checkbox',
|
232 |
'options' => array(
|
233 |
+
'enabled' => false,
|
234 |
),
|
235 |
'value' => ! empty( $options['verify_fluentforms'] ) ? $options['verify_fluentforms'] : false,
|
236 |
'recommended' => 'enabled',
|
239 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
240 |
|
241 |
$settings['fluentforms_spam_message'] = array(
|
242 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
243 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
244 |
+
'section' => 'fluent_form',
|
245 |
+
'module' => 'fluent_form',
|
246 |
'type' => 'text',
|
247 |
'field_class' => 'large-text',
|
248 |
'placeholder' => $message,
|
252 |
|
253 |
$settings['log_blocked_fluentforms'] = array(
|
254 |
'title' => __( 'Log Blocked Fluent Form Submissions', 'zero-spam' ),
|
255 |
+
'section' => 'fluent_form',
|
256 |
+
'module' => 'fluent_form',
|
257 |
'type' => 'checkbox',
|
258 |
'desc' => wp_kses(
|
259 |
+
__( 'When enabled, stores blocked Fluent Form submissions in the database.', 'zero-spam' ),
|
260 |
array( 'strong' => array() )
|
261 |
),
|
262 |
'options' => array(
|
263 |
+
'enabled' => false,
|
264 |
),
|
265 |
'value' => ! empty( $options['log_blocked_fluentforms'] ) ? $options['log_blocked_fluentforms'] : false,
|
266 |
'recommended' => 'enabled',
|
modules/fluentforms/icon-fluent-forms.svg
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="113px" height="113px" viewBox="0 0 113 113" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>Fluent Form with Light Background</title>
|
4 |
+
<defs>
|
5 |
+
<linearGradient x1="25.470009%" y1="25.4700976%" x2="94.8491805%" y2="94.8491805%" id="linearGradient-1">
|
6 |
+
<stop stop-color="#05CDFF" offset="0%"></stop>
|
7 |
+
<stop stop-color="#0976FF" offset="100%"></stop>
|
8 |
+
</linearGradient>
|
9 |
+
</defs>
|
10 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
11 |
+
<g id="Fluent-Form-with-Light-Background" fill-rule="nonzero">
|
12 |
+
<path d="M112.817,23.1555 L112.817,89.6617 C112.817,102.452 102.056,112.817 88.7736,112.817 L24.0437,112.817 C10.7681,112.817 0,102.452 0,89.6617 L0,23.1555 C0,10.3686 10.7681,0 24.0437,0 L88.7736,0 C102.053,0 112.817,10.3686 112.817,23.1555 Z" id="Path" fill="url(#linearGradient-1)"></path>
|
13 |
+
<path d="M91.1419,48.0698 L36.1029,48.0698 C27.5141,48.0698 20.5482,55.0322 20.5482,63.6246 C20.5482,64.2452 21.0511,64.7481 21.6718,64.7481 L76.7143,64.7481 C85.3031,64.7481 92.2691,57.7857 92.2691,49.1934 C92.2655,48.5727 91.7626,48.0698 91.1419,48.0698 Z" id="Path" fill="#FFFFFF"></path>
|
14 |
+
<path d="M80.9444,72.7019 L46.6533,72.7019 C37.9647,72.7019 30.9238,79.7427 30.9238,88.4314 C30.9238,88.9557 31.3483,89.3766 31.869,89.3766 L66.1565,89.3766 C74.8452,89.3766 81.8860227,82.3358 81.8860227,73.6471 C81.8896,73.1263 81.4651,72.7019 80.9444,72.7019 Z" id="Path" fill="#FFFFFF"></path>
|
15 |
+
<path d="M91.1419,23.4375 L36.1029,23.4375 C27.5141,23.4375 20.5482,30.3999 20.5482,38.9922 C20.5482,39.6128 21.0511,40.1158 21.6718,40.1158 L76.7143,40.1158 C85.3031,40.1158 92.2691,33.1534 92.2691,24.561 C92.2655,23.9404 91.7626,23.4375 91.1419,23.4375 Z" id="Path" fill="#FFFFFF"></path>
|
16 |
+
</g>
|
17 |
+
</g>
|
18 |
+
</svg>
|
modules/formidable/class-formidable.php
CHANGED
@@ -1,6 +1,10 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Formidable
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -26,7 +30,7 @@ class Formidable {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -56,7 +60,9 @@ class Formidable {
|
|
56 |
*/
|
57 |
public function sections( $sections ) {
|
58 |
$sections['formidable'] = array(
|
59 |
-
'title'
|
|
|
|
|
60 |
);
|
61 |
|
62 |
return $sections;
|
@@ -66,15 +72,18 @@ class Formidable {
|
|
66 |
* Formidable settings
|
67 |
*
|
68 |
* @param array $settings Array of available settings.
|
69 |
-
* @param array $options Array of saved database options.
|
70 |
*/
|
71 |
-
public function settings( $settings
|
|
|
|
|
72 |
$settings['verify_formidable'] = array(
|
73 |
'title' => __( 'Protect Formidable Submissions', 'zero-spam' ),
|
|
|
74 |
'section' => 'formidable',
|
|
|
75 |
'type' => 'checkbox',
|
76 |
'options' => array(
|
77 |
-
'enabled' =>
|
78 |
),
|
79 |
'value' => ! empty( $options['verify_formidable'] ) ? $options['verify_formidable'] : false,
|
80 |
'recommended' => 'enabled',
|
@@ -83,9 +92,10 @@ class Formidable {
|
|
83 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
84 |
|
85 |
$settings['formidable_spam_message'] = array(
|
86 |
-
'title' => __( '
|
87 |
-
'desc' => __( '
|
88 |
'section' => 'formidable',
|
|
|
89 |
'type' => 'text',
|
90 |
'field_class' => 'large-text',
|
91 |
'placeholder' => $message,
|
@@ -96,13 +106,14 @@ class Formidable {
|
|
96 |
$settings['log_blocked_formidable'] = array(
|
97 |
'title' => __( 'Log Blocked Formidable Submissions', 'zero-spam' ),
|
98 |
'section' => 'formidable',
|
|
|
99 |
'type' => 'checkbox',
|
100 |
'desc' => wp_kses(
|
101 |
-
__( '
|
102 |
array( 'strong' => array() )
|
103 |
),
|
104 |
'options' => array(
|
105 |
-
'enabled' =>
|
106 |
),
|
107 |
'value' => ! empty( $options['log_blocked_formidable'] ) ? $options['log_blocked_formidable'] : false,
|
108 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Formidable integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
*
|
9 |
* @package ZeroSpam
|
10 |
*/
|
30 |
*/
|
31 |
public function init() {
|
32 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
33 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
34 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
35 |
|
36 |
if (
|
60 |
*/
|
61 |
public function sections( $sections ) {
|
62 |
$sections['formidable'] = array(
|
63 |
+
'title' => __( 'Formidable', 'zero-spam' ),
|
64 |
+
'icon' => 'modules/formidable/icon-formidable.png',
|
65 |
+
'supports' => array( 'honeypot' ),
|
66 |
);
|
67 |
|
68 |
return $sections;
|
72 |
* Formidable settings
|
73 |
*
|
74 |
* @param array $settings Array of available settings.
|
|
|
75 |
*/
|
76 |
+
public function settings( $settings ) {
|
77 |
+
$options = get_option( 'zero-spam-formidable' );
|
78 |
+
|
79 |
$settings['verify_formidable'] = array(
|
80 |
'title' => __( 'Protect Formidable Submissions', 'zero-spam' ),
|
81 |
+
'desc' => __( 'Protects & monitors Formidable submissions.', 'zero-spam' ),
|
82 |
'section' => 'formidable',
|
83 |
+
'module' => 'formidable',
|
84 |
'type' => 'checkbox',
|
85 |
'options' => array(
|
86 |
+
'enabled' => false,
|
87 |
),
|
88 |
'value' => ! empty( $options['verify_formidable'] ) ? $options['verify_formidable'] : false,
|
89 |
'recommended' => 'enabled',
|
92 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
93 |
|
94 |
$settings['formidable_spam_message'] = array(
|
95 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
96 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
97 |
'section' => 'formidable',
|
98 |
+
'module' => 'formidable',
|
99 |
'type' => 'text',
|
100 |
'field_class' => 'large-text',
|
101 |
'placeholder' => $message,
|
106 |
$settings['log_blocked_formidable'] = array(
|
107 |
'title' => __( 'Log Blocked Formidable Submissions', 'zero-spam' ),
|
108 |
'section' => 'formidable',
|
109 |
+
'module' => 'formidable',
|
110 |
'type' => 'checkbox',
|
111 |
'desc' => wp_kses(
|
112 |
+
__( 'When enabled, stores blocked Formidable submissions in the database.', 'zero-spam' ),
|
113 |
array( 'strong' => array() )
|
114 |
),
|
115 |
'options' => array(
|
116 |
+
'enabled' => false,
|
117 |
),
|
118 |
'value' => ! empty( $options['log_blocked_formidable'] ) ? $options['log_blocked_formidable'] : false,
|
119 |
'recommended' => 'enabled',
|
modules/formidable/icon-formidable.png
ADDED
Binary file
|
modules/give/class-give.php
CHANGED
@@ -1,6 +1,12 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -26,7 +32,7 @@ class Give {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -40,7 +46,29 @@ class Give {
|
|
40 |
add_action( 'give_checkout_error_checks', array( $this, 'process_form' ), 10, 1 );
|
41 |
|
42 |
// Load scripts.
|
43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
}
|
45 |
}
|
46 |
|
@@ -84,6 +112,11 @@ class Give {
|
|
84 |
$validation_errors[] = 'honeypot';
|
85 |
}
|
86 |
|
|
|
|
|
|
|
|
|
|
|
87 |
// Check blocked email domains.
|
88 |
if (
|
89 |
! empty( $post_data['give_email'] ) &&
|
@@ -93,6 +126,18 @@ class Give {
|
|
93 |
$validation_errors[] = 'blocked_email_domain';
|
94 |
}
|
95 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
96 |
if ( ! empty( $validation_errors ) ) {
|
97 |
// Failed validations, log & send details if enabled.
|
98 |
foreach ( $validation_errors as $key => $fail ) {
|
@@ -131,7 +176,9 @@ class Give {
|
|
131 |
*/
|
132 |
public function sections( $sections ) {
|
133 |
$sections['givewp'] = array(
|
134 |
-
'title'
|
|
|
|
|
135 |
);
|
136 |
|
137 |
return $sections;
|
@@ -141,9 +188,10 @@ class Give {
|
|
141 |
* Admin settings
|
142 |
*
|
143 |
* @param array $settings Array of available settings.
|
144 |
-
* @param array $options Array of saved database options.
|
145 |
*/
|
146 |
-
public function settings( $settings
|
|
|
|
|
147 |
$settings['verify_givewp'] = array(
|
148 |
'title' => sprintf(
|
149 |
wp_kses(
|
@@ -160,10 +208,12 @@ class Give {
|
|
160 |
),
|
161 |
esc_url( 'https://givewp.com/ref/1118/' )
|
162 |
),
|
|
|
163 |
'section' => 'givewp',
|
|
|
164 |
'type' => 'checkbox',
|
165 |
'options' => array(
|
166 |
-
'enabled' =>
|
167 |
),
|
168 |
'value' => ! empty( $options['verify_givewp'] ) ? $options['verify_givewp'] : false,
|
169 |
'recommended' => 'enabled',
|
@@ -172,9 +222,10 @@ class Give {
|
|
172 |
$message = __( 'We\'re sorry, but we\'re unable to process the transaction. Your IP has been flagged as possible spam.', 'zero-spam' );
|
173 |
|
174 |
$settings['givewp_spam_message'] = array(
|
175 |
-
'title' => __( '
|
176 |
-
'desc' => __( '
|
177 |
'section' => 'givewp',
|
|
|
178 |
'type' => 'text',
|
179 |
'field_class' => 'large-text',
|
180 |
'placeholder' => $message,
|
@@ -185,13 +236,14 @@ class Give {
|
|
185 |
$settings['log_blocked_givewp'] = array(
|
186 |
'title' => __( 'Log Blocked GiveWP Submissions', 'zero-spam' ),
|
187 |
'section' => 'givewp',
|
|
|
188 |
'type' => 'checkbox',
|
189 |
'desc' => wp_kses(
|
190 |
-
__( '
|
191 |
array( 'strong' => array() )
|
192 |
),
|
193 |
'options' => array(
|
194 |
-
'enabled' =>
|
195 |
),
|
196 |
'value' => ! empty( $options['log_blocked_givewp'] ) ? $options['log_blocked_givewp'] : false,
|
197 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* GiveWP plugin integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Checks blocked email domains
|
9 |
+
* 3. Uses the David Walsh technique (legacy forms only)
|
10 |
*
|
11 |
* @package ZeroSpam
|
12 |
*/
|
32 |
*/
|
33 |
public function init() {
|
34 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
35 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
36 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
37 |
|
38 |
if (
|
46 |
add_action( 'give_checkout_error_checks', array( $this, 'process_form' ), 10, 1 );
|
47 |
|
48 |
// Load scripts.
|
49 |
+
add_action( 'wp_print_scripts', array( $this, 'add_scripts' ), 999 );
|
50 |
+
}
|
51 |
+
}
|
52 |
+
|
53 |
+
/**
|
54 |
+
* Load the scripts
|
55 |
+
*
|
56 |
+
* @see https://givewp.com/documentation/developers/conditionally-load-give-styles-and-scripts/
|
57 |
+
*/
|
58 |
+
public function add_scripts() {
|
59 |
+
global $post;
|
60 |
+
|
61 |
+
// Only add scripts to the appropriate pages.
|
62 |
+
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_givewp' ) ) {
|
63 |
+
if (
|
64 |
+
// Register and enqueue scripts on single GiveWP Form pages
|
65 |
+
is_singular('give_forms') ||
|
66 |
+
// Now check for whether the shortcode 'give_form' exists
|
67 |
+
( is_a( $post, 'WP_Post' ) && has_shortcode( $post->post_content, 'give_form' ) )
|
68 |
+
) {
|
69 |
+
wp_enqueue_script( 'zerospam-davidwalsh' );
|
70 |
+
wp_add_inline_script( 'zerospam-davidwalsh', 'jQuery(".give-form").ZeroSpamDavidWalsh();' );
|
71 |
+
}
|
72 |
}
|
73 |
}
|
74 |
|
112 |
$validation_errors[] = 'honeypot';
|
113 |
}
|
114 |
|
115 |
+
// Check email.
|
116 |
+
if ( ! empty( $post_data['give_email'] ) && ! \ZeroSpam\Core\Utilities::is_email( $post_data['give_email'] ) ) {
|
117 |
+
$validation_errors[] = 'invalid_email';
|
118 |
+
}
|
119 |
+
|
120 |
// Check blocked email domains.
|
121 |
if (
|
122 |
! empty( $post_data['give_email'] ) &&
|
126 |
$validation_errors[] = 'blocked_email_domain';
|
127 |
}
|
128 |
|
129 |
+
// Fire hook for additional validation (ex. David Walsh script). Only works for legacy forms.
|
130 |
+
$form_post_meta = get_post_meta( $post_data['give-form-id'] );
|
131 |
+
if ( in_array( 'legacy', $form_post_meta['_give_form_template'] ) ) {
|
132 |
+
$filtered_errors = apply_filters( 'zerospam_process_givewp_submission', array(), $post_data, 'givewp_spam_message' );
|
133 |
+
|
134 |
+
if ( ! empty( $filtered_errors ) ) {
|
135 |
+
foreach ( $filtered_errors as $key => $message ) {
|
136 |
+
$validation_errors[] = str_replace( 'zerospam_', '', $key );
|
137 |
+
}
|
138 |
+
}
|
139 |
+
}
|
140 |
+
|
141 |
if ( ! empty( $validation_errors ) ) {
|
142 |
// Failed validations, log & send details if enabled.
|
143 |
foreach ( $validation_errors as $key => $fail ) {
|
176 |
*/
|
177 |
public function sections( $sections ) {
|
178 |
$sections['givewp'] = array(
|
179 |
+
'title' => __( 'GiveWP', 'zero-spam' ),
|
180 |
+
'icon' => 'modules/give/icon-givewp.png',
|
181 |
+
'supports' => array( 'honeypot', 'email', 'davidwalsh' ),
|
182 |
);
|
183 |
|
184 |
return $sections;
|
188 |
* Admin settings
|
189 |
*
|
190 |
* @param array $settings Array of available settings.
|
|
|
191 |
*/
|
192 |
+
public function settings( $settings ) {
|
193 |
+
$options = get_option( 'zero-spam-givewp' );
|
194 |
+
|
195 |
$settings['verify_givewp'] = array(
|
196 |
'title' => sprintf(
|
197 |
wp_kses(
|
208 |
),
|
209 |
esc_url( 'https://givewp.com/ref/1118/' )
|
210 |
),
|
211 |
+
'desc' => __( 'Protects & monitors donation forms.', 'zero-spam' ),
|
212 |
'section' => 'givewp',
|
213 |
+
'module' => 'givewp',
|
214 |
'type' => 'checkbox',
|
215 |
'options' => array(
|
216 |
+
'enabled' => false,
|
217 |
),
|
218 |
'value' => ! empty( $options['verify_givewp'] ) ? $options['verify_givewp'] : false,
|
219 |
'recommended' => 'enabled',
|
222 |
$message = __( 'We\'re sorry, but we\'re unable to process the transaction. Your IP has been flagged as possible spam.', 'zero-spam' );
|
223 |
|
224 |
$settings['givewp_spam_message'] = array(
|
225 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
226 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
227 |
'section' => 'givewp',
|
228 |
+
'module' => 'givewp',
|
229 |
'type' => 'text',
|
230 |
'field_class' => 'large-text',
|
231 |
'placeholder' => $message,
|
236 |
$settings['log_blocked_givewp'] = array(
|
237 |
'title' => __( 'Log Blocked GiveWP Submissions', 'zero-spam' ),
|
238 |
'section' => 'givewp',
|
239 |
+
'module' => 'givewp',
|
240 |
'type' => 'checkbox',
|
241 |
'desc' => wp_kses(
|
242 |
+
__( 'When enabled, stores blocked donation submissions in the database.', 'zero-spam' ),
|
243 |
array( 'strong' => array() )
|
244 |
),
|
245 |
'options' => array(
|
246 |
+
'enabled' => false,
|
247 |
),
|
248 |
'value' => ! empty( $options['log_blocked_givewp'] ) ? $options['log_blocked_givewp'] : false,
|
249 |
'recommended' => 'enabled',
|
{assets/img → modules/give}/icon-givewp.png
RENAMED
File without changes
|
modules/gravityforms/class-gravityforms.php
ADDED
@@ -0,0 +1,236 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Gravity Forms plugin integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Checks blocked email domains
|
9 |
+
*
|
10 |
+
* @package ZeroSpam
|
11 |
+
*/
|
12 |
+
|
13 |
+
namespace ZeroSpam\Modules\GravityForms;
|
14 |
+
|
15 |
+
// Security Note: Blocks direct access to the plugin PHP files.
|
16 |
+
defined( 'ABSPATH' ) || die();
|
17 |
+
|
18 |
+
/**
|
19 |
+
* Gravity Forms
|
20 |
+
*/
|
21 |
+
class GravityForms {
|
22 |
+
/**
|
23 |
+
* Constructor
|
24 |
+
*/
|
25 |
+
public function __construct() {
|
26 |
+
add_action( 'init', array( $this, 'init' ) );
|
27 |
+
}
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Fires after WordPress has finished loading but before any headers are sent.
|
31 |
+
*/
|
32 |
+
public function init() {
|
33 |
+
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
34 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 2 );
|
35 |
+
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
36 |
+
|
37 |
+
if (
|
38 |
+
'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_gravityforms' ) &&
|
39 |
+
\ZeroSpam\Core\Access::process()
|
40 |
+
) {
|
41 |
+
// Adds Zero Spam's honeypot field.
|
42 |
+
add_filter( 'gform_form_tag', array( $this, 'add_honeypot' ), 60, 2 );
|
43 |
+
|
44 |
+
// Processes the form.
|
45 |
+
add_action( 'gform_abort_submission_with_confirmation', array( $this, 'process_form' ), 10, 2 );
|
46 |
+
add_filter( 'gform_confirmation', array( $this, 'confirmation_message' ), 10, 4 );
|
47 |
+
/*
|
48 |
+
// Load scripts.
|
49 |
+
add_action( 'wp_print_scripts', array( $this, 'add_scripts' ), 999 );
|
50 |
+
*/
|
51 |
+
}
|
52 |
+
}
|
53 |
+
|
54 |
+
/**
|
55 |
+
* Load the scripts
|
56 |
+
*
|
57 |
+
* @see https://givewp.com/documentation/developers/conditionally-load-give-styles-and-scripts/
|
58 |
+
*/
|
59 |
+
public function add_scripts() {
|
60 |
+
//wp_enqueue_script( 'zerospam-davidwalsh' );
|
61 |
+
//wp_add_inline_script( 'zerospam-davidwalsh', 'jQuery(".give-form").ZeroSpamDavidWalsh();' );
|
62 |
+
}
|
63 |
+
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Adds Zero Spam's honeypot field.
|
67 |
+
*
|
68 |
+
* @see https://docs.gravityforms.com/gform_form_tag/#h-add-hidden-input
|
69 |
+
*
|
70 |
+
* @param string $form_tag The string containing the <form> tag
|
71 |
+
* @param array $form The current form object to be filtered.
|
72 |
+
*/
|
73 |
+
public function add_honeypot( $form_tag, $form ) {
|
74 |
+
$form_tag .= \ZeroSpam\Core\Utilities::honeypot_field();
|
75 |
+
|
76 |
+
return $form_tag;
|
77 |
+
}
|
78 |
+
|
79 |
+
public function confirmation_message( $confirmation, $form, $entry, $ajax ) {
|
80 |
+
if ( empty( $entry ) || rgar( $entry, 'status' ) === 'spam' ) {
|
81 |
+
$error_message = \ZeroSpam\Core\Utilities::detection_message( 'gravityforms_spam_message' );
|
82 |
+
|
83 |
+
return $error_message;
|
84 |
+
}
|
85 |
+
|
86 |
+
return $confirmation;
|
87 |
+
}
|
88 |
+
|
89 |
+
/**
|
90 |
+
* Processes a donation submission.
|
91 |
+
*
|
92 |
+
* @param boolean $do_abort Indicates if the submission should abort without saving the entry. Default is false. Will be true if the anti-spam honeypot is enabled and the honeypot identified the submission as spam.
|
93 |
+
* @param FormObject $form The form currently being processed.
|
94 |
+
*/
|
95 |
+
public function process_form( $do_abort, $form ) {
|
96 |
+
// // If submission is already marked to be aborted early, don't change it.
|
97 |
+
if ( $do_abort ) {
|
98 |
+
return true;
|
99 |
+
}
|
100 |
+
|
101 |
+
// @codingStandardsIgnoreLine
|
102 |
+
$post = \ZeroSpam\Core\Utilities::sanitize_array( $_POST );
|
103 |
+
|
104 |
+
// Check Zero Spam's honeypot field.
|
105 |
+
$honeypot_field_name = \ZeroSpam\Core\Utilities::get_honeypot();
|
106 |
+
|
107 |
+
// Create the details array for logging & sharing data.
|
108 |
+
$details = $post;
|
109 |
+
|
110 |
+
$details['type'] = 'gravityforms';
|
111 |
+
|
112 |
+
// Begin validation checks.
|
113 |
+
$validation_errors = array();
|
114 |
+
|
115 |
+
// @codingStandardsIgnoreLine
|
116 |
+
if ( isset( $post[ $honeypot_field_name ] ) && ! empty( $post[ $honeypot_field_name ] ) ) {
|
117 |
+
// Failed the honeypot check.
|
118 |
+
$validation_errors[] = 'honeypot';
|
119 |
+
}
|
120 |
+
|
121 |
+
if ( ! empty( $validation_errors ) ) {
|
122 |
+
$do_abort = true;
|
123 |
+
|
124 |
+
// Failed validations, log & send details if enabled.
|
125 |
+
foreach ( $validation_errors as $key => $fail ) {
|
126 |
+
$details['failed'] = $fail;
|
127 |
+
|
128 |
+
// Log the detection if enabled.
|
129 |
+
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'log_blocked_gravityforms' ) ) {
|
130 |
+
\ZeroSpam\Includes\DB::log( 'gravityforms', $details );
|
131 |
+
}
|
132 |
+
|
133 |
+
// Share the detection if enabled.
|
134 |
+
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'share_data' ) ) {
|
135 |
+
do_action( 'zerospam_share_detection', $details );
|
136 |
+
}
|
137 |
+
}
|
138 |
+
}
|
139 |
+
|
140 |
+
return $do_abort;
|
141 |
+
}
|
142 |
+
|
143 |
+
/**
|
144 |
+
* Add to the types array
|
145 |
+
*
|
146 |
+
* @param array $types Array of available detection types.
|
147 |
+
*/
|
148 |
+
public function types( $types ) {
|
149 |
+
$types['gravityforms'] = __( 'Gravity Forms', 'zero-spam' );
|
150 |
+
|
151 |
+
return $types;
|
152 |
+
}
|
153 |
+
|
154 |
+
/**
|
155 |
+
* Admin section
|
156 |
+
*
|
157 |
+
* @param array $sections Array of available setting sections.
|
158 |
+
*/
|
159 |
+
public function sections( $sections ) {
|
160 |
+
$sections['gravityforms'] = array(
|
161 |
+
'title' => __( 'Gravity Forms', 'zero-spam' ),
|
162 |
+
'icon' => 'modules/gravityforms/icon-gravity-forms.svg',
|
163 |
+
'supports' => array( 'honeypot', 'email' ),
|
164 |
+
);
|
165 |
+
|
166 |
+
return $sections;
|
167 |
+
}
|
168 |
+
|
169 |
+
/**
|
170 |
+
* Admin settings
|
171 |
+
*
|
172 |
+
* @param array $settings Array of available settings.
|
173 |
+
*/
|
174 |
+
public function settings( $settings ) {
|
175 |
+
$options = get_option( 'zero-spam-gravityforms' );
|
176 |
+
|
177 |
+
$settings['verify_gravityforms'] = array(
|
178 |
+
'title' => sprintf(
|
179 |
+
wp_kses(
|
180 |
+
/* translators: %s: url */
|
181 |
+
__( 'Protect <a href="%s" target="_blank" rel="noreferrer noopener">Gravity Form</a> Submissions', 'zero-spam' ),
|
182 |
+
array(
|
183 |
+
'a' => array(
|
184 |
+
'href' => array(),
|
185 |
+
'class' => array(),
|
186 |
+
'target' => array(),
|
187 |
+
'rel' => array(),
|
188 |
+
),
|
189 |
+
)
|
190 |
+
),
|
191 |
+
esc_url( 'https://www.gravityforms.com/' )
|
192 |
+
),
|
193 |
+
'desc' => __( 'Protects & monitors Gravity Form submissions (requires >=v2.7 to enable).', 'zero-spam' ),
|
194 |
+
'section' => 'gravityforms',
|
195 |
+
'module' => 'gravityforms',
|
196 |
+
'type' => 'checkbox',
|
197 |
+
'options' => array(
|
198 |
+
'enabled' => false,
|
199 |
+
),
|
200 |
+
'value' => ! empty( $options['verify_gravityforms'] ) ? $options['verify_gravityforms'] : false,
|
201 |
+
'recommended' => 'enabled',
|
202 |
+
);
|
203 |
+
|
204 |
+
$message = __( 'We were unable to process your submission: IP address has been flagged as possible spam.', 'zero-spam' );
|
205 |
+
|
206 |
+
$settings['gravityforms_spam_message'] = array(
|
207 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
208 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
209 |
+
'section' => 'gravityforms',
|
210 |
+
'module' => 'gravityforms',
|
211 |
+
'type' => 'text',
|
212 |
+
'field_class' => 'large-text',
|
213 |
+
'placeholder' => $message,
|
214 |
+
'value' => ! empty( $options['gravityforms_spam_message'] ) ? $options['gravityforms_spam_message'] : $message,
|
215 |
+
'recommended' => $message,
|
216 |
+
);
|
217 |
+
|
218 |
+
$settings['log_blocked_gravityforms'] = array(
|
219 |
+
'title' => __( 'Log Blocked Gravity Form Submissions', 'zero-spam' ),
|
220 |
+
'section' => 'gravityforms',
|
221 |
+
'module' => 'gravityforms',
|
222 |
+
'type' => 'checkbox',
|
223 |
+
'desc' => wp_kses(
|
224 |
+
__( 'When enabled, stores blocked form submissions in the database.', 'zero-spam' ),
|
225 |
+
array( 'strong' => array() )
|
226 |
+
),
|
227 |
+
'options' => array(
|
228 |
+
'enabled' => false
|
229 |
+
),
|
230 |
+
'value' => ! empty( $options['log_blocked_gravityforms'] ) ? $options['log_blocked_gravityforms'] : false,
|
231 |
+
'recommended' => 'enabled',
|
232 |
+
);
|
233 |
+
|
234 |
+
return $settings;
|
235 |
+
}
|
236 |
+
}
|
modules/gravityforms/icon-gravity-forms.svg
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 24.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="logo" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 391.6 431.1" style="enable-background:new 0 0 391.6 431.1;" xml:space="preserve">
|
5 |
+
<style type="text/css">
|
6 |
+
.st0{fill:#F15A2B;}
|
7 |
+
.st1{fill:#FFFFFF;}
|
8 |
+
</style>
|
9 |
+
<path class="st0" d="M391.6,292.8c0,19.7-14,43.9-31,53.7l-133.8,77.2c-17.1,9.9-45,9.9-62,0L31,346.5c-17.1-9.9-31-34-31-53.7
|
10 |
+
V138.3c0-19.7,13.9-43.9,31-53.7L164.8,7.4c17.1-9.9,45-9.9,62,0l133.7,77.2c17.1,9.8,31,34,31,53.7L391.6,292.8L391.6,292.8z"/>
|
11 |
+
<path class="st1" d="M157.8,179.8H335V130H158.2c-25.3,0-46.3,8.7-62.3,25.7c-38.6,41.1-39.6,144.6-39.6,144.6h277.4v-93.6h-49.8
|
12 |
+
v43.8H109.5c1.1-16.3,8.6-45.5,22.8-60.6C138.7,183,146.8,179.8,157.8,179.8L157.8,179.8z"/>
|
13 |
+
</svg>
|
modules/login/class-login.php
CHANGED
@@ -1,6 +1,11 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Login
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -26,7 +31,7 @@ class Login {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -158,7 +163,9 @@ class Login {
|
|
158 |
*/
|
159 |
public function sections( $sections ) {
|
160 |
$sections['login'] = array(
|
161 |
-
'title'
|
|
|
|
|
162 |
);
|
163 |
|
164 |
return $sections;
|
@@ -168,15 +175,18 @@ class Login {
|
|
168 |
* Admin settings
|
169 |
*
|
170 |
* @param array $settings Array of available settings.
|
171 |
-
* @param array $options Array of saved database options.
|
172 |
*/
|
173 |
-
public function settings( $settings
|
|
|
|
|
174 |
$settings['verify_login'] = array(
|
175 |
'title' => __( 'Protect Login Attempts', 'zero-spam' ),
|
|
|
176 |
'section' => 'login',
|
|
|
177 |
'type' => 'checkbox',
|
178 |
'options' => array(
|
179 |
-
'enabled' =>
|
180 |
),
|
181 |
'value' => ! empty( $options['verify_login'] ) ? $options['verify_login'] : false,
|
182 |
'recommended' => 'enabled',
|
@@ -185,9 +195,10 @@ class Login {
|
|
185 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
186 |
|
187 |
$settings['login_spam_message'] = array(
|
188 |
-
'title' => __( '
|
189 |
-
'desc' => __( '
|
190 |
'section' => 'login',
|
|
|
191 |
'type' => 'text',
|
192 |
'field_class' => 'large-text',
|
193 |
'placeholder' => $message,
|
@@ -198,13 +209,14 @@ class Login {
|
|
198 |
$settings['log_blocked_logins'] = array(
|
199 |
'title' => __( 'Log Blocked Login Attempts', 'zero-spam' ),
|
200 |
'section' => 'login',
|
|
|
201 |
'type' => 'checkbox',
|
202 |
'desc' => wp_kses(
|
203 |
-
__( '
|
204 |
array( 'strong' => array() )
|
205 |
),
|
206 |
'options' => array(
|
207 |
-
'enabled' =>
|
208 |
),
|
209 |
'value' => ! empty( $options['log_blocked_logins'] ) ? $options['log_blocked_logins'] : false,
|
210 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Login integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Uses the David Walsh technique
|
9 |
*
|
10 |
* @package ZeroSpam
|
11 |
*/
|
31 |
*/
|
32 |
public function init() {
|
33 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
34 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
35 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
36 |
|
37 |
if (
|
163 |
*/
|
164 |
public function sections( $sections ) {
|
165 |
$sections['login'] = array(
|
166 |
+
'title' => __( 'User Login', 'zero-spam' ),
|
167 |
+
'icon' => 'assets/img/icon-wordpress.svg',
|
168 |
+
'supports' => array( 'honeypot', 'davidwalsh' ),
|
169 |
);
|
170 |
|
171 |
return $sections;
|
175 |
* Admin settings
|
176 |
*
|
177 |
* @param array $settings Array of available settings.
|
|
|
178 |
*/
|
179 |
+
public function settings( $settings ) {
|
180 |
+
$options = get_option( 'zero-spam-login' );
|
181 |
+
|
182 |
$settings['verify_login'] = array(
|
183 |
'title' => __( 'Protect Login Attempts', 'zero-spam' ),
|
184 |
+
'desc' => __( 'Protects & monitors login attempts.', 'zero-spam' ),
|
185 |
'section' => 'login',
|
186 |
+
'module' => 'login',
|
187 |
'type' => 'checkbox',
|
188 |
'options' => array(
|
189 |
+
'enabled' => false,
|
190 |
),
|
191 |
'value' => ! empty( $options['verify_login'] ) ? $options['verify_login'] : false,
|
192 |
'recommended' => 'enabled',
|
195 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
196 |
|
197 |
$settings['login_spam_message'] = array(
|
198 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
199 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
200 |
'section' => 'login',
|
201 |
+
'module' => 'login',
|
202 |
'type' => 'text',
|
203 |
'field_class' => 'large-text',
|
204 |
'placeholder' => $message,
|
209 |
$settings['log_blocked_logins'] = array(
|
210 |
'title' => __( 'Log Blocked Login Attempts', 'zero-spam' ),
|
211 |
'section' => 'login',
|
212 |
+
'module' => 'login',
|
213 |
'type' => 'checkbox',
|
214 |
'desc' => wp_kses(
|
215 |
+
__( 'When enabled, stores blocked login attempts in the database.', 'zero-spam' ),
|
216 |
array( 'strong' => array() )
|
217 |
),
|
218 |
'options' => array(
|
219 |
+
'enabled' => false,
|
220 |
),
|
221 |
'value' => ! empty( $options['log_blocked_logins'] ) ? $options['log_blocked_logins'] : false,
|
222 |
'recommended' => 'enabled',
|
modules/mailchimpforwp/class-mailchimpforwp.php
CHANGED
@@ -26,7 +26,7 @@ class MailchimpForWP {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -108,6 +108,11 @@ class MailchimpForWP {
|
|
108 |
$validation_errors[] = 'honeypot';
|
109 |
}
|
110 |
|
|
|
|
|
|
|
|
|
|
|
111 |
// Check blocked email domains.
|
112 |
if (
|
113 |
! empty( $post['EMAIL'] ) &&
|
@@ -167,7 +172,7 @@ class MailchimpForWP {
|
|
167 |
*/
|
168 |
public function sections( $sections ) {
|
169 |
$sections['mailchimp4wp'] = array(
|
170 |
-
'title' => __( 'Mailchimp for WordPress
|
171 |
);
|
172 |
|
173 |
return $sections;
|
@@ -177,12 +182,14 @@ class MailchimpForWP {
|
|
177 |
* Admin settings
|
178 |
*
|
179 |
* @param array $settings Array of available settings.
|
180 |
-
* @param array $options Array of saved database options.
|
181 |
*/
|
182 |
-
public function settings( $settings
|
|
|
|
|
183 |
$settings['verify_mailchimp4wp'] = array(
|
184 |
'title' => __( 'Protect Forms', 'zero-spam' ),
|
185 |
'section' => 'mailchimp4wp',
|
|
|
186 |
'type' => 'checkbox',
|
187 |
'options' => array(
|
188 |
'enabled' => __( 'Monitor Mailchimp form submissions for malicious or automated spambots.', 'zero-spam' ),
|
@@ -197,6 +204,7 @@ class MailchimpForWP {
|
|
197 |
'title' => __( 'Mailchimp Spam/Malicious Message', 'zero-spam' ),
|
198 |
'desc' => __( 'When Mailchimp form protection is enabled, the message displayed to the user when a submission has been detected as spam/malicious.', 'zero-spam' ),
|
199 |
'section' => 'mailchimp4wp',
|
|
|
200 |
'type' => 'text',
|
201 |
'field_class' => 'large-text',
|
202 |
'placeholder' => $message,
|
@@ -207,6 +215,7 @@ class MailchimpForWP {
|
|
207 |
$settings['log_blocked_mailchimp4wp'] = array(
|
208 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
209 |
'section' => 'mailchimp4wp',
|
|
|
210 |
'type' => 'checkbox',
|
211 |
'desc' => wp_kses(
|
212 |
__( 'Enables logging blocked Mailchimp form submissions. <strong>Recommended for enhanced protection.</strong>', 'zero-spam' ),
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
108 |
$validation_errors[] = 'honeypot';
|
109 |
}
|
110 |
|
111 |
+
// Check email.
|
112 |
+
if ( ! empty( $post['EMAIL'] ) && ! \ZeroSpam\Core\Utilities::is_email( $post['EMAIL'] ) ) {
|
113 |
+
$validation_errors[] = 'invalid_email';
|
114 |
+
}
|
115 |
+
|
116 |
// Check blocked email domains.
|
117 |
if (
|
118 |
! empty( $post['EMAIL'] ) &&
|
172 |
*/
|
173 |
public function sections( $sections ) {
|
174 |
$sections['mailchimp4wp'] = array(
|
175 |
+
'title' => __( 'Mailchimp for WordPress', 'zero-spam' ),
|
176 |
);
|
177 |
|
178 |
return $sections;
|
182 |
* Admin settings
|
183 |
*
|
184 |
* @param array $settings Array of available settings.
|
|
|
185 |
*/
|
186 |
+
public function settings( $settings ) {
|
187 |
+
$options = get_option( 'zero-spam-mailchimp4wp' );
|
188 |
+
|
189 |
$settings['verify_mailchimp4wp'] = array(
|
190 |
'title' => __( 'Protect Forms', 'zero-spam' ),
|
191 |
'section' => 'mailchimp4wp',
|
192 |
+
'module' => 'mailchimp4wp',
|
193 |
'type' => 'checkbox',
|
194 |
'options' => array(
|
195 |
'enabled' => __( 'Monitor Mailchimp form submissions for malicious or automated spambots.', 'zero-spam' ),
|
204 |
'title' => __( 'Mailchimp Spam/Malicious Message', 'zero-spam' ),
|
205 |
'desc' => __( 'When Mailchimp form protection is enabled, the message displayed to the user when a submission has been detected as spam/malicious.', 'zero-spam' ),
|
206 |
'section' => 'mailchimp4wp',
|
207 |
+
'module' => 'mailchimp4wp',
|
208 |
'type' => 'text',
|
209 |
'field_class' => 'large-text',
|
210 |
'placeholder' => $message,
|
215 |
$settings['log_blocked_mailchimp4wp'] = array(
|
216 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
217 |
'section' => 'mailchimp4wp',
|
218 |
+
'module' => 'mailchimp4wp',
|
219 |
'type' => 'checkbox',
|
220 |
'desc' => wp_kses(
|
221 |
__( 'Enables logging blocked Mailchimp form submissions. <strong>Recommended for enhanced protection.</strong>', 'zero-spam' ),
|
modules/memberpress/class-memberpress.php
CHANGED
@@ -28,7 +28,7 @@ class MemberPress {
|
|
28 |
global $wp_query;
|
29 |
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
32 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
33 |
|
34 |
if ( \ZeroSpam\Core\Access::process() ) {
|
@@ -115,6 +115,11 @@ class MemberPress {
|
|
115 |
$validation_errors[] = 'honeypot';
|
116 |
}
|
117 |
|
|
|
|
|
|
|
|
|
|
|
118 |
// Check blocked email domains.
|
119 |
if (
|
120 |
! empty( $post['user_email'] ) &&
|
@@ -235,7 +240,7 @@ class MemberPress {
|
|
235 |
*/
|
236 |
public function sections( $sections ) {
|
237 |
$sections['memberpress'] = array(
|
238 |
-
'title' => __( 'MemberPress
|
239 |
);
|
240 |
|
241 |
return $sections;
|
@@ -245,14 +250,16 @@ class MemberPress {
|
|
245 |
* Admin settings
|
246 |
*
|
247 |
* @param array $settings Array of available settings.
|
248 |
-
* @param array $options Array of saved database options.
|
249 |
*/
|
250 |
-
public function settings( $settings
|
|
|
|
|
251 |
$default_spam_message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
252 |
|
253 |
// Registration protection.
|
254 |
$settings['memberpress_registration_info'] = array(
|
255 |
'section' => 'memberpress',
|
|
|
256 |
'type' => 'html',
|
257 |
'html' => sprintf(
|
258 |
wp_kses(
|
@@ -269,6 +276,7 @@ class MemberPress {
|
|
269 |
$settings['verify_memberpress_registration'] = array(
|
270 |
'title' => __( 'Protect Registration Forms', 'zero-spam' ),
|
271 |
'section' => 'memberpress',
|
|
|
272 |
'type' => 'checkbox',
|
273 |
'options' => array(
|
274 |
'enabled' => __( 'Monitor MemberPress registrations for malicious or automated spambots.', 'zero-spam' ),
|
@@ -281,6 +289,7 @@ class MemberPress {
|
|
281 |
'title' => __( 'Registration Spam/Malicious Message', 'zero-spam' ),
|
282 |
'desc' => __( 'When registration protection is enabled, the message displayed to the user when a submission has been detected as spam/malicious.', 'zero-spam' ),
|
283 |
'section' => 'memberpress',
|
|
|
284 |
'type' => 'text',
|
285 |
'field_class' => 'large-text',
|
286 |
'placeholder' => $default_spam_message,
|
@@ -291,6 +300,7 @@ class MemberPress {
|
|
291 |
$settings['log_blocked_memberpress_registrations'] = array(
|
292 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
293 |
'section' => 'memberpress',
|
|
|
294 |
'type' => 'checkbox',
|
295 |
'desc' => wp_kses(
|
296 |
__( 'Enables logging blocked registration attempts. <strong>Recommended for enhanced protection.</strong>', 'zero-spam' ),
|
@@ -306,6 +316,7 @@ class MemberPress {
|
|
306 |
// User login protection.
|
307 |
$settings['memberpress_login_info'] = array(
|
308 |
'section' => 'memberpress',
|
|
|
309 |
'type' => 'html',
|
310 |
'html' => sprintf(
|
311 |
wp_kses(
|
@@ -322,6 +333,7 @@ class MemberPress {
|
|
322 |
$settings['verify_memberpress_login'] = array(
|
323 |
'title' => __( 'Protect Login Forms', 'zero-spam' ),
|
324 |
'section' => 'memberpress',
|
|
|
325 |
'type' => 'checkbox',
|
326 |
'options' => array(
|
327 |
'enabled' => __( 'Monitor MemberPress logins for malicious or automated spambots.', 'zero-spam' ),
|
@@ -334,6 +346,7 @@ class MemberPress {
|
|
334 |
'title' => __( 'Login Spam/Malicious Message', 'zero-spam' ),
|
335 |
'desc' => __( 'When login protection is enabled, the message displayed to the user when a submission has been detected as spam/malicious.', 'zero-spam' ),
|
336 |
'section' => 'memberpress',
|
|
|
337 |
'type' => 'text',
|
338 |
'field_class' => 'large-text',
|
339 |
'placeholder' => $default_spam_message,
|
@@ -344,6 +357,7 @@ class MemberPress {
|
|
344 |
$settings['log_blocked_memberpress_logins'] = array(
|
345 |
'title' => __( 'Log Blocked Logins', 'zero-spam' ),
|
346 |
'section' => 'memberpress',
|
|
|
347 |
'type' => 'checkbox',
|
348 |
'desc' => wp_kses(
|
349 |
__( 'Enables logging blocked login attempts. <strong>Recommended for enhanced protection.</strong>', 'zero-spam' ),
|
28 |
global $wp_query;
|
29 |
|
30 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
31 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
32 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
33 |
|
34 |
if ( \ZeroSpam\Core\Access::process() ) {
|
115 |
$validation_errors[] = 'honeypot';
|
116 |
}
|
117 |
|
118 |
+
// Check email.
|
119 |
+
if ( ! empty( $post['user_email'] ) && ! \ZeroSpam\Core\Utilities::is_email( $post['user_email'] ) ) {
|
120 |
+
$validation_errors[] = 'invalid_email';
|
121 |
+
}
|
122 |
+
|
123 |
// Check blocked email domains.
|
124 |
if (
|
125 |
! empty( $post['user_email'] ) &&
|
240 |
*/
|
241 |
public function sections( $sections ) {
|
242 |
$sections['memberpress'] = array(
|
243 |
+
'title' => __( 'MemberPress', 'zero-spam' ),
|
244 |
);
|
245 |
|
246 |
return $sections;
|
250 |
* Admin settings
|
251 |
*
|
252 |
* @param array $settings Array of available settings.
|
|
|
253 |
*/
|
254 |
+
public function settings( $settings ) {
|
255 |
+
$options = get_option( 'zero-spam-memberpress' );
|
256 |
+
|
257 |
$default_spam_message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
258 |
|
259 |
// Registration protection.
|
260 |
$settings['memberpress_registration_info'] = array(
|
261 |
'section' => 'memberpress',
|
262 |
+
'module' => 'memberpress',
|
263 |
'type' => 'html',
|
264 |
'html' => sprintf(
|
265 |
wp_kses(
|
276 |
$settings['verify_memberpress_registration'] = array(
|
277 |
'title' => __( 'Protect Registration Forms', 'zero-spam' ),
|
278 |
'section' => 'memberpress',
|
279 |
+
'module' => 'memberpress',
|
280 |
'type' => 'checkbox',
|
281 |
'options' => array(
|
282 |
'enabled' => __( 'Monitor MemberPress registrations for malicious or automated spambots.', 'zero-spam' ),
|
289 |
'title' => __( 'Registration Spam/Malicious Message', 'zero-spam' ),
|
290 |
'desc' => __( 'When registration protection is enabled, the message displayed to the user when a submission has been detected as spam/malicious.', 'zero-spam' ),
|
291 |
'section' => 'memberpress',
|
292 |
+
'module' => 'memberpress',
|
293 |
'type' => 'text',
|
294 |
'field_class' => 'large-text',
|
295 |
'placeholder' => $default_spam_message,
|
300 |
$settings['log_blocked_memberpress_registrations'] = array(
|
301 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
302 |
'section' => 'memberpress',
|
303 |
+
'module' => 'memberpress',
|
304 |
'type' => 'checkbox',
|
305 |
'desc' => wp_kses(
|
306 |
__( 'Enables logging blocked registration attempts. <strong>Recommended for enhanced protection.</strong>', 'zero-spam' ),
|
316 |
// User login protection.
|
317 |
$settings['memberpress_login_info'] = array(
|
318 |
'section' => 'memberpress',
|
319 |
+
'module' => 'memberpress',
|
320 |
'type' => 'html',
|
321 |
'html' => sprintf(
|
322 |
wp_kses(
|
333 |
$settings['verify_memberpress_login'] = array(
|
334 |
'title' => __( 'Protect Login Forms', 'zero-spam' ),
|
335 |
'section' => 'memberpress',
|
336 |
+
'module' => 'memberpress',
|
337 |
'type' => 'checkbox',
|
338 |
'options' => array(
|
339 |
'enabled' => __( 'Monitor MemberPress logins for malicious or automated spambots.', 'zero-spam' ),
|
346 |
'title' => __( 'Login Spam/Malicious Message', 'zero-spam' ),
|
347 |
'desc' => __( 'When login protection is enabled, the message displayed to the user when a submission has been detected as spam/malicious.', 'zero-spam' ),
|
348 |
'section' => 'memberpress',
|
349 |
+
'module' => 'memberpress',
|
350 |
'type' => 'text',
|
351 |
'field_class' => 'large-text',
|
352 |
'placeholder' => $default_spam_message,
|
357 |
$settings['log_blocked_memberpress_logins'] = array(
|
358 |
'title' => __( 'Log Blocked Logins', 'zero-spam' ),
|
359 |
'section' => 'memberpress',
|
360 |
+
'module' => 'memberpress',
|
361 |
'type' => 'checkbox',
|
362 |
'desc' => wp_kses(
|
363 |
__( 'Enables logging blocked login attempts. <strong>Recommended for enhanced protection.</strong>', 'zero-spam' ),
|
modules/registration/class-registration.php
CHANGED
@@ -1,6 +1,12 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* Registration
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -26,7 +32,7 @@ class Registration {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -95,6 +101,11 @@ class Registration {
|
|
95 |
$validation_errors[] = 'honeypot';
|
96 |
}
|
97 |
|
|
|
|
|
|
|
|
|
|
|
98 |
// Check blocked email domains.
|
99 |
if (
|
100 |
! empty( $user_email ) &&
|
@@ -150,7 +161,9 @@ class Registration {
|
|
150 |
*/
|
151 |
public function sections( $sections ) {
|
152 |
$sections['registration'] = array(
|
153 |
-
'title'
|
|
|
|
|
154 |
);
|
155 |
|
156 |
return $sections;
|
@@ -160,15 +173,18 @@ class Registration {
|
|
160 |
* Admin settings
|
161 |
*
|
162 |
* @param array $settings Array of available settings.
|
163 |
-
* @param array $options Array of saved database options.
|
164 |
*/
|
165 |
-
public function settings( $settings
|
|
|
|
|
166 |
$settings['verify_registrations'] = array(
|
167 |
'title' => __( 'Protect Registrations', 'zero-spam' ),
|
|
|
168 |
'section' => 'registration',
|
|
|
169 |
'type' => 'checkbox',
|
170 |
'options' => array(
|
171 |
-
'enabled' =>
|
172 |
),
|
173 |
'value' => ! empty( $options['verify_registrations'] ) ? $options['verify_registrations'] : false,
|
174 |
'recommended' => 'enabled',
|
@@ -177,9 +193,10 @@ class Registration {
|
|
177 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
178 |
|
179 |
$settings['registration_spam_message'] = array(
|
180 |
-
'title' => __( '
|
181 |
-
'desc' => __( '
|
182 |
'section' => 'registration',
|
|
|
183 |
'type' => 'text',
|
184 |
'field_class' => 'large-text',
|
185 |
'placeholder' => $message,
|
@@ -190,13 +207,14 @@ class Registration {
|
|
190 |
$settings['log_blocked_registrations'] = array(
|
191 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
192 |
'section' => 'registration',
|
|
|
193 |
'type' => 'checkbox',
|
194 |
'desc' => wp_kses(
|
195 |
-
__( '
|
196 |
array( 'strong' => array() )
|
197 |
),
|
198 |
'options' => array(
|
199 |
-
'enabled' =>
|
200 |
),
|
201 |
'value' => ! empty( $options['log_blocked_registrations'] ) ? $options['log_blocked_registrations'] : false,
|
202 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* Registration integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Checks blocked email domains
|
9 |
+
* 3. Uses the David Walsh technique
|
10 |
*
|
11 |
* @package ZeroSpam
|
12 |
*/
|
32 |
*/
|
33 |
public function init() {
|
34 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
35 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
36 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
37 |
|
38 |
if (
|
101 |
$validation_errors[] = 'honeypot';
|
102 |
}
|
103 |
|
104 |
+
// Check email.
|
105 |
+
if ( ! empty( $user_email ) && ! \ZeroSpam\Core\Utilities::is_email( $user_email ) ) {
|
106 |
+
$validation_errors[] = 'invalid_email';
|
107 |
+
}
|
108 |
+
|
109 |
// Check blocked email domains.
|
110 |
if (
|
111 |
! empty( $user_email ) &&
|
161 |
*/
|
162 |
public function sections( $sections ) {
|
163 |
$sections['registration'] = array(
|
164 |
+
'title' => __( 'Registration', 'zero-spam' ),
|
165 |
+
'icon' => 'assets/img/icon-wordpress.svg',
|
166 |
+
'supports' => array( 'honeypot', 'email', 'davidwalsh' ),
|
167 |
);
|
168 |
|
169 |
return $sections;
|
173 |
* Admin settings
|
174 |
*
|
175 |
* @param array $settings Array of available settings.
|
|
|
176 |
*/
|
177 |
+
public function settings( $settings ) {
|
178 |
+
$options = get_option( 'zero-spam-registration' );
|
179 |
+
|
180 |
$settings['verify_registrations'] = array(
|
181 |
'title' => __( 'Protect Registrations', 'zero-spam' ),
|
182 |
+
'desc' => __( 'Protects & monitors registration submissions.', 'zero-spam' ),
|
183 |
'section' => 'registration',
|
184 |
+
'module' => 'registration',
|
185 |
'type' => 'checkbox',
|
186 |
'options' => array(
|
187 |
+
'enabled' => false,
|
188 |
),
|
189 |
'value' => ! empty( $options['verify_registrations'] ) ? $options['verify_registrations'] : false,
|
190 |
'recommended' => 'enabled',
|
193 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
194 |
|
195 |
$settings['registration_spam_message'] = array(
|
196 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
197 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
198 |
'section' => 'registration',
|
199 |
+
'module' => 'registration',
|
200 |
'type' => 'text',
|
201 |
'field_class' => 'large-text',
|
202 |
'placeholder' => $message,
|
207 |
$settings['log_blocked_registrations'] = array(
|
208 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
209 |
'section' => 'registration',
|
210 |
+
'module' => 'registration',
|
211 |
'type' => 'checkbox',
|
212 |
'desc' => wp_kses(
|
213 |
+
__( 'When enabled, stores blocked registration submissions in the database.', 'zero-spam' ),
|
214 |
array( 'strong' => array() )
|
215 |
),
|
216 |
'options' => array(
|
217 |
+
'enabled' => false,
|
218 |
),
|
219 |
'value' => ! empty( $options['log_blocked_registrations'] ) ? $options['log_blocked_registrations'] : false,
|
220 |
'recommended' => 'enabled',
|
modules/woocommerce/class-woocommerce.php
CHANGED
@@ -1,6 +1,12 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -39,7 +45,9 @@ class WooCommerce {
|
|
39 |
*/
|
40 |
public function sections( $sections ) {
|
41 |
$sections['woocommerce'] = array(
|
42 |
-
'title'
|
|
|
|
|
43 |
);
|
44 |
|
45 |
return $sections;
|
@@ -49,15 +57,18 @@ class WooCommerce {
|
|
49 |
* Register the Zero Spam admin settings for this module
|
50 |
*
|
51 |
* @param array $settings Array of available settings.
|
52 |
-
* @param array $options Array of saved database options.
|
53 |
*/
|
54 |
-
public function settings( $settings
|
|
|
|
|
55 |
$settings['verify_woocommerce_registrations'] = array(
|
56 |
'title' => __( 'Protect Registrations', 'zero-spam' ),
|
|
|
57 |
'section' => 'woocommerce',
|
|
|
58 |
'type' => 'checkbox',
|
59 |
'options' => array(
|
60 |
-
'enabled' =>
|
61 |
),
|
62 |
'value' => ! empty( $options['verify_woocommerce_registrations'] ) ? 'enabled' : false,
|
63 |
'recommended' => 'enabled',
|
@@ -66,9 +77,10 @@ class WooCommerce {
|
|
66 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
67 |
|
68 |
$settings['woocommerce_registration_spam_message'] = array(
|
69 |
-
'title' => __( '
|
70 |
-
'desc' => __( '
|
71 |
'section' => 'woocommerce',
|
|
|
72 |
'type' => 'text',
|
73 |
'field_class' => 'large-text',
|
74 |
'placeholder' => $message,
|
@@ -79,15 +91,16 @@ class WooCommerce {
|
|
79 |
$settings['log_blocked_woocommerce_registrations'] = array(
|
80 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
81 |
'section' => 'woocommerce',
|
|
|
82 |
'type' => 'checkbox',
|
83 |
'desc' => wp_kses(
|
84 |
-
__( '
|
85 |
array( 'strong' => array() )
|
86 |
),
|
87 |
'options' => array(
|
88 |
-
'enabled' =>
|
89 |
),
|
90 |
-
'value' => ! empty( $options['
|
91 |
'recommended' => 'enabled',
|
92 |
);
|
93 |
|
@@ -135,7 +148,9 @@ class WooCommerce {
|
|
135 |
// Only add scripts to the appropriate pages.
|
136 |
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'davidwalsh' ) ) {
|
137 |
wp_enqueue_script( 'zerospam-davidwalsh' );
|
138 |
-
|
|
|
|
|
139 |
}
|
140 |
}
|
141 |
|
@@ -172,6 +187,11 @@ class WooCommerce {
|
|
172 |
$validation_errors[] = 'honeypot';
|
173 |
}
|
174 |
|
|
|
|
|
|
|
|
|
|
|
175 |
// Check blocked email domains.
|
176 |
if ( \ZeroSpam\Core\Utilities::is_email_domain_blocked( $email ) ) {
|
177 |
// Email domain has been blocked.
|
1 |
<?php
|
2 |
/**
|
3 |
+
* WooCommerce integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Blocked email domains
|
9 |
+
* 3. David Walsh technique
|
10 |
*
|
11 |
* @package ZeroSpam
|
12 |
*/
|
45 |
*/
|
46 |
public function sections( $sections ) {
|
47 |
$sections['woocommerce'] = array(
|
48 |
+
'title' => __( 'WooCommerce', 'zero-spam' ),
|
49 |
+
'icon' => 'modules/woocommerce/icon-woocommerce.svg',
|
50 |
+
'supports' => array( 'honeypot', 'email', 'davidwalsh' ),
|
51 |
);
|
52 |
|
53 |
return $sections;
|
57 |
* Register the Zero Spam admin settings for this module
|
58 |
*
|
59 |
* @param array $settings Array of available settings.
|
|
|
60 |
*/
|
61 |
+
public function settings( $settings ) {
|
62 |
+
$options = get_option( 'zero-spam-woocommerce' );
|
63 |
+
|
64 |
$settings['verify_woocommerce_registrations'] = array(
|
65 |
'title' => __( 'Protect Registrations', 'zero-spam' ),
|
66 |
+
'desc' => __( 'Protects & monitors WooCommerce registrations.', 'zero-spam' ),
|
67 |
'section' => 'woocommerce',
|
68 |
+
'module' => 'woocommerce',
|
69 |
'type' => 'checkbox',
|
70 |
'options' => array(
|
71 |
+
'enabled' => false,
|
72 |
),
|
73 |
'value' => ! empty( $options['verify_woocommerce_registrations'] ) ? 'enabled' : false,
|
74 |
'recommended' => 'enabled',
|
77 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
78 |
|
79 |
$settings['woocommerce_registration_spam_message'] = array(
|
80 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
81 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
82 |
'section' => 'woocommerce',
|
83 |
+
'module' => 'woocommerce',
|
84 |
'type' => 'text',
|
85 |
'field_class' => 'large-text',
|
86 |
'placeholder' => $message,
|
91 |
$settings['log_blocked_woocommerce_registrations'] = array(
|
92 |
'title' => __( 'Log Blocked Registrations', 'zero-spam' ),
|
93 |
'section' => 'woocommerce',
|
94 |
+
'module' => 'woocommerce',
|
95 |
'type' => 'checkbox',
|
96 |
'desc' => wp_kses(
|
97 |
+
__( 'When enabled, stores blocked WooCommerce registrations in the database.', 'zero-spam' ),
|
98 |
array( 'strong' => array() )
|
99 |
),
|
100 |
'options' => array(
|
101 |
+
'enabled' => false,
|
102 |
),
|
103 |
+
'value' => ! empty( $options['log_blocked_woocommerce_registrations'] ) ? 'enabled' : false,
|
104 |
'recommended' => 'enabled',
|
105 |
);
|
106 |
|
148 |
// Only add scripts to the appropriate pages.
|
149 |
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'davidwalsh' ) ) {
|
150 |
wp_enqueue_script( 'zerospam-davidwalsh' );
|
151 |
+
add_action( 'wp_footer', function() {
|
152 |
+
echo '<script type="text/javascript">jQuery(".woocommerce-form-register, .woocommerce-checkout").ZeroSpamDavidWalsh();</script>';
|
153 |
+
}, 999 );
|
154 |
}
|
155 |
}
|
156 |
|
187 |
$validation_errors[] = 'honeypot';
|
188 |
}
|
189 |
|
190 |
+
// Check email.
|
191 |
+
if ( ! empty( $email ) && ! \ZeroSpam\Core\Utilities::is_email( $email ) ) {
|
192 |
+
$validation_errors[] = 'invalid_email';
|
193 |
+
}
|
194 |
+
|
195 |
// Check blocked email domains.
|
196 |
if ( \ZeroSpam\Core\Utilities::is_email_domain_blocked( $email ) ) {
|
197 |
// Email domain has been blocked.
|
{assets/img → modules/woocommerce}/icon-woocommerce.svg
RENAMED
File without changes
|
modules/wpforms/class-wpforms.php
CHANGED
@@ -1,6 +1,11 @@
|
|
1 |
<?php
|
2 |
/**
|
3 |
-
* WPForms
|
|
|
|
|
|
|
|
|
|
|
4 |
*
|
5 |
* @package ZeroSpam
|
6 |
*/
|
@@ -26,7 +31,7 @@ class WPForms {
|
|
26 |
*/
|
27 |
public function init() {
|
28 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
29 |
-
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10,
|
30 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
31 |
|
32 |
if (
|
@@ -37,7 +42,7 @@ class WPForms {
|
|
37 |
add_action( 'wpforms_frontend_output', array( $this, 'honeypot' ), 10, 1 );
|
38 |
|
39 |
// Load scripts.
|
40 |
-
add_action( 'wpforms_frontend_output', array( $this, '
|
41 |
|
42 |
// Processes the form.
|
43 |
add_action( 'wpforms_process', array( $this, 'preprocess_submission' ), 10, 3 );
|
@@ -76,6 +81,35 @@ class WPForms {
|
|
76 |
// Begin validation checks.
|
77 |
$validation_errors = array();
|
78 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
79 |
// Check Zero Spam's honeypot field.
|
80 |
$honeypot_field_name = \ZeroSpam\Core\Utilities::get_honeypot();
|
81 |
// @codingStandardsIgnoreLine
|
@@ -129,8 +163,14 @@ class WPForms {
|
|
129 |
/**
|
130 |
* Load the scripts
|
131 |
*/
|
132 |
-
public function
|
133 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
134 |
}
|
135 |
|
136 |
/**
|
@@ -140,7 +180,9 @@ class WPForms {
|
|
140 |
*/
|
141 |
public function sections( $sections ) {
|
142 |
$sections['wpforms'] = array(
|
143 |
-
'title'
|
|
|
|
|
144 |
);
|
145 |
|
146 |
return $sections;
|
@@ -150,15 +192,18 @@ class WPForms {
|
|
150 |
* Admin settings
|
151 |
*
|
152 |
* @param array $settings Array of available settings.
|
153 |
-
* @param array $options Array of saved database options.
|
154 |
*/
|
155 |
-
public function settings( $settings
|
|
|
|
|
156 |
$settings['verify_wpforms'] = array(
|
157 |
'title' => __( 'Protect WPForms Submissions', 'zero-spam' ),
|
|
|
158 |
'section' => 'wpforms',
|
|
|
159 |
'type' => 'checkbox',
|
160 |
'options' => array(
|
161 |
-
'enabled' =>
|
162 |
),
|
163 |
'value' => ! empty( $options['verify_wpforms'] ) ? $options['verify_wpforms'] : false,
|
164 |
'recommended' => 'enabled',
|
@@ -167,9 +212,10 @@ class WPForms {
|
|
167 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
168 |
|
169 |
$settings['wpforms_spam_message'] = array(
|
170 |
-
'title' => __( '
|
171 |
-
'desc' => __( '
|
172 |
'section' => 'wpforms',
|
|
|
173 |
'type' => 'text',
|
174 |
'field_class' => 'large-text',
|
175 |
'placeholder' => $message,
|
@@ -180,13 +226,14 @@ class WPForms {
|
|
180 |
$settings['log_blocked_wpforms'] = array(
|
181 |
'title' => __( 'Log Blocked WPForms Submissions', 'zero-spam' ),
|
182 |
'section' => 'wpforms',
|
|
|
183 |
'type' => 'checkbox',
|
184 |
'desc' => wp_kses(
|
185 |
-
__( '
|
186 |
array( 'strong' => array() )
|
187 |
),
|
188 |
'options' => array(
|
189 |
-
'enabled' =>
|
190 |
),
|
191 |
'value' => ! empty( $options['log_blocked_wpforms'] ) ? $options['log_blocked_wpforms'] : false,
|
192 |
'recommended' => 'enabled',
|
1 |
<?php
|
2 |
/**
|
3 |
+
* WPForms integration module
|
4 |
+
*
|
5 |
+
* Malicious user detection techniques available:
|
6 |
+
*
|
7 |
+
* 1. Zero Spam honeypot field
|
8 |
+
* 2. Uses the David Walsh technique
|
9 |
*
|
10 |
* @package ZeroSpam
|
11 |
*/
|
31 |
*/
|
32 |
public function init() {
|
33 |
add_filter( 'zerospam_setting_sections', array( $this, 'sections' ) );
|
34 |
+
add_filter( 'zerospam_settings', array( $this, 'settings' ), 10, 1 );
|
35 |
add_filter( 'zerospam_types', array( $this, 'types' ), 10, 1 );
|
36 |
|
37 |
if (
|
42 |
add_action( 'wpforms_frontend_output', array( $this, 'honeypot' ), 10, 1 );
|
43 |
|
44 |
// Load scripts.
|
45 |
+
add_action( 'wpforms_frontend_output', array( $this, 'add_scripts' ) );
|
46 |
|
47 |
// Processes the form.
|
48 |
add_action( 'wpforms_process', array( $this, 'preprocess_submission' ), 10, 3 );
|
81 |
// Begin validation checks.
|
82 |
$validation_errors = array();
|
83 |
|
84 |
+
// Check individual fields.
|
85 |
+
if ( ! empty( $post['wpforms'] ) && ! empty( $post['wpforms']['fields'] ) ) {
|
86 |
+
foreach ( $post['wpforms']['fields'] as $key => $field ) {
|
87 |
+
if ( is_array( $field ) ) {
|
88 |
+
foreach ( $field as $k => $value ) {
|
89 |
+
if ( \ZeroSpam\Core\Utilities::is_email( $value ) && \ZeroSpam\Core\Utilities::is_email_domain_blocked( $value ) ) {
|
90 |
+
// Email address found & is blocked.
|
91 |
+
$validation_errors[] = 'blocked_email_domain';
|
92 |
+
} else {
|
93 |
+
// Check against disallowed list.
|
94 |
+
if ( \ZeroSpam\Core\Utilities::is_disallowed( $value ) ) {
|
95 |
+
$validation_errors[] = 'disallowed_list';
|
96 |
+
}
|
97 |
+
}
|
98 |
+
}
|
99 |
+
} else {
|
100 |
+
if ( \ZeroSpam\Core\Utilities::is_email( $field ) && \ZeroSpam\Core\Utilities::is_email_domain_blocked( $field ) ) {
|
101 |
+
// Email address found & is blocked.
|
102 |
+
$validation_errors[] = 'blocked_email_domain';
|
103 |
+
} else {
|
104 |
+
// Check against disallowed list.
|
105 |
+
if ( \ZeroSpam\Core\Utilities::is_disallowed( $field ) ) {
|
106 |
+
$validation_errors[] = 'disallowed_list';
|
107 |
+
}
|
108 |
+
}
|
109 |
+
}
|
110 |
+
}
|
111 |
+
}
|
112 |
+
|
113 |
// Check Zero Spam's honeypot field.
|
114 |
$honeypot_field_name = \ZeroSpam\Core\Utilities::get_honeypot();
|
115 |
// @codingStandardsIgnoreLine
|
163 |
/**
|
164 |
* Load the scripts
|
165 |
*/
|
166 |
+
public function add_scripts() {
|
167 |
+
// Only add scripts to the appropriate pages.
|
168 |
+
if ( 'enabled' === \ZeroSpam\Core\Settings::get_settings( 'verify_wpforms' ) ) {
|
169 |
+
wp_enqueue_script( 'zerospam-davidwalsh' );
|
170 |
+
add_action( 'wp_footer', function() {
|
171 |
+
echo '<script type="text/javascript">jQuery(".wpforms-form").ZeroSpamDavidWalsh();</script>';
|
172 |
+
}, 999 );
|
173 |
+
}
|
174 |
}
|
175 |
|
176 |
/**
|
180 |
*/
|
181 |
public function sections( $sections ) {
|
182 |
$sections['wpforms'] = array(
|
183 |
+
'title' => __( 'WPForms', 'zero-spam' ),
|
184 |
+
'icon' => 'modules/wpforms/icon-wpforms.svg',
|
185 |
+
'supports' => array( 'honeypot', 'davidwalsh', 'email', 'words' ),
|
186 |
);
|
187 |
|
188 |
return $sections;
|
192 |
* Admin settings
|
193 |
*
|
194 |
* @param array $settings Array of available settings.
|
|
|
195 |
*/
|
196 |
+
public function settings( $settings ) {
|
197 |
+
$options = get_option( 'zero-spam-wpforms' );
|
198 |
+
|
199 |
$settings['verify_wpforms'] = array(
|
200 |
'title' => __( 'Protect WPForms Submissions', 'zero-spam' ),
|
201 |
+
'desc' => __( 'Protects & monitors WPForms submissions.', 'zero-spam' ),
|
202 |
'section' => 'wpforms',
|
203 |
+
'module' => 'wpforms',
|
204 |
'type' => 'checkbox',
|
205 |
'options' => array(
|
206 |
+
'enabled' => false,
|
207 |
),
|
208 |
'value' => ! empty( $options['verify_wpforms'] ) ? $options['verify_wpforms'] : false,
|
209 |
'recommended' => 'enabled',
|
212 |
$message = __( 'Your IP has been flagged as spam/malicious.', 'zero-spam' );
|
213 |
|
214 |
$settings['wpforms_spam_message'] = array(
|
215 |
+
'title' => __( 'Flagged Message', 'zero-spam' ),
|
216 |
+
'desc' => __( 'Message displayed when a submission has been flagged.', 'zero-spam' ),
|
217 |
'section' => 'wpforms',
|
218 |
+
'module' => 'wpforms',
|
219 |
'type' => 'text',
|
220 |
'field_class' => 'large-text',
|
221 |
'placeholder' => $message,
|
226 |
$settings['log_blocked_wpforms'] = array(
|
227 |
'title' => __( 'Log Blocked WPForms Submissions', 'zero-spam' ),
|
228 |
'section' => 'wpforms',
|
229 |
+
'module' => 'wpforms',
|
230 |
'type' => 'checkbox',
|
231 |
'desc' => wp_kses(
|
232 |
+
__( 'When enabled, stores blocked WPForms submissions in the database.', 'zero-spam' ),
|
233 |
array( 'strong' => array() )
|
234 |
),
|
235 |
'options' => array(
|
236 |
+
'enabled' => false,
|
237 |
),
|
238 |
'value' => ! empty( $options['log_blocked_wpforms'] ) ? $options['log_blocked_wpforms'] : false,
|
239 |
'recommended' => 'enabled',
|
{assets/img → modules/wpforms}/icon-wpforms.svg
RENAMED
File without changes
|
readme.txt
CHANGED
@@ -3,9 +3,9 @@ Contributors: bmarshall511
|
|
3 |
Tags: protection, firewall, security, spam, spam blocker
|
4 |
Donate link: https://www.zerospam.org/subscribe/
|
5 |
Requires at least: 5.2
|
6 |
-
Tested up to:
|
7 |
Requires PHP: 7.3
|
8 |
-
Stable tag: 5.
|
9 |
License: GNU GPLv3
|
10 |
License URI: https://choosealicense.com/licenses/gpl-3.0/
|
11 |
|
@@ -13,7 +13,7 @@ Protection against spam & malicious users using cutting-edge AI. Firewall, real-
|
|
13 |
|
14 |
== Description ==
|
15 |
|
16 |
-
|
17 |
|
18 |
**Install, activate, configure, then put your mind at ease!**
|
19 |
|
@@ -32,9 +32,10 @@ Protection against spam & malicious users using cutting-edge AI. Features a high
|
|
32 |
= But wait, there's more! =
|
33 |
|
34 |
* Protects comments, user registration & login forms
|
|
|
35 |
* Protects [GiveWP](https://givewp.com/ref/1118/) forms & helps prevent testing stolen credit cards
|
36 |
* Protects [Contact Form 7](https://wordpress.org/plugins/contact-form-7/) form submissions
|
37 |
-
* Protects [Contact Form 7](https://wordpress.org/plugins/contact-form-7/), [WPForms](https://wordpress.org/plugins/wpforms-lite/), [Formidable Form Builder](https://wordpress.org/plugins/formidable/) & [Fluent Forms](https://wordpress.org/plugins/fluentform/) forms
|
38 |
* Protects [MemberPress](https://memberpress.com/) & [WooCommerce](https://wordpress.org/plugins/woocommerce/) registrations
|
39 |
* Protects [Mailchimp for WordPress](https://wordpress.org/plugins/mailchimp-for-wp/) sign-ups
|
40 |
* and **can be integrated into any existing theme or plugin**
|
@@ -78,7 +79,7 @@ If a legitimate user is getting blocked, check the Log (Admin > Dashboard > Zero
|
|
78 |
|
79 |
= How do I boost performance of Zero Spam for WordPress? =
|
80 |
|
81 |
-
**
|
82 |
|
83 |
You can also adjust the cache and API timeout settings in admin depending on your server and specific needs.
|
84 |
|
@@ -98,14 +99,34 @@ If hosting with Pantheon, see their [known issues page](https://pantheon.io/docs
|
|
98 |
|
99 |
== Screenshots ==
|
100 |
|
101 |
-
1.
|
102 |
-
2.
|
103 |
-
3.
|
104 |
-
4.
|
105 |
-
5.
|
106 |
|
107 |
== Changelog ==
|
108 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
109 |
= v5.3.9 =
|
110 |
|
111 |
* fix(admin): fix issue with admin notice not dismissing properly, resolves #319
|
3 |
Tags: protection, firewall, security, spam, spam blocker
|
4 |
Donate link: https://www.zerospam.org/subscribe/
|
5 |
Requires at least: 5.2
|
6 |
+
Tested up to: 6.0.2
|
7 |
Requires PHP: 7.3
|
8 |
+
Stable tag: 5.4.0
|
9 |
License: GNU GPLv3
|
10 |
License URI: https://choosealicense.com/licenses/gpl-3.0/
|
11 |
|
13 |
|
14 |
== Description ==
|
15 |
|
16 |
+
Protect against spam & malicious users using an advanced, highly-configurable firewall, real-time monitoring, integration with popular blacklists & plugins like [WooCommerce](https://wordpress.org/plugins/woocommerce/), [GiveWP](https://givewp.com/ref/1118/), [Gravity Forms](https://www.gravityforms.com/) & more.
|
17 |
|
18 |
**Install, activate, configure, then put your mind at ease!**
|
19 |
|
32 |
= But wait, there's more! =
|
33 |
|
34 |
* Protects comments, user registration & login forms
|
35 |
+
* Protects [wpDiscuz](https://wordpress.org/plugins/wpdiscuz/) comment forms
|
36 |
* Protects [GiveWP](https://givewp.com/ref/1118/) forms & helps prevent testing stolen credit cards
|
37 |
* Protects [Contact Form 7](https://wordpress.org/plugins/contact-form-7/) form submissions
|
38 |
+
* Protects [Gravity Forms](https://www.gravityforms.com/), [Contact Form 7](https://wordpress.org/plugins/contact-form-7/), [WPForms](https://wordpress.org/plugins/wpforms-lite/), [Formidable Form Builder](https://wordpress.org/plugins/formidable/) & [Fluent Forms](https://wordpress.org/plugins/fluentform/) forms
|
39 |
* Protects [MemberPress](https://memberpress.com/) & [WooCommerce](https://wordpress.org/plugins/woocommerce/) registrations
|
40 |
* Protects [Mailchimp for WordPress](https://wordpress.org/plugins/mailchimp-for-wp/) sign-ups
|
41 |
* and **can be integrated into any existing theme or plugin**
|
79 |
|
80 |
= How do I boost performance of Zero Spam for WordPress? =
|
81 |
|
82 |
+
**Enable caching.** Caching is highly recommended and will prevent repeated calls to third-party API and access checks on each page visit.
|
83 |
|
84 |
You can also adjust the cache and API timeout settings in admin depending on your server and specific needs.
|
85 |
|
99 |
|
100 |
== Screenshots ==
|
101 |
|
102 |
+
1. Dashboard
|
103 |
+
2. Log
|
104 |
+
3. Settings
|
105 |
+
4. Add blocked IP address
|
106 |
+
5. Add blocked location
|
107 |
|
108 |
== Changelog ==
|
109 |
|
110 |
+
= v5.4.0 =
|
111 |
+
|
112 |
+
* chore(admin): updated the after-activation message
|
113 |
+
* chore(spam): updated splorp's wordpress comment blacklist
|
114 |
+
* feat(givewp): enhanced security using the david walsh method on legacy forms
|
115 |
+
* feat(admin): major ui enhancements
|
116 |
+
* feat(gravityforms): adds support for gravity forms
|
117 |
+
* feat(reports): improved error logs
|
118 |
+
* feat(wpdiscuz): resolves #327, added support for wpdiscuz
|
119 |
+
* feat(wpforms): now supports checking blocked email addresses
|
120 |
+
* feat(email): enhanced email security checks
|
121 |
+
* fix(double requests): issue with double checks being performed per page visit
|
122 |
+
* fix(blocks): fix for blocked ips not getting properly blocked
|
123 |
+
* fix(locations): fix for blocked locations not getting added/updated
|
124 |
+
* fix(comments): fix for valid comment submissions being flagged
|
125 |
+
* fix(admin): missing country flag in ip details modal
|
126 |
+
* fix(woocommerce): fix for login woocommerce registrations fixed
|
127 |
+
* fix(david walsh): fix for flagged submissions when using the david walsh technique
|
128 |
+
* perf(misc): misc performance improvements related to 3rd-party api queries
|
129 |
+
|
130 |
= v5.3.9 =
|
131 |
|
132 |
* fix(admin): fix issue with admin notice not dismissing properly, resolves #319
|
uninstall.php
CHANGED
@@ -16,6 +16,8 @@ $tables = array(
|
|
16 |
'blacklist' => 'wpzerospam_blacklist',
|
17 |
);
|
18 |
|
|
|
|
|
19 |
if ( is_multisite() ) {
|
20 |
// @codingStandardsIgnoreLine
|
21 |
$blogs = $wpdb->get_results( "SELECT blog_id FROM {$wpdb->blogs}", ARRAY_A );
|
@@ -30,6 +32,11 @@ if ( is_multisite() ) {
|
|
30 |
delete_option( 'zerospam_configured' );
|
31 |
delete_option( 'zerospam_davidwalsh' );
|
32 |
delete_option( 'zero_spam_last_api_report' );
|
|
|
|
|
|
|
|
|
|
|
33 |
|
34 |
foreach ( $tables as $key => $table ) {
|
35 |
// @codingStandardsIgnoreLine
|
@@ -45,6 +52,11 @@ if ( is_multisite() ) {
|
|
45 |
delete_option( 'zerospam_configured' );
|
46 |
delete_option( 'zerospam_davidwalsh' );
|
47 |
delete_option( 'zero_spam_last_api_report' );
|
|
|
|
|
|
|
|
|
|
|
48 |
|
49 |
foreach ( $tables as $key => $table ) {
|
50 |
// @codingStandardsIgnoreLine
|
16 |
'blacklist' => 'wpzerospam_blacklist',
|
17 |
);
|
18 |
|
19 |
+
$modules = \ZeroSpam\Core\Settings::get_settings_by_module();
|
20 |
+
|
21 |
if ( is_multisite() ) {
|
22 |
// @codingStandardsIgnoreLine
|
23 |
$blogs = $wpdb->get_results( "SELECT blog_id FROM {$wpdb->blogs}", ARRAY_A );
|
32 |
delete_option( 'zerospam_configured' );
|
33 |
delete_option( 'zerospam_davidwalsh' );
|
34 |
delete_option( 'zero_spam_last_api_report' );
|
35 |
+
delete_option( 'zero-spam-last-update' );
|
36 |
+
|
37 |
+
foreach ( $modules as $module => $settings ) {
|
38 |
+
delete_option( "zero-spam-$module" );
|
39 |
+
}
|
40 |
|
41 |
foreach ( $tables as $key => $table ) {
|
42 |
// @codingStandardsIgnoreLine
|
52 |
delete_option( 'zerospam_configured' );
|
53 |
delete_option( 'zerospam_davidwalsh' );
|
54 |
delete_option( 'zero_spam_last_api_report' );
|
55 |
+
delete_option( 'zero-spam-last-update' );
|
56 |
+
|
57 |
+
foreach ( $modules as $module => $settings ) {
|
58 |
+
delete_option( "zero-spam-$module" );
|
59 |
+
}
|
60 |
|
61 |
foreach ( $tables as $key => $table ) {
|
62 |
// @codingStandardsIgnoreLine
|
wordpress-zero-spam.php
CHANGED
@@ -13,7 +13,7 @@
|
|
13 |
* Plugin Name: Zero Spam for WordPress
|
14 |
* Plugin URI: https://www.highfivery.com/projects/zero-spam/
|
15 |
* Description: Tired of all the ineffective WordPress anti-spam & security plugins? Zero Spam for WordPress makes blocking spam & malicious activity a cinch. <strong>Just activate, configure, and say goodbye to spam.</strong>
|
16 |
-
* Version: 5.
|
17 |
* Requires at least: 5.2
|
18 |
* Requires PHP: 7.3
|
19 |
* Author: Highfivery LLC
|
@@ -31,7 +31,7 @@ defined( 'ABSPATH' ) || die();
|
|
31 |
define( 'ZEROSPAM', __FILE__ );
|
32 |
define( 'ZEROSPAM_PATH', plugin_dir_path( ZEROSPAM ) );
|
33 |
define( 'ZEROSPAM_PLUGIN_BASE', plugin_basename( ZEROSPAM ) );
|
34 |
-
define( 'ZEROSPAM_VERSION', '5.
|
35 |
|
36 |
if ( defined( 'ZEROSPAM_DEVELOPMENT_URL' ) ) {
|
37 |
define( 'ZEROSPAM_URL', ZEROSPAM_DEVELOPMENT_URL );
|
13 |
* Plugin Name: Zero Spam for WordPress
|
14 |
* Plugin URI: https://www.highfivery.com/projects/zero-spam/
|
15 |
* Description: Tired of all the ineffective WordPress anti-spam & security plugins? Zero Spam for WordPress makes blocking spam & malicious activity a cinch. <strong>Just activate, configure, and say goodbye to spam.</strong>
|
16 |
+
* Version: 5.4.0
|
17 |
* Requires at least: 5.2
|
18 |
* Requires PHP: 7.3
|
19 |
* Author: Highfivery LLC
|
31 |
define( 'ZEROSPAM', __FILE__ );
|
32 |
define( 'ZEROSPAM_PATH', plugin_dir_path( ZEROSPAM ) );
|
33 |
define( 'ZEROSPAM_PLUGIN_BASE', plugin_basename( ZEROSPAM ) );
|
34 |
+
define( 'ZEROSPAM_VERSION', '5.4.0' );
|
35 |
|
36 |
if ( defined( 'ZEROSPAM_DEVELOPMENT_URL' ) ) {
|
37 |
define( 'ZEROSPAM_URL', ZEROSPAM_DEVELOPMENT_URL );
|