├── .github
├── CODEOWNERS
├── ISSUE_TEMPLATE
│ ├── 1-bug-report.yml
│ ├── 2-enhancement.yml
│ └── 3-help.yml
├── PULL_REQUEST_TEMPLATE.md
├── SAVED_REPLIES.md
├── dependency-review-config.yml
└── workflows
│ ├── stale_repos.yml
│ └── wpcs.yml
├── .gitignore
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── README.md
├── SECURITY.md
├── assets
├── blacklist.txt
├── css
│ ├── Chart.min.css
│ ├── admin.css
│ ├── admin.css.map
│ └── jquery-jvectormap-2.0.5.css
├── disposable-email-domains.txt
├── img
│ ├── flags
│ │ ├── ad.svg
│ │ ├── ae.svg
│ │ ├── af.svg
│ │ ├── ag.svg
│ │ ├── ai.svg
│ │ ├── al.svg
│ │ ├── am.svg
│ │ ├── ao.svg
│ │ ├── ar.svg
│ │ ├── as.svg
│ │ ├── at.svg
│ │ ├── au.svg
│ │ ├── aw.svg
│ │ ├── ax.svg
│ │ ├── az.svg
│ │ ├── ba.svg
│ │ ├── bb.svg
│ │ ├── bd.svg
│ │ ├── be.svg
│ │ ├── bf.svg
│ │ ├── bg.svg
│ │ ├── bh.svg
│ │ ├── bi.svg
│ │ ├── bj.svg
│ │ ├── bl.svg
│ │ ├── bm.svg
│ │ ├── bn.svg
│ │ ├── bo.svg
│ │ ├── bq-bo.svg
│ │ ├── bq-sa.svg
│ │ ├── bq-se.svg
│ │ ├── br.svg
│ │ ├── bs.svg
│ │ ├── bt.svg
│ │ ├── bw.svg
│ │ ├── by.svg
│ │ ├── bz.svg
│ │ ├── ca-bc.svg
│ │ ├── ca.svg
│ │ ├── cc.svg
│ │ ├── cd.svg
│ │ ├── cf.svg
│ │ ├── cg.svg
│ │ ├── ch.svg
│ │ ├── ci.svg
│ │ ├── ck.svg
│ │ ├── cl.svg
│ │ ├── cm.svg
│ │ ├── cn.svg
│ │ ├── co.svg
│ │ ├── cr.svg
│ │ ├── cu.svg
│ │ ├── cv.svg
│ │ ├── cw.svg
│ │ ├── cx.svg
│ │ ├── cy.svg
│ │ ├── cz.svg
│ │ ├── de.svg
│ │ ├── dj.svg
│ │ ├── dk.svg
│ │ ├── dm.svg
│ │ ├── do.svg
│ │ ├── dz.svg
│ │ ├── easter_island.svg
│ │ ├── ec-w.svg
│ │ ├── ec.svg
│ │ ├── ee.svg
│ │ ├── eg.svg
│ │ ├── eh.svg
│ │ ├── er.svg
│ │ ├── es-ce.svg
│ │ ├── es-cn.svg
│ │ ├── es-ga.svg
│ │ ├── es-ib.svg
│ │ ├── es-ml.svg
│ │ ├── es-pv.svg
│ │ ├── es.svg
│ │ ├── esperanto.svg
│ │ ├── et.svg
│ │ ├── european_union.svg
│ │ ├── fi.svg
│ │ ├── fj.svg
│ │ ├── fk.svg
│ │ ├── fm.svg
│ │ ├── fo.svg
│ │ ├── fr-h.svg
│ │ ├── fr.svg
│ │ ├── ga.svg
│ │ ├── gb-eng.svg
│ │ ├── gb-ork.svg
│ │ ├── gb-sct.svg
│ │ ├── gb-wls.svg
│ │ ├── gb.svg
│ │ ├── gd.svg
│ │ ├── ge-ab.svg
│ │ ├── ge.svg
│ │ ├── gf.svg
│ │ ├── gg.svg
│ │ ├── gh.svg
│ │ ├── gi.svg
│ │ ├── gl.svg
│ │ ├── gm.svg
│ │ ├── gn.svg
│ │ ├── gq.svg
│ │ ├── gr.svg
│ │ ├── gt.svg
│ │ ├── gu.svg
│ │ ├── gw.svg
│ │ ├── gy.svg
│ │ ├── hausa.svg
│ │ ├── hk.svg
│ │ ├── hmong.svg
│ │ ├── hn.svg
│ │ ├── hr.svg
│ │ ├── ht.svg
│ │ ├── hu.svg
│ │ ├── id.svg
│ │ ├── ie.svg
│ │ ├── il.svg
│ │ ├── im.svg
│ │ ├── in.svg
│ │ ├── io.svg
│ │ ├── iq.svg
│ │ ├── ir.svg
│ │ ├── is.svg
│ │ ├── it-82.svg
│ │ ├── it-88.svg
│ │ ├── it.svg
│ │ ├── je.svg
│ │ ├── jm.svg
│ │ ├── jo.svg
│ │ ├── jp.svg
│ │ ├── kannada.svg
│ │ ├── ke.svg
│ │ ├── kg.svg
│ │ ├── kh.svg
│ │ ├── ki.svg
│ │ ├── km.svg
│ │ ├── kn.svg
│ │ ├── kp.svg
│ │ ├── kr.svg
│ │ ├── kurdistan.svg
│ │ ├── kw.svg
│ │ ├── ky.svg
│ │ ├── kz.svg
│ │ ├── la.svg
│ │ ├── lb.svg
│ │ ├── lc.svg
│ │ ├── li.svg
│ │ ├── lk.svg
│ │ ├── lr.svg
│ │ ├── ls.svg
│ │ ├── lt.svg
│ │ ├── lu.svg
│ │ ├── lv.svg
│ │ ├── ly.svg
│ │ ├── ma.svg
│ │ ├── malayali.svg
│ │ ├── maori.svg
│ │ ├── mc.svg
│ │ ├── md.svg
│ │ ├── me.svg
│ │ ├── mg.svg
│ │ ├── mh.svg
│ │ ├── mk.svg
│ │ ├── ml.svg
│ │ ├── mm.svg
│ │ ├── mn.svg
│ │ ├── mo.svg
│ │ ├── mp.svg
│ │ ├── mq.svg
│ │ ├── mr.svg
│ │ ├── ms.svg
│ │ ├── mt.svg
│ │ ├── mu.svg
│ │ ├── mv.svg
│ │ ├── mw.svg
│ │ ├── mx.svg
│ │ ├── my.svg
│ │ ├── mz.svg
│ │ ├── na.svg
│ │ ├── nato.svg
│ │ ├── ne.svg
│ │ ├── nf.svg
│ │ ├── ng.svg
│ │ ├── ni.svg
│ │ ├── nl.svg
│ │ ├── no.svg
│ │ ├── northern_cyprus.svg
│ │ ├── np.svg
│ │ ├── nr.svg
│ │ ├── nu.svg
│ │ ├── nz.svg
│ │ ├── om.svg
│ │ ├── pa.svg
│ │ ├── pe.svg
│ │ ├── pf.svg
│ │ ├── pg.svg
│ │ ├── ph.svg
│ │ ├── pk.svg
│ │ ├── pl.svg
│ │ ├── pn.svg
│ │ ├── pr.svg
│ │ ├── ps.svg
│ │ ├── pt-20.svg
│ │ ├── pt-30.svg
│ │ ├── pt.svg
│ │ ├── pw.svg
│ │ ├── py.svg
│ │ ├── qa.svg
│ │ ├── ro.svg
│ │ ├── rs.svg
│ │ ├── ru.svg
│ │ ├── rw.svg
│ │ ├── sa.svg
│ │ ├── sb.svg
│ │ ├── sc.svg
│ │ ├── sd.svg
│ │ ├── se.svg
│ │ ├── sg.svg
│ │ ├── si.svg
│ │ ├── sindh.svg
│ │ ├── sk.svg
│ │ ├── sl.svg
│ │ ├── sm.svg
│ │ ├── sn.svg
│ │ ├── so.svg
│ │ ├── somaliland.svg
│ │ ├── south_ossetia.svg
│ │ ├── sr.svg
│ │ ├── ss.svg
│ │ ├── st.svg
│ │ ├── sv.svg
│ │ ├── sx.svg
│ │ ├── sy.svg
│ │ ├── sz.svg
│ │ ├── tc.svg
│ │ ├── td.svg
│ │ ├── tg.svg
│ │ ├── th.svg
│ │ ├── tibet.svg
│ │ ├── tj.svg
│ │ ├── tk.svg
│ │ ├── tl.svg
│ │ ├── tm.svg
│ │ ├── tn.svg
│ │ ├── to.svg
│ │ ├── tr.svg
│ │ ├── transnistria.svg
│ │ ├── tt.svg
│ │ ├── tv.svg
│ │ ├── tw.svg
│ │ ├── tz.svg
│ │ ├── ua.svg
│ │ ├── ug.svg
│ │ ├── united_nations.svg
│ │ ├── us-hi.svg
│ │ ├── us.svg
│ │ ├── uy.svg
│ │ ├── uz.svg
│ │ ├── va.svg
│ │ ├── vc.svg
│ │ ├── ve.svg
│ │ ├── vg.svg
│ │ ├── vi.svg
│ │ ├── vn.svg
│ │ ├── vu.svg
│ │ ├── ws.svg
│ │ ├── xk.svg
│ │ ├── xx.svg
│ │ ├── ye.svg
│ │ ├── yiddish.svg
│ │ ├── za.svg
│ │ ├── zm.svg
│ │ └── zw.svg
│ ├── icon-blocked.svg
│ ├── icon-bug.svg
│ ├── icon-edit.svg
│ ├── icon-email.svg
│ ├── icon-error.svg
│ ├── icon-export.svg
│ ├── icon-fluent-forms.svg
│ ├── icon-google.svg
│ ├── icon-honeypot.svg
│ ├── icon-info.svg
│ ├── icon-ipinfo.svg
│ ├── icon-ipstack.svg
│ ├── icon-location.svg
│ ├── icon-log.svg
│ ├── icon-mc4wp.svg
│ ├── icon-new-window.svg
│ ├── icon-reports.svg
│ ├── icon-settings.svg
│ ├── icon-stop-forum-spam.png
│ ├── icon-success.svg
│ ├── icon-trash.svg
│ ├── icon-wordpress.svg
│ ├── icon-words.svg
│ ├── icon-x.svg
│ ├── icon.svg
│ ├── logo-flat.svg
│ └── text-zero-spam.svg
├── js
│ ├── Chart.bundle.min.js
│ ├── admin.js
│ ├── jquery-jvectormap-2.0.5.min.js
│ └── jquery-jvectormap-world-merc.js
└── src
│ └── scss
│ └── admin.scss
├── composer.json
├── composer.lock
├── core
├── admin
│ ├── class-admin.php
│ ├── class-dashboard.php
│ ├── class-settings.php
│ └── tables
│ │ ├── class-blockedlocations.php
│ │ ├── class-blockedtable.php
│ │ └── class-logtable.php
├── class-access.php
├── class-cli.php
├── class-settings.php
├── class-user.php
└── class-utilities.php
├── includes
├── class-autoloader.php
├── class-cli.php
├── class-db.php
├── class-plugin.php
├── class-updates.php
└── templates
│ ├── admin-bar-chart.php
│ ├── admin-block-ip.php
│ ├── admin-header.php
│ ├── admin-hours-list.php
│ ├── admin-ips.php
│ ├── admin-line-chart.php
│ ├── admin-map.php
│ ├── admin-modal-details.php
│ └── admin-pie.php
├── modules
├── class-debug.php
├── class-google.php
├── class-ipinfomodule.php
├── class-ipstack.php
├── class-projecthoneypot.php
├── class-stopforumspam.php
├── class-zerospam.php
├── comments
│ └── class-comments.php
├── contactform7
│ ├── class-contactform7.php
│ └── icon-cf7.png
├── davidwalsh
│ ├── assets
│ │ └── js
│ │ │ └── davidwalsh.js
│ ├── class-davidwalsh.php
│ └── icon-david-walsh.png
├── elementor
│ ├── class-elementor.php
│ └── icon-elementor.svg
├── fluentforms
│ ├── class-fluentforms.php
│ └── icon-fluent-forms.svg
├── formidable
│ ├── class-formidable.php
│ └── icon-formidable.png
├── give
│ ├── class-give.php
│ └── icon-givewp.png
├── gravityforms
│ ├── class-gravityforms.php
│ └── icon-gravity-forms.svg
├── ipbase
│ ├── class-ipbase.php
│ └── icon-ipbase.svg
├── login
│ └── class-login.php
├── mailchimpforwp
│ └── class-mailchimpforwp.php
├── registration
│ └── class-registration.php
├── security
│ ├── class-security.php
│ └── icon-security.svg
├── woocommerce
│ ├── class-woocommerce.php
│ └── icon-woocommerce.svg
├── wpforms
│ ├── class-wpforms.php
│ └── icon-wpforms.svg
└── wpuseravatar
│ ├── class-wpuseravatar.php
│ └── icon-profilepress.png
├── phpcs.xml
├── readme.txt
├── uninstall.php
├── vendor
├── autoload.php
├── composer
│ ├── ClassLoader.php
│ ├── InstalledVersions.php
│ ├── LICENSE
│ ├── autoload_classmap.php
│ ├── autoload_files.php
│ ├── autoload_namespaces.php
│ ├── autoload_psr4.php
│ ├── autoload_real.php
│ ├── autoload_static.php
│ ├── installed.json
│ ├── installed.php
│ └── platform_check.php
├── guzzlehttp
│ ├── guzzle
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── UPGRADING.md
│ │ ├── composer.json
│ │ ├── src
│ │ │ ├── BodySummarizer.php
│ │ │ ├── BodySummarizerInterface.php
│ │ │ ├── Client.php
│ │ │ ├── ClientInterface.php
│ │ │ ├── ClientTrait.php
│ │ │ ├── Cookie
│ │ │ │ ├── CookieJar.php
│ │ │ │ ├── CookieJarInterface.php
│ │ │ │ ├── FileCookieJar.php
│ │ │ │ ├── SessionCookieJar.php
│ │ │ │ └── SetCookie.php
│ │ │ ├── Exception
│ │ │ │ ├── BadResponseException.php
│ │ │ │ ├── ClientException.php
│ │ │ │ ├── ConnectException.php
│ │ │ │ ├── GuzzleException.php
│ │ │ │ ├── InvalidArgumentException.php
│ │ │ │ ├── RequestException.php
│ │ │ │ ├── ServerException.php
│ │ │ │ ├── TooManyRedirectsException.php
│ │ │ │ └── TransferException.php
│ │ │ ├── Handler
│ │ │ │ ├── CurlFactory.php
│ │ │ │ ├── CurlFactoryInterface.php
│ │ │ │ ├── CurlHandler.php
│ │ │ │ ├── CurlMultiHandler.php
│ │ │ │ ├── EasyHandle.php
│ │ │ │ ├── HeaderProcessor.php
│ │ │ │ ├── MockHandler.php
│ │ │ │ ├── Proxy.php
│ │ │ │ └── StreamHandler.php
│ │ │ ├── HandlerStack.php
│ │ │ ├── MessageFormatter.php
│ │ │ ├── MessageFormatterInterface.php
│ │ │ ├── Middleware.php
│ │ │ ├── Pool.php
│ │ │ ├── PrepareBodyMiddleware.php
│ │ │ ├── RedirectMiddleware.php
│ │ │ ├── RequestOptions.php
│ │ │ ├── RetryMiddleware.php
│ │ │ ├── TransferStats.php
│ │ │ ├── Utils.php
│ │ │ ├── functions.php
│ │ │ └── functions_include.php
│ │ └── vendor-bin
│ │ │ ├── php-cs-fixer
│ │ │ └── composer.json
│ │ │ ├── phpstan
│ │ │ └── composer.json
│ │ │ └── psalm
│ │ │ └── composer.json
│ ├── promises
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── Makefile
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ │ ├── AggregateException.php
│ │ │ ├── CancellationException.php
│ │ │ ├── Coroutine.php
│ │ │ ├── Create.php
│ │ │ ├── Each.php
│ │ │ ├── EachPromise.php
│ │ │ ├── FulfilledPromise.php
│ │ │ ├── Is.php
│ │ │ ├── Promise.php
│ │ │ ├── PromiseInterface.php
│ │ │ ├── PromisorInterface.php
│ │ │ ├── RejectedPromise.php
│ │ │ ├── RejectionException.php
│ │ │ ├── TaskQueue.php
│ │ │ ├── TaskQueueInterface.php
│ │ │ ├── Utils.php
│ │ │ ├── functions.php
│ │ │ └── functions_include.php
│ └── psr7
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ ├── src
│ │ ├── AppendStream.php
│ │ ├── BufferStream.php
│ │ ├── CachingStream.php
│ │ ├── DroppingStream.php
│ │ ├── Exception
│ │ │ └── MalformedUriException.php
│ │ ├── FnStream.php
│ │ ├── Header.php
│ │ ├── HttpFactory.php
│ │ ├── InflateStream.php
│ │ ├── LazyOpenStream.php
│ │ ├── LimitStream.php
│ │ ├── Message.php
│ │ ├── MessageTrait.php
│ │ ├── MimeType.php
│ │ ├── MultipartStream.php
│ │ ├── NoSeekStream.php
│ │ ├── PumpStream.php
│ │ ├── Query.php
│ │ ├── Request.php
│ │ ├── Response.php
│ │ ├── Rfc7230.php
│ │ ├── ServerRequest.php
│ │ ├── Stream.php
│ │ ├── StreamDecoratorTrait.php
│ │ ├── StreamWrapper.php
│ │ ├── UploadedFile.php
│ │ ├── Uri.php
│ │ ├── UriNormalizer.php
│ │ ├── UriResolver.php
│ │ └── Utils.php
│ │ └── vendor-bin
│ │ ├── php-cs-fixer
│ │ └── composer.json
│ │ ├── phpstan
│ │ └── composer.json
│ │ └── psalm
│ │ └── composer.json
├── ipinfo
│ └── ipinfo
│ │ ├── .editorconfig
│ │ ├── .styleci.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ ├── psalm.xml
│ │ └── src
│ │ ├── Details.php
│ │ ├── IPinfo.php
│ │ ├── IPinfoException.php
│ │ ├── cache
│ │ ├── CacheInterface.php
│ │ └── DefaultCache.php
│ │ └── countries.json
├── psr
│ ├── http-client
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ │ ├── ClientExceptionInterface.php
│ │ │ ├── ClientInterface.php
│ │ │ ├── NetworkExceptionInterface.php
│ │ │ └── RequestExceptionInterface.php
│ ├── http-factory
│ │ ├── .gitignore
│ │ ├── .pullapprove.yml
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ │ ├── RequestFactoryInterface.php
│ │ │ ├── ResponseFactoryInterface.php
│ │ │ ├── ServerRequestFactoryInterface.php
│ │ │ ├── StreamFactoryInterface.php
│ │ │ ├── UploadedFileFactoryInterface.php
│ │ │ └── UriFactoryInterface.php
│ ├── http-message
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ │ ├── MessageInterface.php
│ │ │ ├── RequestInterface.php
│ │ │ ├── ResponseInterface.php
│ │ │ ├── ServerRequestInterface.php
│ │ │ ├── StreamInterface.php
│ │ │ ├── UploadedFileInterface.php
│ │ │ └── UriInterface.php
│ └── simple-cache
│ │ ├── .editorconfig
│ │ ├── LICENSE.md
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ ├── CacheException.php
│ │ ├── CacheInterface.php
│ │ └── InvalidArgumentException.php
├── ralouphie
│ └── getallheaders
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ └── getallheaders.php
├── sabre
│ └── cache
│ │ ├── .gitignore
│ │ ├── .php_cs.dist
│ │ ├── .travis.yml
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── bin
│ │ └── EMPTY
│ │ ├── composer.json
│ │ ├── lib
│ │ ├── Apcu.php
│ │ ├── InvalidArgumentException.php
│ │ ├── Memcached.php
│ │ ├── Memory.php
│ │ ├── MultipleTrait.php
│ │ └── Version.php
│ │ ├── phpstan.neon
│ │ └── tests
│ │ ├── Cache
│ │ ├── AbstractCacheTest.php
│ │ ├── ApcuTest.php
│ │ ├── MemcachedTest.php
│ │ └── MemoryCacheTest.php
│ │ └── phpunit.xml
└── symfony
│ └── deprecation-contracts
│ ├── .gitignore
│ ├── CHANGELOG.md
│ ├── LICENSE
│ ├── README.md
│ ├── composer.json
│ └── function.php
└── wordpress-zero-spam.php
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # These owners will be the default owners for everything in the repo. Unless a later match takes precedence, @bmarshall511, as primary maintainer will be requested for review when someone opens a Pull Request.
2 | * @bmarshall511
3 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/3-help.yml:
--------------------------------------------------------------------------------
1 | name: "❓ Need help?"
2 | description: "Ask us a question, we are here to help!"
3 | labels: "type:question"
4 | body:
5 | - type: markdown
6 | attributes:
7 | value: |
8 | If you have a question that is neither a bug report nor an enhancement, then please post it here! Please fill in as much of the template below as you can.
9 | - type: textarea
10 | attributes:
11 | label: Describe your question
12 | description: A clear and concise description of what your question is.
13 | validations:
14 | required: true
15 |
16 | - type: checkboxes
17 | id: terms
18 | attributes:
19 | label: Code of Conduct
20 | description: By submitting this issue, you agree to follow our `Code of Conduct` (see the `CODE_OF_CONDUCT.md` file in the repo).
21 | options:
22 | - label: I agree to follow this project's Code of Conduct
23 | required: true
24 |
--------------------------------------------------------------------------------
/.github/workflows/stale_repos.yml:
--------------------------------------------------------------------------------
1 | name: Stale Repo Identifier
2 |
3 | on:
4 | workflow_dispatch:
5 | schedule:
6 | - cron: '3 2 1 * *'
7 |
8 | jobs:
9 | build:
10 | name: stale repo identifier
11 | runs-on: ubuntu-latest
12 |
13 | steps:
14 | - name: Run stale_repos tool
15 | uses: github/stale-repos@v1
16 | env:
17 | GH_TOKEN: ${{ secrets.GH_PAT_REPO }}
18 | ORGANIZATION: Zero Spam
19 | EXEMPT_TOPICS: "keep,template"
20 | INACTIVE_DAYS: 365
21 |
22 | - name: Create issue
23 | uses: peter-evans/create-issue-from-file@v4
24 | with:
25 | title: Stale repository report
26 | content-filepath: ./STALE_REPOS.md
27 | assignees: bmarshall511
28 | token: ${{ secrets.GH_PAT_REPO }}
29 |
--------------------------------------------------------------------------------
/.github/workflows/wpcs.yml:
--------------------------------------------------------------------------------
1 | name: WPCS Check
2 |
3 | on: pull_request
4 |
5 | jobs:
6 | phpcs:
7 | name: WPCS
8 | runs-on: ubuntu-latest
9 | steps:
10 | - uses: actions/checkout@v2
11 | - name: WPCS Check
12 | uses: 10up/wpcs-action@stable
13 | with:
14 | standard: 'WordPress'
15 | extra_args: '--report-json=./phpcs.json'
16 | - name: Update summary
17 | run: |
18 | npm i -g github:10up/phpcs-json-to-md
19 | phpcs-json-to-md --path ./phpcs.json --output ./phpcs.md
20 | cat phpcs.md >> $GITHUB_STEP_SUMMARY
21 | if: always()
22 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 |
--------------------------------------------------------------------------------
/assets/css/Chart.min.css:
--------------------------------------------------------------------------------
1 | @keyframes chartjs-render-animation{from{opacity:.99}to{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0}
--------------------------------------------------------------------------------
/assets/img/flags/ad.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ae.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/af.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ag.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/al.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/am.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ao.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/as.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/at.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/aw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ax.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/az.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ba.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bd.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/be.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bh.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bi.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bj.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bq-bo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bq-sa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bq-se.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/br.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/by.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/bz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ca.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cd.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ch.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ci.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/co.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/cz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/de.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/dj.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/dk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/do.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/dz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/easter_island.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ec-w.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ec.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ee.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/eg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/eh.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/er.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/es-cn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/es-ga.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/es-ib.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/es-pv.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/es.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/esperanto.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/et.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/european_union.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/fi.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/fj.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/fm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/fo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/fr-h.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/fr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ga.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gb-eng.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gb-ork.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gb-sct.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gb-wls.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ge-ab.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gh.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gi.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gq.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/gy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/hk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/hmong.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/hn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ht.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/hu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/id.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ie.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/il.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/im.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/in.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/iq.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ir.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/is.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/it-82.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/it.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/je.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/jm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/jo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/jp.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kannada.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ke.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kh.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/km.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kp.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kurdistan.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/kz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/la.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/li.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ls.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/lv.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ly.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ma.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/malayali.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/maori.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/md.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/me.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mh.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ml.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ms.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mv.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mx.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/my.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/mz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/na.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/nato.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ne.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/nf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ng.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ni.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/nl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/no.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/northern_cyprus.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/np.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/nr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/nu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/om.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pe.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pf.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ph.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ps.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pt-30.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/pw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/py.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/qa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ro.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/rs.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ru.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/rw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sb.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sd.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/se.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/si.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/so.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/somaliland.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/south_ossetia.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ss.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/st.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sv.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sx.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/sz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/td.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/th.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tibet.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tj.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tl.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/to.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/transnistria.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tt.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/tz.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ua.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ug.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/united_nations.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/us-hi.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/uy.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/va.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/vc.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ve.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/vg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/vi.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/vn.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/vu.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ws.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/xk.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/xx.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/ye.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/yiddish.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/za.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/zm.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/flags/zw.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/icon-google.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/icon-info.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/assets/img/icon-location.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/icon-new-window.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/assets/img/icon-stop-forum-spam.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Highfivery/zero-spam-for-wordpress/83752afac3c90e2f96abea6ce69f7f6aa745ac68/assets/img/icon-stop-forum-spam.png
--------------------------------------------------------------------------------
/assets/img/icon-success.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/assets/img/icon-x.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "highfivery/zero-spam-for-wordpress",
3 | "description": "No spam, no scams, just seamless experiences with Zero Spam for WordPress - the shield your site deserves.",
4 | "type": "wordpress-plugin",
5 | "keywords": ["wordpress", "plugin", "zerospam", "spam"],
6 | "license": "GPL-2.0-only",
7 | "minimum-stability": "dev",
8 | "prefer-stable": true,
9 | "authors": [
10 | {
11 | "name": "Ben Marshall",
12 | "email": "me@benmarshall.me",
13 | "homepage": "https://www.benmarshall.me"
14 | },
15 | {
16 | "name": "Highfivery",
17 | "email": "info@highfivery.com",
18 | "homepage": "https://highfivery.com"
19 | }
20 | ],
21 | "repositories": [
22 | {
23 | "type":"composer",
24 | "url":"https://wpackagist.org"
25 | }
26 | ],
27 | "require": {
28 | "php" : ">=7.2",
29 | "ipinfo/ipinfo": "^2.3"
30 | },
31 | "extra": {
32 | "installer-paths": {
33 | "vendor/{$name}/": ["type:wordpress-plugin"]
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/core/class-cli.php:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/modules/formidable/icon-formidable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Highfivery/zero-spam-for-wordpress/83752afac3c90e2f96abea6ce69f7f6aa745ac68/modules/formidable/icon-formidable.png
--------------------------------------------------------------------------------
/modules/give/icon-givewp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Highfivery/zero-spam-for-wordpress/83752afac3c90e2f96abea6ce69f7f6aa745ac68/modules/give/icon-givewp.png
--------------------------------------------------------------------------------
/modules/gravityforms/icon-gravity-forms.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
--------------------------------------------------------------------------------
/modules/wpuseravatar/icon-profilepress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Highfivery/zero-spam-for-wordpress/83752afac3c90e2f96abea6ce69f7f6aa745ac68/modules/wpuseravatar/icon-profilepress.png
--------------------------------------------------------------------------------
/phpcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/vendor/autoload.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/composer/InstalledVersions.php',
10 | );
11 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_files.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/ralouphie/getallheaders/src/getallheaders.php',
10 | 'c964ee0ededf28c96ebd9db5099ef910' => $vendorDir . '/guzzlehttp/promises/src/functions_include.php',
11 | '6e3fae29631ef280660b3cdad06f25a8' => $vendorDir . '/symfony/deprecation-contracts/function.php',
12 | '37a3dc5111fe8f707ab4c132ef1dbc62' => $vendorDir . '/guzzlehttp/guzzle/src/functions_include.php',
13 | );
14 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_namespaces.php:
--------------------------------------------------------------------------------
1 | array($vendorDir . '/ipinfo/ipinfo/src'),
10 | 'Sabre\\Cache\\' => array($vendorDir . '/sabre/cache/lib'),
11 | 'Psr\\SimpleCache\\' => array($vendorDir . '/psr/simple-cache/src'),
12 | 'Psr\\Http\\Message\\' => array($vendorDir . '/psr/http-message/src', $vendorDir . '/psr/http-factory/src'),
13 | 'Psr\\Http\\Client\\' => array($vendorDir . '/psr/http-client/src'),
14 | 'GuzzleHttp\\Psr7\\' => array($vendorDir . '/guzzlehttp/psr7/src'),
15 | 'GuzzleHttp\\Promise\\' => array($vendorDir . '/guzzlehttp/promises/src'),
16 | 'GuzzleHttp\\' => array($vendorDir . '/guzzlehttp/guzzle/src'),
17 | );
18 |
--------------------------------------------------------------------------------
/vendor/composer/platform_check.php:
--------------------------------------------------------------------------------
1 | = 70300)) {
8 | $issues[] = 'Your Composer dependencies require a PHP version ">= 7.3.0". You are running ' . PHP_VERSION . '.';
9 | }
10 |
11 | if ($issues) {
12 | if (!headers_sent()) {
13 | header('HTTP/1.1 500 Internal Server Error');
14 | }
15 | if (!ini_get('display_errors')) {
16 | if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') {
17 | fwrite(STDERR, 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . implode(PHP_EOL, $issues) . PHP_EOL.PHP_EOL);
18 | } elseif (!headers_sent()) {
19 | echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL;
20 | }
21 | }
22 | trigger_error(
23 | 'Composer detected issues in your platform: ' . implode(' ', $issues),
24 | E_USER_ERROR
25 | );
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/src/BodySummarizer.php:
--------------------------------------------------------------------------------
1 | truncateAt = $truncateAt;
17 | }
18 |
19 | /**
20 | * Returns a summarized message body.
21 | */
22 | public function summarize(MessageInterface $message): ?string
23 | {
24 | return $this->truncateAt === null
25 | ? \GuzzleHttp\Psr7\Message::bodySummary($message)
26 | : \GuzzleHttp\Psr7\Message::bodySummary($message, $this->truncateAt);
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/guzzle/src/BodySummarizerInterface.php:
--------------------------------------------------------------------------------
1 | @,;:\\\"/[\]?={}\x01-\x20\x7F]++):[ \t]*+((?:[ \t]*+[\x21-\x7E\x80-\xFF]++)*+)[ \t]*+\r?\n)m";
22 | public const HEADER_FOLD_REGEX = "(\r?\n[ \t]++)";
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/vendor-bin/php-cs-fixer/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "php": "^7.2.5 || ^8.0",
4 | "friendsofphp/php-cs-fixer": "3.2.1"
5 | },
6 | "config": {
7 | "preferred-install": "dist"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/vendor-bin/phpstan/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "php": "^7.2.5 || ^8.0",
4 | "phpstan/phpstan": "0.12.81",
5 | "phpstan/phpstan-deprecation-rules": "0.12.6"
6 | },
7 | "config": {
8 | "preferred-install": "dist"
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/vendor/guzzlehttp/psr7/vendor-bin/psalm/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "php": "^7.2.5 || ^8.0",
4 | "psalm/phar": "4.6.2"
5 | },
6 | "config": {
7 | "preferred-install": "dist"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/vendor/ipinfo/ipinfo/.editorconfig:
--------------------------------------------------------------------------------
1 | ; This file is for unifying the coding style for different editors and IDEs.
2 | ; More information at http://editorconfig.org
3 |
4 | root = true
5 |
6 | [*]
7 | charset = utf-8
8 | indent_size = 4
9 | indent_style = space
10 | end_of_line = lf
11 | insert_final_newline = true
12 | trim_trailing_whitespace = true
13 |
14 | [*.md]
15 | trim_trailing_whitespace = false
16 |
--------------------------------------------------------------------------------
/vendor/ipinfo/ipinfo/.styleci.yml:
--------------------------------------------------------------------------------
1 | preset: psr2
2 |
--------------------------------------------------------------------------------
/vendor/ipinfo/ipinfo/psalm.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/vendor/ipinfo/ipinfo/src/Details.php:
--------------------------------------------------------------------------------
1 | $value) {
13 | $this->$property = $value;
14 | }
15 | $this->all = $raw_details;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/ipinfo/ipinfo/src/IPinfoException.php:
--------------------------------------------------------------------------------
1 | =7.0.0",
23 | "psr/http-message": "^1.0"
24 | },
25 | "autoload": {
26 | "psr-4": {
27 | "Psr\\Http\\Message\\": "src/"
28 | }
29 | },
30 | "extra": {
31 | "branch-alias": {
32 | "dev-master": "1.0.x-dev"
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/psr/http-factory/src/RequestFactoryInterface.php:
--------------------------------------------------------------------------------
1 | =5.3.0"
15 | },
16 | "autoload": {
17 | "psr-4": {
18 | "Psr\\Http\\Message\\": "src/"
19 | }
20 | },
21 | "extra": {
22 | "branch-alias": {
23 | "dev-master": "1.0.x-dev"
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/psr/simple-cache/.editorconfig:
--------------------------------------------------------------------------------
1 | ; This file is for unifying the coding style for different editors and IDEs.
2 | ; More information at http://editorconfig.org
3 |
4 | root = true
5 |
6 | [*]
7 | charset = utf-8
8 | indent_size = 4
9 | indent_style = space
10 | end_of_line = lf
11 | insert_final_newline = true
12 | trim_trailing_whitespace = true
13 |
--------------------------------------------------------------------------------
/vendor/psr/simple-cache/README.md:
--------------------------------------------------------------------------------
1 | PHP FIG Simple Cache PSR
2 | ========================
3 |
4 | This repository holds all interfaces related to PSR-16.
5 |
6 | Note that this is not a cache implementation of its own. It is merely an interface that describes a cache implementation. See [the specification](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-16-simple-cache.md) for more details.
7 |
8 | You can find implementations of the specification by looking for packages providing the [psr/simple-cache-implementation](https://packagist.org/providers/psr/simple-cache-implementation) virtual package.
9 |
--------------------------------------------------------------------------------
/vendor/psr/simple-cache/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "psr/simple-cache",
3 | "description": "Common interfaces for simple caching",
4 | "keywords": ["psr", "psr-16", "cache", "simple-cache", "caching"],
5 | "license": "MIT",
6 | "authors": [
7 | {
8 | "name": "PHP-FIG",
9 | "homepage": "http://www.php-fig.org/"
10 | }
11 | ],
12 | "require": {
13 | "php": ">=5.3.0"
14 | },
15 | "autoload": {
16 | "psr-4": {
17 | "Psr\\SimpleCache\\": "src/"
18 | }
19 | },
20 | "extra": {
21 | "branch-alias": {
22 | "dev-master": "1.0.x-dev"
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/psr/simple-cache/src/CacheException.php:
--------------------------------------------------------------------------------
1 | =5.6"
13 | },
14 | "require-dev": {
15 | "phpunit/phpunit": "^5 || ^6.5",
16 | "php-coveralls/php-coveralls": "^2.1"
17 | },
18 | "autoload": {
19 | "files": ["src/getallheaders.php"]
20 | },
21 | "autoload-dev": {
22 | "psr-4": {
23 | "getallheaders\\Tests\\": "tests/"
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/sabre/cache/.gitignore:
--------------------------------------------------------------------------------
1 | # Composer
2 | vendor/
3 | composer.lock
4 |
5 | # Tests
6 | tests/cov/
7 | tests/.phpunit.result.cache
8 | .php_cs.cache
9 |
--------------------------------------------------------------------------------
/vendor/sabre/cache/.php_cs.dist:
--------------------------------------------------------------------------------
1 | getFinder()
5 | ->exclude('vendor')
6 | ->in(__DIR__);
7 | $config->setRules([
8 | '@PSR1' => true,
9 | '@Symfony' => true
10 | ]);
11 |
12 | return $config;
13 |
--------------------------------------------------------------------------------
/vendor/sabre/cache/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | ChangeLog
2 | =========
3 |
4 | 1.0.3 (2020-10-03)
5 | ------------------
6 |
7 | * #25: Add support for PHP 8.0 (@phil-davis)
8 |
9 | 1.0.2 (2020-10-03)
10 | ------------------
11 |
12 | * #18 #19 #20 #21 #22: Refactor CI (@phil-davis)
13 | * #14: Code refactor for phpstan and add support for PHP 7.4 (@phil-davis)
14 |
15 | 1.0.1 (2019-07-19)
16 | ------------------
17 |
18 | * Memory::delete() must return bool (#11), thx to @webinarium
19 |
20 | 1.0.0 (2017-01-02)
21 | ------------------
22 |
23 | * First version!
24 | * Supports Memcached, APCu and an in-process Memory Cache.
25 | * Supports PSR-16.
26 |
--------------------------------------------------------------------------------
/vendor/sabre/cache/bin/EMPTY:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Highfivery/zero-spam-for-wordpress/83752afac3c90e2f96abea6ce69f7f6aa745ac68/vendor/sabre/cache/bin/EMPTY
--------------------------------------------------------------------------------
/vendor/sabre/cache/lib/InvalidArgumentException.php:
--------------------------------------------------------------------------------
1 | markTestSkipped('Memcached extension is not loaded');
15 | }
16 |
17 | if (!isset($_SERVER['MEMCACHED_SERVER'])) {
18 | $this->markTestSkipped('MEMCACHED_SERVER environment variable is not set');
19 | }
20 |
21 | $memcached = new \Memcached();
22 | $memcached->addServer($_SERVER['MEMCACHED_SERVER'], 11211);
23 |
24 | return new Memcached($memcached);
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/sabre/cache/tests/Cache/MemoryCacheTest.php:
--------------------------------------------------------------------------------
1 |
10 |
11 |
12 | .
13 |
14 |
15 |
16 |
17 |
18 | ../lib/
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/vendor/symfony/deprecation-contracts/.gitignore:
--------------------------------------------------------------------------------
1 | vendor/
2 | composer.lock
3 | phpunit.xml
4 |
--------------------------------------------------------------------------------
/vendor/symfony/deprecation-contracts/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | CHANGELOG
2 | =========
3 |
4 | The changelog is maintained for all Symfony contracts at the following URL:
5 | https://github.com/symfony/contracts/blob/main/CHANGELOG.md
6 |
--------------------------------------------------------------------------------
/vendor/symfony/deprecation-contracts/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "symfony/deprecation-contracts",
3 | "type": "library",
4 | "description": "A generic function and convention to trigger deprecation notices",
5 | "homepage": "https://symfony.com",
6 | "license": "MIT",
7 | "authors": [
8 | {
9 | "name": "Nicolas Grekas",
10 | "email": "p@tchwork.com"
11 | },
12 | {
13 | "name": "Symfony Community",
14 | "homepage": "https://symfony.com/contributors"
15 | }
16 | ],
17 | "require": {
18 | "php": ">=7.1"
19 | },
20 | "autoload": {
21 | "files": [
22 | "function.php"
23 | ]
24 | },
25 | "minimum-stability": "dev",
26 | "extra": {
27 | "branch-alias": {
28 | "dev-main": "2.4-dev"
29 | },
30 | "thanks": {
31 | "name": "symfony/contracts",
32 | "url": "https://github.com/symfony/contracts"
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------