├── app ├── index.php ├── Assets │ └── index.php ├── Crons │ └── index.php ├── Models │ ├── index.php │ ├── Api │ │ └── index.php │ ├── Chart │ │ └── index.php │ ├── Grid │ │ ├── index.php │ │ ├── Base │ │ │ └── index.php │ │ ├── Bots │ │ │ └── index.php │ │ ├── Ips │ │ │ └── index.php │ │ ├── Isps │ │ │ └── index.php │ │ ├── Users │ │ │ └── index.php │ │ ├── Blacklist │ │ │ └── index.php │ │ ├── Countries │ │ │ └── index.php │ │ ├── Devices │ │ │ └── index.php │ │ ├── Domains │ │ │ └── index.php │ │ ├── Emails │ │ │ └── index.php │ │ ├── Events │ │ │ └── index.php │ │ ├── Logbook │ │ │ └── index.php │ │ ├── Phones │ │ │ └── index.php │ │ ├── Resources │ │ │ └── index.php │ │ ├── FieldAuditTrail │ │ │ └── index.php │ │ ├── FieldAudits │ │ │ └── index.php │ │ └── ReviewQueue │ │ │ └── index.php │ ├── Context │ │ └── index.php │ ├── Enrichment │ │ └── index.php │ ├── Search │ │ └── index.php │ ├── TopTen │ │ └── index.php │ ├── UserDetails │ │ └── index.php │ └── EventType.php ├── Updates │ └── index.php ├── Utils │ ├── index.php │ └── WordsLists │ │ └── index.php ├── Views │ └── index.php ├── Controllers │ ├── index.php │ ├── Admin │ │ ├── index.php │ │ ├── Api │ │ │ └── index.php │ │ ├── Base │ │ │ └── index.php │ │ ├── Bot │ │ │ └── index.php │ │ ├── Bots │ │ │ └── index.php │ │ ├── Data │ │ │ └── index.php │ │ ├── Home │ │ │ └── index.php │ │ ├── IP │ │ │ └── index.php │ │ ├── IPs │ │ │ └── index.php │ │ ├── ISP │ │ │ └── index.php │ │ ├── ISPs │ │ │ └── index.php │ │ ├── User │ │ │ └── index.php │ │ ├── Blacklist │ │ │ └── index.php │ │ ├── Context │ │ │ └── index.php │ │ ├── Countries │ │ │ └── index.php │ │ ├── Country │ │ │ └── index.php │ │ ├── Devices │ │ │ └── index.php │ │ ├── Domain │ │ │ └── index.php │ │ ├── Domains │ │ │ └── index.php │ │ ├── Emails │ │ │ └── index.php │ │ ├── Events │ │ │ └── index.php │ │ ├── Logbook │ │ │ └── index.php │ │ ├── Phones │ │ │ └── index.php │ │ ├── Resource │ │ │ └── index.php │ │ ├── Resources │ │ │ └── index.php │ │ ├── Rules │ │ │ └── index.php │ │ ├── Search │ │ │ └── index.php │ │ ├── Settings │ │ │ └── index.php │ │ ├── Totals │ │ │ └── index.php │ │ ├── Users │ │ │ └── index.php │ │ ├── Watchlist │ │ │ └── index.php │ │ ├── Enrichment │ │ │ └── index.php │ │ ├── FieldAudit │ │ │ └── index.php │ │ ├── FieldAudits │ │ │ └── index.php │ │ ├── ManualCheck │ │ │ └── index.php │ │ ├── ReviewQueue │ │ │ └── index.php │ │ ├── UserDetails │ │ │ └── index.php │ │ └── FieldAuditTrail │ │ │ └── index.php │ ├── Api │ │ └── index.php │ └── Pages │ │ └── index.php ├── Dictionary │ ├── index.php │ └── en │ │ ├── index.php │ │ ├── Pages │ │ └── index.php │ │ ├── Parts │ │ └── index.php │ │ └── Additional │ │ ├── index.php │ │ └── AdminUsers.php └── Interfaces │ └── index.php ├── assets ├── index.php ├── logs │ └── index.php ├── lists │ ├── index.php │ ├── email.php │ └── user-agent.php └── rules │ ├── index.php │ ├── core │ ├── index.php │ ├── D05.php │ ├── I11.php │ ├── I12.php │ ├── R01.php │ ├── B24.php │ ├── B03.php │ ├── B17.php │ ├── R02.php │ ├── R03.php │ ├── B02.php │ ├── B18.php │ ├── B19.php │ ├── B26.php │ ├── D04.php │ ├── I08.php │ ├── I10.php │ ├── B06.php │ ├── E01.php │ ├── P03.php │ ├── B08.php │ ├── B09.php │ ├── B10.php │ ├── I04.php │ ├── I05.php │ ├── B21.php │ ├── D10.php │ ├── I03.php │ ├── I07.php │ ├── B20.php │ ├── B22.php │ ├── E16.php │ ├── B01.php │ ├── B07.php │ ├── E09.php │ ├── D06.php │ ├── P04.php │ ├── I09.php │ ├── P01.php │ ├── E21.php │ ├── E28.php │ ├── B23.php │ ├── E07.php │ ├── I06.php │ ├── B11.php │ ├── E14.php │ ├── E22.php │ ├── I02.php │ ├── B04.php │ ├── B05.php │ ├── E08.php │ ├── I01.php │ ├── E29.php │ ├── E11.php │ ├── B25.php │ ├── B16.php │ ├── E03.php │ ├── E13.php │ ├── E27.php │ ├── E04.php │ ├── E10.php │ ├── E17.php │ ├── E15.php │ ├── E05.php │ ├── B12.php │ ├── B13.php │ ├── E19.php │ ├── E30.php │ ├── B14.php │ ├── B15.php │ ├── E06.php │ ├── D03.php │ ├── E12.php │ ├── D01.php │ ├── D02.php │ ├── C16.php │ ├── C14.php │ ├── C15.php │ ├── C02.php │ ├── C03.php │ ├── C01.php │ └── C04.php │ └── custom │ └── index.php ├── config ├── index.php ├── local │ └── index.php ├── apiEndpoints.ini └── crons.ini ├── libs ├── index.php ├── phpmailer │ └── phpmailer │ │ ├── VERSION │ │ └── .editorconfig ├── mustangostang │ └── spyc │ │ ├── .gitignore │ │ ├── tests │ │ ├── failing1.yaml │ │ ├── comments.yaml │ │ ├── quotes.yaml │ │ └── LoadTest.php │ │ ├── phpunit.xml │ │ └── examples │ │ └── yaml-load.php ├── ruler │ └── ruler │ │ ├── .gitignore │ │ ├── tests │ │ └── Fixtures │ │ │ ├── Invokable.php │ │ │ ├── FalseProposition.php │ │ │ ├── TrueProposition.php │ │ │ ├── Fact.php │ │ │ ├── toStringable.php │ │ │ └── CallbackProposition.php │ │ ├── .styleci.yml │ │ ├── phpunit.xml.dist │ │ └── src │ │ └── VariableOperand.php ├── bcosca │ └── fatfree-core │ │ ├── .github │ │ └── FUNDING.yml │ │ └── composer.json └── matomo │ └── device-detector │ ├── Yaml │ └── ParserInterface.php │ └── Parser │ ├── AbstractBotParser.php │ ├── Device │ └── Mobile.php │ └── Client │ ├── PIM.php │ └── Library.php ├── tmp └── index.php ├── ui ├── index.php ├── templates │ ├── index.php │ ├── pages │ │ ├── index.php │ │ ├── admin │ │ │ ├── index.php │ │ │ ├── countries.html │ │ │ ├── ips.html │ │ │ ├── isps.html │ │ │ ├── users.html │ │ │ ├── bots.html │ │ │ ├── domains.html │ │ │ ├── resources.html │ │ │ ├── blacklist.html │ │ │ ├── fieldAudits.html │ │ │ ├── reviewQueue.html │ │ │ ├── events.html │ │ │ ├── logbook.html │ │ │ └── watchlist.html │ │ ├── index.html │ │ └── logout.html │ ├── parts │ │ ├── index.php │ │ ├── choices │ │ │ ├── index.php │ │ │ ├── deviceType.html │ │ │ ├── ipTypes.html │ │ │ ├── fileTypes.html │ │ │ ├── entityType.html │ │ │ └── eventType.html │ │ ├── footer.html │ │ ├── forms │ │ │ ├── index.php │ │ │ ├── searchForm.html │ │ │ ├── reloadRulesForm.html │ │ │ ├── removeCoOwnerForm.html │ │ │ ├── resetKeyForm.html │ │ │ ├── manualCheckShortForm.html │ │ │ ├── riskScoreButtonForm.html │ │ │ ├── addCoOwnerForm.html │ │ │ ├── enrichmentButtonForm.html │ │ │ ├── logoutForm.html │ │ │ └── deleteUserForm.html │ │ ├── home │ │ │ ├── index.php │ │ │ └── topTenTable.html │ │ ├── panel │ │ │ └── index.php │ │ ├── popups │ │ │ └── index.php │ │ ├── tables │ │ │ └── index.php │ │ ├── widgets │ │ │ └── index.php │ │ ├── footerAdmin.html │ │ ├── welcomeMessage.html │ │ ├── reloadTableBlock.html │ │ ├── logoAdmin.html │ │ ├── scoreDetails.html │ │ ├── timeZoneSelector.html │ │ └── systemNotification.html │ ├── snippets │ │ ├── index.php │ │ └── curl.html │ └── layout.html ├── js │ ├── endpoints │ │ ├── admin_ip.js │ │ ├── admin_api.js │ │ ├── admin_bot.js │ │ ├── admin_ips.js │ │ ├── admin_isp.js │ │ ├── admin_bots.js │ │ ├── admin_isps.js │ │ ├── admin_user.js │ │ ├── admin_rules.js │ │ ├── admin_users.js │ │ ├── admin_country.js │ │ ├── admin_domain.js │ │ ├── admin_domains.js │ │ ├── admin_events.js │ │ ├── admin_logbook.js │ │ ├── admin_resource.js │ │ ├── admin_settings.js │ │ ├── admin_blacklist.js │ │ ├── admin_countries.js │ │ ├── admin_dashboard.js │ │ ├── admin_resources.js │ │ ├── admin_watchlist.js │ │ ├── admin_field_audit.js │ │ ├── admin_field_audits.js │ │ ├── admin_manual_check.js │ │ ├── admin_review_queue.js │ │ └── user_main.js │ ├── vendor │ │ ├── jvectormap-2.0.5 │ │ │ └── .gitignore │ │ ├── accept-language-parser-1.5.0 │ │ │ ├── .travis.yml │ │ │ ├── .jshintrc │ │ │ └── .gitignore │ │ └── tooltipster-master-4.2.8 │ │ │ ├── bower.json │ │ │ └── composer.json │ ├── parts │ │ ├── utils │ │ │ ├── Functions.js │ │ │ └── DataSource.js │ │ ├── chart │ │ │ ├── Bots.js │ │ │ ├── Blacklist.js │ │ │ ├── FieldAudits.js │ │ │ ├── Isps.js │ │ │ ├── Domains.js │ │ │ ├── Ips.js │ │ │ ├── Resources.js │ │ │ ├── Logbook.js │ │ │ ├── Users.js │ │ │ ├── Events.js │ │ │ └── ReviewQueue.js │ │ ├── choices │ │ │ ├── RulesFilter.js │ │ │ ├── IpTypeFilter.js │ │ │ ├── FileTypeFilter.js │ │ │ ├── EventTypeFilter.js │ │ │ ├── DeviceTypeFilter.js │ │ │ ├── EntityTypeFilter.js │ │ │ └── ScoresRangeFilter.js │ │ └── panel │ │ │ └── FieldPanel.js │ └── pages │ │ └── Settings.js └── images │ ├── favicon.png │ ├── transparent.png │ ├── flags │ ├── id.svg │ ├── bd.svg │ ├── pe.svg │ ├── se.svg │ ├── bq.svg │ ├── de.svg │ ├── gl.svg │ ├── nl.svg │ ├── cz.svg │ ├── lu.svg │ ├── pl.svg │ ├── am.svg │ ├── bl.svg │ ├── fr.svg │ ├── gb-sct.svg │ ├── gf.svg │ ├── gp.svg │ ├── mf.svg │ ├── mq.svg │ ├── pm.svg │ ├── re.svg │ ├── wf.svg │ ├── yt.svg │ ├── dk.svg │ ├── fi.svg │ ├── lv.svg │ ├── ua.svg │ ├── at.svg │ ├── mc.svg │ ├── gb-eng.svg │ ├── ma.svg │ ├── bh.svg │ ├── es-ct.svg │ ├── ng.svg │ ├── ae.svg │ ├── bw.svg │ ├── ga.svg │ ├── hu.svg │ ├── ml.svg │ ├── ne.svg │ ├── sl.svg │ ├── td.svg │ ├── xx.svg │ ├── ci.svg │ ├── bg.svg │ ├── mv.svg │ ├── ru.svg │ ├── co.svg │ ├── dz.svg │ ├── ic.svg │ ├── th.svg │ ├── ye.svg │ ├── cp.svg │ ├── cr.svg │ ├── gh.svg │ ├── gn.svg │ ├── ie.svg │ ├── it.svg │ ├── tt.svg │ ├── be.svg │ ├── mg.svg │ ├── ro.svg │ ├── ch.svg │ ├── sr.svg │ ├── no.svg │ ├── sc.svg │ ├── sj.svg │ ├── sy.svg │ ├── mu.svg │ ├── cd.svg │ ├── ee.svg │ ├── tn.svg │ ├── qa.svg │ ├── bf.svg │ ├── lc.svg │ ├── mk.svg │ ├── to.svg │ ├── ss.svg │ ├── jm.svg │ ├── sn.svg │ ├── vc.svg │ ├── es-pv.svg │ ├── lt.svg │ ├── mr.svg │ ├── la.svg │ ├── jp.svg │ ├── pw.svg │ ├── cg.svg │ ├── az.svg │ ├── gb.svg │ ├── sh.svg │ ├── gy.svg │ ├── so.svg │ ├── vn.svg │ ├── bj.svg │ ├── is.svg │ ├── sd.svg │ ├── tr.svg │ ├── kw.svg │ ├── fo.svg │ ├── gm.svg │ ├── ly.svg │ ├── tz.svg │ ├── cl.svg │ ├── bs.svg │ ├── ps.svg │ ├── ax.svg │ ├── bv.svg │ ├── dj.svg │ ├── gg.svg │ ├── bb.svg │ ├── ca.svg │ ├── cu.svg │ ├── tl.svg │ ├── pr.svg │ ├── um.svg │ ├── us.svg │ ├── nr.svg │ └── ws.svg │ └── icons │ ├── alert-dashboard.svg │ ├── play.svg │ ├── right.svg │ ├── emails.svg │ ├── phablet.svg │ ├── search.svg │ ├── logout.svg │ ├── reputation-none.svg │ ├── alert-yellow.svg │ ├── reputation-low.svg │ ├── clear.svg │ ├── reputation-medium.svg │ ├── reputation-high.svg │ ├── desktop.svg │ ├── landline.svg │ ├── referer.svg │ ├── smartphone.svg │ ├── calendar.svg │ ├── countries.svg │ ├── users.svg │ ├── reload.svg │ ├── rules.svg │ └── ios-ipados-devices.svg ├── sensor └── src │ ├── index.php │ ├── Dto │ └── index.php │ ├── Model │ ├── index.php │ ├── Http │ │ └── index.php │ ├── Blacklist │ │ └── index.php │ ├── Config │ │ └── index.php │ ├── Enriched │ │ └── index.php │ ├── Score │ │ └── index.php │ └── Validated │ │ └── index.php │ ├── Type │ └── index.php │ ├── Controller │ └── index.php │ ├── Entity │ └── index.php │ ├── Exception │ └── index.php │ ├── Factory │ └── index.php │ ├── Repository │ └── index.php │ └── Service │ ├── index.php │ ├── Debug │ └── index.php │ └── Enrichment │ └── index.php ├── robots.txt ├── AUTHORS.md ├── cron.json ├── .profile ├── .gitignore └── RELEASE_NOTES.md /app/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/index.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /app/Controllers/Admin/Enrichment/index.php: -------------------------------------------------------------------------------- 1 | Hello, World! 2 |

It works

-------------------------------------------------------------------------------- /libs/mustangostang/spyc/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | .DS_Store 4 | -------------------------------------------------------------------------------- /libs/mustangostang/spyc/tests/failing1.yaml: -------------------------------------------------------------------------------- 1 | MyObject: 2 | Prop1: {key1:val1} -------------------------------------------------------------------------------- /libs/ruler/ruler/.gitignore: -------------------------------------------------------------------------------- 1 | vendor 2 | composer.lock 3 | .phpunit.result.cache 4 | -------------------------------------------------------------------------------- /libs/bcosca/fatfree-core/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: ikkez 2 | buy_me_a_coffee: ikkez 3 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_ip.js: -------------------------------------------------------------------------------- 1 | import {IpPage} from '../pages/Ip.js'; 2 | 3 | new IpPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_api.js: -------------------------------------------------------------------------------- 1 | import {ApiPage} from '../pages/Api.js'; 2 | 3 | new ApiPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_bot.js: -------------------------------------------------------------------------------- 1 | import {BotPage} from '../pages/Bot.js'; 2 | 3 | new BotPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_ips.js: -------------------------------------------------------------------------------- 1 | import {IpsPage} from '../pages/Ips.js'; 2 | 3 | new IpsPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_isp.js: -------------------------------------------------------------------------------- 1 | import {IspPage} from '../pages/Isp.js'; 2 | 3 | new IspPage(); 4 | -------------------------------------------------------------------------------- /ui/js/vendor/jvectormap-2.0.5/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | //jquery.jvectormap.min.js 3 | .idea 4 | -------------------------------------------------------------------------------- /ui/templates/parts/welcomeMessage.html: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_bots.js: -------------------------------------------------------------------------------- 1 | import {BotsPage} from '../pages/Bots.js'; 2 | 3 | new BotsPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_isps.js: -------------------------------------------------------------------------------- 1 | import {IspsPage} from '../pages/Isps.js'; 2 | 3 | new IspsPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_user.js: -------------------------------------------------------------------------------- 1 | import {UserPage} from '../pages/User.js'; 2 | 3 | new UserPage(); 4 | -------------------------------------------------------------------------------- /ui/templates/layout.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TirrenoTechnologies/tirreno/HEAD/ui/images/favicon.png -------------------------------------------------------------------------------- /ui/js/endpoints/admin_rules.js: -------------------------------------------------------------------------------- 1 | import {RulesPage} from '../pages/Rules.js'; 2 | 3 | new RulesPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_users.js: -------------------------------------------------------------------------------- 1 | import {UsersPage} from '../pages/Users.js'; 2 | 3 | new UsersPage(); 4 | -------------------------------------------------------------------------------- /ui/images/transparent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TirrenoTechnologies/tirreno/HEAD/ui/images/transparent.png -------------------------------------------------------------------------------- /ui/js/endpoints/admin_country.js: -------------------------------------------------------------------------------- 1 | import {CountryPage} from '../pages/Country.js'; 2 | 3 | new CountryPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_domain.js: -------------------------------------------------------------------------------- 1 | import {DomainPage} from '../pages/Domain.js'; 2 | 3 | new DomainPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_domains.js: -------------------------------------------------------------------------------- 1 | import {DomainsPage} from '../pages/Domains.js'; 2 | 3 | new DomainsPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_events.js: -------------------------------------------------------------------------------- 1 | import {EventsPage} from '../pages/Events.js'; 2 | 3 | new EventsPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_logbook.js: -------------------------------------------------------------------------------- 1 | import {LogbookPage} from '../pages/Logbook.js'; 2 | 3 | new LogbookPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_resource.js: -------------------------------------------------------------------------------- 1 | import {ResourcePage} from '../pages/Resource.js'; 2 | 3 | new ResourcePage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_settings.js: -------------------------------------------------------------------------------- 1 | import {SettingsPage} from '../pages/Settings.js'; 2 | 3 | new SettingsPage(); 4 | -------------------------------------------------------------------------------- /cron.json: -------------------------------------------------------------------------------- 1 | { 2 | "jobs": [ 3 | { 4 | "command": "*/10 * * * * php index.php /cron" 5 | } 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /libs/mustangostang/spyc/tests/comments.yaml: -------------------------------------------------------------------------------- 1 | foo: 'bar' #Comment 2 | arr: ['x', 'y', 'z'] # Comment here 3 | bar: kittens -------------------------------------------------------------------------------- /ui/js/endpoints/admin_blacklist.js: -------------------------------------------------------------------------------- 1 | import {BlacklistPage} from '../pages/Blacklist.js'; 2 | 3 | new BlacklistPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_countries.js: -------------------------------------------------------------------------------- 1 | import {CountriesPage} from '../pages/Countries.js'; 2 | 3 | new CountriesPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_dashboard.js: -------------------------------------------------------------------------------- 1 | import {DashboardPage} from '../pages/Dashboard.js'; 2 | 3 | new DashboardPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_resources.js: -------------------------------------------------------------------------------- 1 | import {ResourcesPage} from '../pages/Resources.js'; 2 | 3 | new ResourcesPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_watchlist.js: -------------------------------------------------------------------------------- 1 | import {WatchlistPage} from '../pages/Watchlist.js'; 2 | 3 | new WatchlistPage(); 4 | -------------------------------------------------------------------------------- /ui/templates/parts/reloadTableBlock.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_field_audit.js: -------------------------------------------------------------------------------- 1 | import {FieldAuditPage} from '../pages/FieldAudit.js'; 2 | 3 | new FieldAuditPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_field_audits.js: -------------------------------------------------------------------------------- 1 | import {FieldAuditsPage} from '../pages/FieldAudits.js'; 2 | 3 | new FieldAuditsPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_manual_check.js: -------------------------------------------------------------------------------- 1 | import {ManualCheckPage} from '../pages/ManualCheck.js'; 2 | 3 | new ManualCheckPage(); 4 | -------------------------------------------------------------------------------- /ui/js/endpoints/admin_review_queue.js: -------------------------------------------------------------------------------- 1 | import {ReviewQueuePage} from '../pages/ReviewQueue.js'; 2 | 3 | new ReviewQueuePage(); 4 | -------------------------------------------------------------------------------- /ui/js/vendor/accept-language-parser-1.5.0/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - "4" 4 | - "5" 5 | - "6" 6 | - "7" 7 | -------------------------------------------------------------------------------- /ui/templates/parts/logoAdmin.html: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /ui/templates/parts/scoreDetails.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | -------------------------------------------------------------------------------- /libs/mustangostang/spyc/tests/quotes.yaml: -------------------------------------------------------------------------------- 1 | html_tags: 2 | -
3 | -

4 | html_content: 5 | -

hello world

6 | - hello
world 7 | text_content: 8 | - hello world -------------------------------------------------------------------------------- /ui/images/flags/id.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /config/apiEndpoints.ini: -------------------------------------------------------------------------------- 1 | [routes] 2 | 3 | ; POST request to check if userName is blacklisted 4 | ; params {"value": "userNameToMatch"} 5 | POST /api/v1/blacklist/search = \Controllers\Api\Blacklist->search 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/bd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/images/flags/pe.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/js/vendor/tooltipster-master-4.2.8/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tooltipster", 3 | "main": ["dist/js/tooltipster.bundle.js", "dist/css/tooltipster.bundle.css"], 4 | "dependencies": { 5 | "jquery": ">=1.10" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /ui/images/flags/se.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/templates/parts/home/topTenTable.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
{{@c1}}{{@c2}}
9 | -------------------------------------------------------------------------------- /ui/images/flags/bq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/de.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/gl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/images/flags/nl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/cz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/lu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/pl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/am.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/bl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/fr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/gb-sct.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/images/flags/gf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/gp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/mf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/mq.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/pm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/re.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/wf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/yt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/dk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/fi.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/lv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/ua.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/at.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/mc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/gb-eng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/ma.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/js/parts/utils/Functions.js: -------------------------------------------------------------------------------- 1 | const debounce = callback => { 2 | let timeout; 3 | 4 | return (...args) => { 5 | clearTimeout(timeout); 6 | timeout = setTimeout(() => callback.apply(this, args), 500); 7 | }; 8 | }; 9 | 10 | export {debounce}; 11 | -------------------------------------------------------------------------------- /ui/images/flags/bh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/images/flags/es-ct.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/images/icons/alert-dashboard.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/flags/ng.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /.profile: -------------------------------------------------------------------------------- 1 | chmod 740 composer.json 2 | chmod 740 composer.lock 3 | chmod -R 755 tmp 4 | chmod -R 740 config 5 | chmod -R 755 assets 6 | chmod -R 755 assets/rules 7 | chmod -R 755 assets/rules/core 8 | chmod -R 755 assets/rules/custom 9 | chmod -R 755 assets/logs 10 | chmod -R 755 assets/lists 11 | -------------------------------------------------------------------------------- /libs/ruler/ruler/tests/Fixtures/Invokable.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Bots.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class BotsChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Bots', 'red'), 8 | ]; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | config/config.local.ini 2 | config/local/config.local.ini 3 | ui/node_modules 4 | node_modules/* 5 | public/* 6 | vendor/* 7 | .DS_Store 8 | composer.phar 9 | /.php-cs-fixer.cache 10 | logs/* 11 | !/logs/index.php 12 | assets/logs/* 13 | !/assets/logs/index.php 14 | tmp/* 15 | !/tmp/index.php 16 | -------------------------------------------------------------------------------- /ui/images/flags/bw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /libs/mustangostang/spyc/phpunit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | tests/ 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/images/flags/ga.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/hu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/ml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/ne.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/sl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/td.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/xx.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /assets/lists/email.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/bg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/mv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/ru.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /libs/phpmailer/phpmailer/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_size = 4 6 | indent_style = space 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | 11 | [*.md] 12 | trim_trailing_whitespace = false 13 | 14 | [*.{yml,yaml}] 15 | indent_size = 2 16 | -------------------------------------------------------------------------------- /ui/images/flags/co.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/dz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/ic.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/th.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/ye.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Blacklist.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class BlacklistChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Blacklisted identities', 'red'), 8 | ]; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /ui/js/parts/chart/FieldAudits.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class FieldAuditsChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Total changes', 'yellow'), 8 | ]; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /libs/ruler/ruler/tests/Fixtures/FalseProposition.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/cr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/gh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/gn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/ie.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/it.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/tt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/icons/play.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/flags/be.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/mg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/ro.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/Models/EventType.php: -------------------------------------------------------------------------------- 1 | execQuery($query, null); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /ui/images/flags/ch.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /ui/images/flags/sr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/no.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/sc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/sj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/sy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/icons/right.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/searchForm.html: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 | 5 | 6 | 7 |
8 |
9 | -------------------------------------------------------------------------------- /ui/images/flags/mu.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/images/flags/cd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Isps.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class IspsChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Total ISPs', 'green'), 8 | this.getSingleSeries('New ISPs', 'yellow'), 9 | ]; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /libs/ruler/ruler/tests/Fixtures/Fact.php: -------------------------------------------------------------------------------- 1 | value = $value; 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ui/images/flags/ee.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/tn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/js/pages/Settings.js: -------------------------------------------------------------------------------- 1 | import {BasePage} from './Base.js'; 2 | import {DeleteAccountPopUp} from '../parts/DeleteAccountPopUp.js?v=2'; 3 | 4 | export class SettingsPage extends BasePage { 5 | 6 | constructor() { 7 | super('settings'); 8 | 9 | this.initUi(); 10 | } 11 | 12 | initUi() { 13 | new DeleteAccountPopUp(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/flags/qa.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Domains.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class DomainsChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Total domains', 'green'), 8 | this.getSingleSeries('New domains', 'yellow'), 9 | ]; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /ui/images/flags/bf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/js/vendor/accept-language-parser-1.5.0/.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "curly": true, 3 | "eqeqeq": true, 4 | "immed": true, 5 | "latedef": true, 6 | "newcap": true, 7 | "noarg": true, 8 | "sub": true, 9 | "undef": true, 10 | "boss": true, 11 | "eqnull": true, 12 | "node": true, 13 | "predef": [ 14 | "describe", 15 | "it" 16 | ] 17 | } -------------------------------------------------------------------------------- /ui/images/flags/lc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /libs/bcosca/fatfree-core/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "bcosca/fatfree-core", 3 | "description": "A powerful yet easy-to-use PHP micro-framework designed to help you build dynamic and robust Web applications - fast!", 4 | "homepage": "http://fatfreeframework.com/", 5 | "license": "GPL-3.0", 6 | "require": { 7 | "php": ">=7.2" 8 | }, 9 | "autoload": { 10 | "classmap": ["."] 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ui/images/flags/mk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/reloadRulesForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 |
5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/removeCoOwnerForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 |
7 | -------------------------------------------------------------------------------- /ui/images/flags/to.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /ui/templates/parts/timeZoneSelector.html: -------------------------------------------------------------------------------- 1 |
2 | 8 |
9 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/resetKeyForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 |
7 | -------------------------------------------------------------------------------- /RELEASE_NOTES.md: -------------------------------------------------------------------------------- 1 | Release song: https://youtu.be/-tVZX470SYc 2 | 3 | tirreno is announcing version v0.9.10. 4 | 5 | This release is a major update this year, introducing field history (field audit trail), 6 | a new feature that can be embedded into your applications. It also includes several internal 7 | improvements, such as a streamlined installation workflow, a refactored queue model, 8 | and overall performance optimizations. 9 | -------------------------------------------------------------------------------- /ui/images/icons/emails.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/icons/phablet.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Ips.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class IpsChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Residential', 'green'), 8 | this.getSingleSeries('Privacy', 'yellow'), 9 | this.getSingleSeries('Suspicious', 'red'), 10 | ]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Resources.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class ResourcesChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('200', 'green'), 8 | this.getSingleSeries('404', 'yellow'), 9 | this.getSingleSeries('403 & 500', 'red'), 10 | ]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Logbook.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class LogbookChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Success', 'green'), 8 | this.getSingleSeries('Validation issues', 'yellow'), 9 | this.getSingleSeries('Failed', 'red'), 10 | ]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Users.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class UsersChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('High trust', 'green'), 8 | this.getSingleSeries('Average trust', 'yellow'), 9 | this.getSingleSeries('In review', 'red'), 10 | ]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ui/images/flags/ss.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/images/flags/jm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/js/parts/chart/Events.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class EventsChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Regular events', 'green'), 8 | this.getSingleSeries('Warning events', 'yellow'), 9 | this.getSingleSeries('Alert events', 'red'), 10 | ]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ui/js/parts/chart/ReviewQueue.js: -------------------------------------------------------------------------------- 1 | import {BaseLineChart} from './BaseLine.js?v=2'; 2 | 3 | export class ReviewQueueChart extends BaseLineChart { 4 | getSeries() { 5 | return [ 6 | this.getDaySeries(), 7 | this.getSingleSeries('Whitelisted', 'green'), 8 | this.getSingleSeries('In review', 'yellow'), 9 | this.getSingleSeries('Blacklisted', 'red'), 10 | ]; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /libs/ruler/ruler/.styleci.yml: -------------------------------------------------------------------------------- 1 | risky: true 2 | 3 | preset: symfony 4 | 5 | enabled: 6 | - align_double_arrow 7 | - native_function_invocation 8 | - ordered_use 9 | - strict 10 | 11 | disabled: 12 | - native_function_invocation_symfony 13 | - no_superfluous_phpdoc_tags_symfony 14 | - pow_to_exponentiation 15 | - pre_increment 16 | - unalign_double_arrow 17 | - yoda_style 18 | 19 | finder: 20 | name: 21 | - "*.php" 22 | -------------------------------------------------------------------------------- /libs/ruler/ruler/tests/Fixtures/toStringable.php: -------------------------------------------------------------------------------- 1 | thingy = $foo; 15 | } 16 | 17 | public function __toString(): string 18 | { 19 | return (string) $this->thingy; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/D05.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eup_has_rare_os']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I11.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_unique_cidrs']->equalTo(1), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I12.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_lan']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/R01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_has_fraud']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B24.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_empty_referer']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/flags/sn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/images/icons/search.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /assets/rules/core/B03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_email_changed']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B17.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_total_country']->equalTo(1), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/R02.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_fraud_detected']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/R03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['lp_fraud_detected']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/flags/vc.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/manualCheckShortForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 | {{ @value->search_query }} 7 |
8 | -------------------------------------------------------------------------------- /assets/rules/core/B02.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_password_changed']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B18.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_http_method_head']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B19.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_session_night_time']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B26.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_session_single_event']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/D04.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eup_has_rare_browser']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I08.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_starlink']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I10.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_only_residential']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B06.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_vulnerable_url']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/E01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_is_invalid']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/P03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ep_shared_phone']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/flags/es-pv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ui/images/flags/lt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/mr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /assets/rules/core/B08.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_days_since_last_visit']->greaterThan(30), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B09.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_days_since_last_visit']->greaterThan(90), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B10.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_days_since_last_visit']->greaterThan(365), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I04.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_shared']->greaterThan(1), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/js/parts/choices/RulesFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderRuleSelectorItem, 4 | renderRuleSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class RulesFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#rule-selectors', 11 | renderRuleSelectorItem, 12 | renderRuleSelectorChoice, 13 | 'rulesFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /libs/ruler/ruler/phpunit.xml.dist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | ./tests/ 7 | 8 | 9 | 10 | 11 | 12 | ./src/ 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/countries.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /assets/rules/core/I05.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_vpn']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/ips.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /assets/rules/core/B21.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_session_multiple_device']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/D10.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eup_vulnerable_ua']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_blocklist']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I07.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_relay']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/icons/logout.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/parts/choices/IpTypeFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderIpTypeSelectorItem, 4 | renderIpTypeSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class IpTypeFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#ip-type-selectors', 11 | renderIpTypeSelectorItem, 12 | renderIpTypeSelectorChoice, 13 | 'ipTypeFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/isps.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/users.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /assets/rules/core/B20.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_session_multiple_country']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B22.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_session_multiple_ip']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/bots.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 |
6 | 7 | 8 | 9 |
10 |
11 | 12 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/domains.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /assets/rules/core/E16.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_from_blockdomains']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/icons/reputation-none.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/resources.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /assets/rules/core/B01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_total_country']->greaterThan(3), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B07.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_fullname_has_numbers']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/E09.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_domain_free_email_provider']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/icons/alert-yellow.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/parts/choices/FileTypeFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderFileTypeSelectorItem, 4 | renderFileTypeSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class FileTypeFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#file-type-selectors', 11 | renderFileTypeSelectorItem, 12 | renderFileTypeSelectorChoice, 13 | 'fileTypeFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/blacklist.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 |
6 | 7 | 8 | 9 |
10 |
11 | 12 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/fieldAudits.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/reviewQueue.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 |
5 | 6 | 7 | 8 |
9 |
10 | 11 | -------------------------------------------------------------------------------- /assets/rules/core/D06.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_total_device']->greaterThan(4), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/P04.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['lp_invalid_phone']->equalTo(false), 13 | $this->rb['ep_phone_number']->notEqualTo([]), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/icons/reputation-low.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libs/mustangostang/spyc/examples/yaml-load.php: -------------------------------------------------------------------------------- 1 | spyc.yaml loaded into PHP:
'; 15 | print_r($array); 16 | echo ''; 17 | 18 | 19 | echo '
YAML Data dumped back:
'; 20 | echo Spyc::YAMLDump($array); 21 | echo '
'; 22 | -------------------------------------------------------------------------------- /libs/ruler/ruler/src/VariableOperand.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | interface VariableOperand 18 | { 19 | public function prepareValue(Context $context): Value; 20 | } 21 | -------------------------------------------------------------------------------- /ui/images/flags/la.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ui/js/parts/choices/EventTypeFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderEventTypeSelectorItem, 4 | renderEventTypeSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class EventTypeFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#event-type-selectors', 11 | renderEventTypeSelectorItem, 12 | renderEventTypeSelectorChoice, 13 | 'eventTypeFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/I09.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_total_ip']->greaterThan(9), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/P01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['lp_invalid_phone']->equalTo(true), 13 | $this->rb['ep_phone_number']->notEqualTo([]), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/flags/jp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /ui/images/flags/pw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /assets/rules/core/E21.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_email_has_vowels']->equalTo(false), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/E28.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_email_has_no_digits']->equalTo(true), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/flags/cg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ui/images/icons/clear.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/icons/reputation-medium.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/parts/choices/DeviceTypeFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderDeviceTypeSelectorItem, 4 | renderDeviceTypeSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class DeviceTypeFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#device-type-selectors', 11 | renderDeviceTypeSelectorItem, 12 | renderDeviceTypeSelectorChoice, 13 | 'deviceTypeFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/js/parts/choices/EntityTypeFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderEntityTypeSelectorItem, 4 | renderEntityTypeSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class EntityTypeFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#entity-type-selectors', 11 | renderEntityTypeSelectorItem, 12 | renderEntityTypeSelectorChoice, 13 | 'entityTypeFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/riskScoreButtonForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 8 |
9 | -------------------------------------------------------------------------------- /assets/rules/core/B23.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_fullname_has_spaces_hyphens']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/E07.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_with_long_local_part_length']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I06.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_data_center']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/flags/az.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/images/flags/gb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/flags/sh.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/images/icons/reputation-high.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/parts/choices/ScoresRangeFilter.js: -------------------------------------------------------------------------------- 1 | import {BaseFilter} from './BaseFilter.js?v=2'; 2 | import { 3 | renderScoresRangeSelectorItem, 4 | renderScoresRangeSelectorChoice, 5 | } from '../DataRenderers.js?v=2'; 6 | 7 | export class ScoresRangeFilter extends BaseFilter { 8 | constructor() { 9 | super( 10 | '#scores-range-selectors', 11 | renderScoresRangeSelectorItem, 12 | renderScoresRangeSelectorChoice, 13 | 'scoresRangeFilterChanged' 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/B11.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_days_since_account_creation']->notEqualTo(-1), 13 | $this->rb['ea_days_since_account_creation']->lessThan(1), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/E14.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_domain_without_mx_record']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/E22.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_email_has_consonants']->equalTo(false), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/I02.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_domains_count_len']->greaterThan(0), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/images/flags/gy.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /ui/images/flags/so.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /ui/images/icons/desktop.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/icons/landline.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/flags/vn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/addCoOwnerForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | -------------------------------------------------------------------------------- /assets/rules/core/B04.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_multiple_5xx_http']->greaterThan(\Utils\Constants::get('RULE_MAXIMUM_NUMBER_OF_500_CODES')), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/B05.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['event_multiple_4xx_http']->greaterThanOrEqualTo(\Utils\Constants::get('RULE_MAXIMUM_NUMBER_OF_404_CODES')), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/E08.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_with_long_domain_length']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/I01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['eip_tor']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /assets/rules/core/E29.php: -------------------------------------------------------------------------------- 1 | 3 years)'; 7 | public const DESCRIPTION = 'The earliest data breach associated with the email appeared more than 3 years ago. Can be used as sign of aged email.'; 8 | public const ATTRIBUTES = ['email']; 9 | 10 | protected function defineCondition() { 11 | return $this->rb->logicalAnd( 12 | $this->rb['ee_days_since_first_breach']->greaterThan(365 * 3), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/js/parts/utils/DataSource.js: -------------------------------------------------------------------------------- 1 | const getQueryParams = (params) => { 2 | const data = {}; 3 | Object.assign(data, params); 4 | 5 | if (params.dateRange) { 6 | data['dateTo'] = params.dateRange.dateTo; 7 | data['dateFrom'] = params.dateRange.dateFrom; 8 | data['keepDates'] = params.dateRange.keepDates; 9 | } 10 | 11 | if (params.searchValue) { 12 | data['search'] = { 13 | value: params.searchValue 14 | }; 15 | } 16 | 17 | return data; 18 | }; 19 | 20 | export {getQueryParams}; 21 | -------------------------------------------------------------------------------- /assets/rules/core/E11.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_is_disposable']->equalTo(true), 13 | ); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/events.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 |
6 | 7 | 8 | 9 |
10 |
11 | 12 | -------------------------------------------------------------------------------- /assets/rules/core/B25.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_userid']->equalTo(\Utils\Constants::get('UNAUTHORIZED_USERID')), 13 | $this->rb['event_2xx_http']->equalTo(true), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/flags/bj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /ui/images/flags/is.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ui/images/flags/sd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/logbook.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 |
6 | 7 | 8 | 9 |
10 |
11 | 12 | -------------------------------------------------------------------------------- /assets/rules/core/B16.php: -------------------------------------------------------------------------------- 1 | 180 days)'; 7 | public const DESCRIPTION = 'The account has been created over 180 days ago.'; 8 | public const ATTRIBUTES = []; 9 | 10 | protected function defineCondition() { 11 | return $this->rb->logicalAnd( 12 | $this->rb['ea_days_since_account_creation']->notEqualTo(-1), 13 | $this->rb['ea_days_since_account_creation']->greaterThanOrEqualTo(180), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/E03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_has_suspicious_str']->equalTo(true), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/E13.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_days_since_domain_creation']->notEqualTo(-1), 13 | $this->rb['ld_days_since_domain_creation']->lessThan(90), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/templates/pages/logout.html: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 | 13 |
14 |
15 | 16 | -------------------------------------------------------------------------------- /assets/rules/core/E27.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | //$this->rb['le_has_no_profiles']->equalTo(false), 13 | // do not trigger if le_data_breach is null, 14 | $this->rb['le_data_breach']->equalTo(true), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ui/images/flags/tr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /ui/js/endpoints/user_main.js: -------------------------------------------------------------------------------- 1 | (function() { 2 | const emulateButtonClick = () => { 3 | let button = document.getElementById('submit-button'); 4 | 5 | button.classList.add('clicked'); 6 | button.click(); 7 | 8 | setTimeout(() => { 9 | button.classList.remove('clicked'); 10 | }, 200); 11 | }; 12 | 13 | const onEnterKeyDown = e => { 14 | if (e.keyCode === 13) { 15 | emulateButtonClick(); 16 | } 17 | }; 18 | 19 | document.addEventListener('keydown', onEnterKeyDown, false); 20 | })(); 21 | -------------------------------------------------------------------------------- /ui/images/flags/kw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/templates/pages/admin/watchlist.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 |
6 | 7 | 8 | 9 |
10 |
11 | 12 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/enrichmentButtonForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 | 9 |
10 | -------------------------------------------------------------------------------- /ui/templates/parts/systemNotification.html: -------------------------------------------------------------------------------- 1 | 2 | {~ foreach (@SYSTEM_MESSAGES as @id=>@message): ~} 3 |
4 | [{{ \Utils\ElapsedDate::short(@message.created_at) }}]  {{ @message.text | raw }} 5 |
6 | {~ endforeach ~} 7 |
8 | 9 | 10 | -------------------------------------------------------------------------------- /assets/rules/core/E04.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_has_numeric_only_local_part']->equalTo(true), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /assets/rules/core/E10.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_website_is_disabled']->equalTo(true), 13 | $this->rb['ld_domain_free_email_provider']->notEqualTo(true), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/logoutForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 |

{{ @Logout_text }}

5 | 6 |
7 | 8 |
9 | 12 |
13 | 14 |
15 |
16 |
17 | -------------------------------------------------------------------------------- /assets/rules/core/E17.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_domain_free_email_provider']->equalTo(true), 13 | $this->rb['le_email_in_blockemails']->equalTo(true), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/templates/parts/forms/deleteUserForm.html: -------------------------------------------------------------------------------- 1 |
2 | 3 | 4 | 5 | 6 | {{ @AdminUser_scheduled_for_removal }} 7 |
8 | -------------------------------------------------------------------------------- /libs/mustangostang/spyc/tests/LoadTest.php: -------------------------------------------------------------------------------- 1 | assertEquals ($yaml, $yaml_loaded); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ui/images/flags/fo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ui/images/flags/gm.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /ui/images/flags/ly.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/images/flags/tz.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /assets/rules/core/E15.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_has_no_data_breaches']->equalTo(true), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/flags/cl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /assets/rules/core/E05.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_email_has_consec_s_chars']->equalTo(true), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/flags/bs.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /assets/rules/core/B12.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_days_since_account_creation']->notEqualTo(-1), 13 | $this->rb['ea_days_since_account_creation']->lessThan(7), 14 | $this->rb['ea_days_since_account_creation']->greaterThanOrEqualTo(1), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /assets/rules/core/B13.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ea_days_since_account_creation']->notEqualTo(-1), 13 | $this->rb['ea_days_since_account_creation']->lessThan(30), 14 | $this->rb['ea_days_since_account_creation']->greaterThanOrEqualTo(7), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /assets/rules/core/E19.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['ee_email_count']->greaterThan(1), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/E30.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_tranco_rank']->greaterThan(100000), 13 | $this->rb['ld_tranco_rank']->lessThan(4000000), 14 | $this->rb['ld_domain_free_email_provider']->notEqualTo(true), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /config/crons.ini: -------------------------------------------------------------------------------- 1 | [crons] 2 | queuesClearer = Crons\QueuesClearer, 0-10 0 * * 2 3 | notificationsHandler = Crons\NotificationsHandler, * * * * * 4 | retentionPolicyViolations = Crons\RetentionPolicyViolations, 0-10 0 * * * 5 | deletionQueueHandler = Crons\DeletionQueueHandler, * * * * * 6 | batchedNewEvents = Crons\BatchedNewEvents, * * * * * 7 | totals = Crons\Totals, * * * * * 8 | riskScoreQueueHandler = Crons\RiskScoreQueueHandler, * * * * * 9 | blacklistQueueHandler = Crons\BlacklistQueueHandler, * * * * * 10 | logbookRotation = Crons\LogbookRotation, "0-10 * * * *" 11 | enrichmentQueueHandler = Crons\EnrichmentQueueHandler, * * * * * 12 | -------------------------------------------------------------------------------- /ui/images/icons/referer.svg: -------------------------------------------------------------------------------- 1 | share-external-link-1 -------------------------------------------------------------------------------- /ui/js/parts/panel/FieldPanel.js: -------------------------------------------------------------------------------- 1 | import {EventPanel} from './EventPanel.js?v=2'; 2 | import {renderJsonTextarea} from '../DataRenderers.js?v=2'; 3 | 4 | export class FieldPanel extends EventPanel { 5 | 6 | constructor() { 7 | let eventParams = { 8 | enrichment: false, 9 | type: 'field', 10 | url: `${window.app_base}/admin/fieldEventDetails`, 11 | cardId: 'field-card', 12 | panelClosed: 'fieldPanelClosed', 13 | closePanel: 'closeFieldPanel', 14 | rowClicked: 'fieldTableRowClicked', 15 | }; 16 | super(eventParams); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /assets/rules/core/B14.php: -------------------------------------------------------------------------------- 1 | 30 days)'; 7 | public const DESCRIPTION = 'The account has been created over 30 days ago.'; 8 | public const ATTRIBUTES = []; 9 | 10 | protected function defineCondition() { 11 | return $this->rb->logicalAnd( 12 | $this->rb['ea_days_since_account_creation']->notEqualTo(-1), 13 | $this->rb['ea_days_since_account_creation']->lessThan(90), 14 | $this->rb['ea_days_since_account_creation']->greaterThanOrEqualTo(30), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /assets/rules/core/B15.php: -------------------------------------------------------------------------------- 1 | 90 days)'; 7 | public const DESCRIPTION = 'The account has been created over 90 days ago.'; 8 | public const ATTRIBUTES = []; 9 | 10 | protected function defineCondition() { 11 | return $this->rb->logicalAnd( 12 | $this->rb['ea_days_since_account_creation']->notEqualTo(-1), 13 | $this->rb['ea_days_since_account_creation']->lessThan(180), 14 | $this->rb['ea_days_since_account_creation']->greaterThanOrEqualTo(90), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /assets/rules/core/E06.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['le_email_has_consec_nums']->equalTo(true), 13 | $this->rb['le_local_part_len']->greaterThan(0), 14 | ); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /ui/images/flags/ps.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /libs/matomo/device-detector/Yaml/ParserInterface.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /ui/images/flags/bv.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/images/flags/dj.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/images/flags/gg.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /ui/images/icons/smartphone.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/flags/bb.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /ui/images/flags/ca.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /libs/matomo/device-detector/Parser/AbstractBotParser.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/images/icons/calendar.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/templates/snippets/curl.html: -------------------------------------------------------------------------------- 1 | curl -X POST \ 2 | -d 'userName=' \ 3 | -d 'emailAddress=' \ 4 | -d 'ipAddress=' \ 5 | -d 'url=' \ 6 | -d 'userAgent=' \ 7 | -d 'eventTime=' \ 8 | -d 'firstName=' \ 9 | -d 'lastName=' \ 10 | -d 'fullName=' \ 11 | -d 'pageTitle=' \ 12 | -d 'phoneNumber=' \ 13 | -d 'httpReferer=' \ 14 | -d 'httpCode=' \ 15 | -d 'browserLanguage=' \ 16 | -d 'eventType=' \ 17 | -d 'httpMethod=' \ 18 | -d 'userCreated=' \ 19 | -d 'payload=' \ 20 | -d 'fieldHistory=' \ 21 | -H 'Api-Key: {{ @apiKey }}' \ 22 | -H 'Content-Type: application/x-www-form-urlencoded' \ 23 | {{ @apiUrl }} 24 | -------------------------------------------------------------------------------- /ui/images/flags/tl.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/images/icons/countries.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/icons/users.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/templates/parts/choices/deviceType.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 11 |
12 |
13 |
14 |
15 | -------------------------------------------------------------------------------- /ui/templates/parts/choices/ipTypes.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 11 |
12 |
13 |
14 |
15 | -------------------------------------------------------------------------------- /ui/images/flags/pr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /ui/templates/parts/choices/fileTypes.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 11 |
12 |
13 |
14 |
15 | -------------------------------------------------------------------------------- /assets/rules/core/D03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eup_has_bot_devices']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/E12.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 12 | $this->rb['ld_domain_free_email_provider']->equalTo(true), 13 | //$this->rb['le_has_no_profiles']->equalTo(true), 14 | $this->rb['le_has_no_data_breaches']->equalTo(true), 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /ui/images/flags/um.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /ui/images/flags/us.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /assets/rules/core/D01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eup_has_unknown_devices']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/D02.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eup_has_linux_system']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/C16.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /ui/templates/parts/choices/entityType.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 11 |
12 |
13 |
14 |
15 | -------------------------------------------------------------------------------- /ui/images/flags/nr.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /ui/js/vendor/accept-language-parser-1.5.0/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | 5 | # Runtime data 6 | pids 7 | *.pid 8 | *.seed 9 | 10 | # Directory for instrumented libs generated by jscoverage/JSCover 11 | lib-cov 12 | 13 | # Coverage directory used by tools like istanbul 14 | coverage 15 | 16 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 17 | .grunt 18 | 19 | # Compiled binary addons (http://nodejs.org/api/addons.html) 20 | build/Release 21 | 22 | # Dependency directory 23 | # Deployed apps should consider commenting this line out: 24 | # see https://npmjs.org/doc/faq.html#Should-I-check-my-node_modules-folder-into-git 25 | node_modules 26 | 27 | .idea 28 | -------------------------------------------------------------------------------- /assets/rules/core/C14.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/C15.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /ui/images/flags/ws.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ui/templates/parts/choices/eventType.html: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 |
5 | 11 |
12 |
13 |
14 |
15 | -------------------------------------------------------------------------------- /app/Dictionary/en/Additional/AdminUsers.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/images/icons/rules.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ui/js/vendor/tooltipster-master-4.2.8/composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "tooltipster/tooltipster", 3 | "description": "Tooltipster is a flexible and extensible jQuery plugin for modern tooltips.", 4 | "keywords": [ 5 | "jquery", 6 | "tooltip", 7 | "plugin", 8 | "replacement" 9 | ], 10 | "homepage": "http://calebjacob.github.io/tooltipster/", 11 | "authors": [ 12 | { 13 | "name": "Caleb Jacob", 14 | "homepage": "https://plus.google.com/+CalebJacob?rel=author" 15 | }, 16 | { 17 | "name": "Louis Ameline", 18 | "homepage": "https://github.com/louisameline" 19 | } 20 | ], 21 | "license": "MIT", 22 | "suggest": { 23 | "components/jquery": ">=1.10" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /assets/lists/user-agent.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /libs/matomo/device-detector/Parser/Client/PIM.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/C03.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /libs/matomo/device-detector/Parser/Client/Library.php: -------------------------------------------------------------------------------- 1 | callback = $callback; 22 | } 23 | 24 | public function evaluate(Context $context): bool 25 | { 26 | return \call_user_func($this->callback, $context); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /assets/rules/core/C01.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /assets/rules/core/C04.php: -------------------------------------------------------------------------------- 1 | rb->logicalAnd( 18 | $this->rb['eip_has_specific_country']->equalTo(true), 19 | ); 20 | } 21 | } 22 | --------------------------------------------------------------------------------