Alejandro Celaya
|
85065c9330
|
Test behavior to track redirect URL
|
2024-11-24 14:05:33 +01:00 |
|
Alejandro Celaya
|
86cc2b717c
|
Save where a visitor is redirected for any kind of tracked visit
|
2024-11-24 13:21:48 +01:00 |
|
Alejandro Celaya
|
89f70114e4
|
Fix typo in migration
|
2024-11-24 13:18:32 +01:00 |
|
Alejandro Celaya
|
8274525f75
|
Add redirect_url field to track where a visitor is redirected for a visit
|
2024-11-24 12:53:49 +01:00 |
|
Alejandro Celaya
|
2946b630c5
|
Use IpAddressFactory from akrabat/ip-address-middleware
|
2024-11-22 09:01:27 +01:00 |
|
Alejandro Celaya
|
d7e300e2d5
|
Reduce duplication in actions listing visits
|
2024-11-20 09:48:12 +01:00 |
|
Alejandro Celaya
|
f57f159002
|
Remove no longer used Visit::isLocatable method
|
2024-11-19 09:10:47 +01:00 |
|
Alejandro Celaya
|
fa08014226
|
Make sure IpGeolocationMiddleware skips localhost
|
2024-11-19 09:08:04 +01:00 |
|
Alejandro Celaya
|
178a99b993
|
Fix visits counts not being deleted when deleting short URL or orphan visits
|
2024-11-15 19:22:29 +01:00 |
|
Alejandro Celaya
|
42ff0d5b69
|
Create IpGeolocationMiddlewareTest
|
2024-11-15 10:17:56 +01:00 |
|
Alejandro Celaya
|
6aaea2ac26
|
Simplify logic in RedirectRule when checking geolocation conditions
|
2024-11-15 09:00:59 +01:00 |
|
Alejandro Celaya
|
b5ff568651
|
Use IpGeolocationMiddleware to geolocate visitors instead of LocateVisit event
|
2024-11-15 08:55:43 +01:00 |
|
Alejandro Celaya
|
4a0b7e3fc9
|
Refactor Visitor model and allow a Location object to be passed to it
|
2024-11-14 14:48:18 +01:00 |
|
Alejandro Celaya
|
a6e0916272
|
Add support for city name dynamic redirects
|
2024-11-14 09:58:53 +01:00 |
|
Alejandro Celaya
|
7ddb3e7a70
|
Add tests covering country code validation
|
2024-11-14 09:40:10 +01:00 |
|
Alejandro Celaya
|
fd34332e69
|
Improve ExtraPathRedirectMiddlewareTest
|
2024-11-14 09:28:10 +01:00 |
|
Alejandro Celaya
|
51d838870d
|
Add reference to ISO 3166-1 alpha-2 country codes wikipedia page
|
2024-11-14 09:14:17 +01:00 |
|
Alejandro Celaya
|
4619ebd014
|
After tracking a visit, set its location in the request as attribute
|
2024-11-14 08:21:16 +01:00 |
|
Alejandro Celaya
|
f2371b6124
|
Update RedirectRuleHandlerTest
|
2024-11-13 10:01:52 +01:00 |
|
Alejandro Celaya
|
b5b5f92eda
|
Add validation for country-code redirect conditions
|
2024-11-12 10:25:39 +01:00 |
|
Alejandro Celaya
|
781c083c9f
|
Add new geolocatio-country-code redirect condition type
|
2024-11-12 10:25:39 +01:00 |
|
Alejandro Celaya
|
9a69d06531
|
Update to PHPStan 2.0
|
2024-11-12 10:22:23 +01:00 |
|
Alejandro Celaya
|
48ecef3436
|
Update RequestTracker so that its methods return the new Visit instance, if any
|
2024-11-11 08:58:16 +01:00 |
|
Alejandro Celaya
|
a5a98bd578
|
Update VisitsTracker so that its methods return the new Visit instance, if any
|
2024-11-11 08:51:55 +01:00 |
|
Alejandro Celaya
|
95685d958d
|
Update to latest test utils
|
2024-11-09 11:02:10 +01:00 |
|
Alejandro Celaya
|
72f1e243b5
|
Make classes readonly when possible
|
2024-11-09 09:55:51 +01:00 |
|
Alejandro Celaya
|
fca3891819
|
Inject ShortUrlRepository in ShortCodeUniquenessHelper
|
2024-11-09 09:47:47 +01:00 |
|
Alejandro Celaya
|
3ec24e3c67
|
Inject ShortUrlRepository in UrlShortener
|
2024-11-09 09:43:55 +01:00 |
|
Alejandro Celaya
|
532102e662
|
Inject ShortUrlRepository in ShortUrlResolver
|
2024-11-09 09:39:56 +01:00 |
|
Alejandro Celaya
|
102169b6c7
|
Inject DomainRepository in DomainService
|
2024-11-09 09:34:24 +01:00 |
|
Alejandro Celaya
|
dba9302f78
|
Inject TagRepository in TagService, instead of getting it from EntityManager
|
2024-11-09 09:25:01 +01:00 |
|
Alejandro Celaya
|
a661d05100
|
Allow API keys to be renamed
|
2024-11-08 08:25:07 +01:00 |
|
Alejandro Celaya
|
4c1ff72438
|
Add method to check if an API exists for a given name
|
2024-11-07 09:55:10 +01:00 |
|
Alejandro Celaya
|
1b9c8377ae
|
Hash existing API keys, and do checks against the hash
|
2024-11-05 23:27:39 +01:00 |
|
Alejandro Celaya
|
9f6975119e
|
Show only API key name in short URLs list
|
2024-11-05 22:52:01 +01:00 |
|
Alejandro Celaya
|
819a535bfe
|
Create migration to set API keys in name column
|
2024-11-05 11:08:11 +01:00 |
|
Alejandro Celaya
|
eae001a34a
|
Rename ShortUrlWithVisitsSummary to ShortUrlWithDeps
|
2024-11-03 11:38:31 +01:00 |
|
Alejandro Celaya
|
d7ecef94f2
|
Avoid selecting domains for every short URL in list
|
2024-11-03 11:38:31 +01:00 |
|
Alejandro Celaya
|
3f1d61e01e
|
Update to PHP coding standard 2.4.0
|
2024-11-03 11:38:31 +01:00 |
|
Alejandro Celaya
|
bb270396b6
|
Allow short URLs list to be filtered by domain authority
|
2024-11-03 11:37:59 +01:00 |
|
Alejandro Celaya
|
525a306ec6
|
Create constant representing default domain identifier
|
2024-11-03 11:37:59 +01:00 |
|
Alejandro Celaya
|
af569ad7a5
|
Fix PHPStan rules
|
2024-11-03 11:37:16 +01:00 |
|
Alejandro Celaya
|
d2403367b5
|
Fix PublishingUpdatesGeneratorTest
|
2024-11-03 11:37:16 +01:00 |
|
Alejandro Celaya
|
84a187a26f
|
Include left join with domains when listing short URLs to avoid N+1 SELECT problem
|
2024-11-03 11:37:15 +01:00 |
|
Alejandro Celaya
|
3149adebdb
|
Expose the fact that a short URL has redirect rules attached to it
|
2024-11-03 11:36:50 +01:00 |
|
Alejandro Celaya
|
a3ea8f56dd
|
Remove app_options config
|
2024-10-24 08:49:58 +02:00 |
|
Alejandro Celaya
|
f3244b35e3
|
Remove remaining local config files
|
2024-10-23 10:53:09 +02:00 |
|
Alejandro Celaya
|
46601443f5
|
Load specific env file when running API tests
|
2024-10-23 09:17:00 +02:00 |
|
Alejandro Celaya
|
c0200317dd
|
Load dev env vars via roadrunner instead of docker compose
|
2024-10-22 15:31:53 +02:00 |
|
Alejandro Celaya
|
c8e5196aab
|
Remove dependencies on url_shortener raw config
|
2024-10-22 15:15:41 +02:00 |
|