Alejandro Celaya
|
594e7da256
|
Created new findIfExists meta param
|
2019-02-02 11:05:28 +01:00 |
|
Alejandro Celaya
|
d61f5faf59
|
Refactored UrlShortener public method to receibe DTOs instead of primitive params
|
2019-02-02 11:05:28 +01:00 |
|
Alejandro Celaya
|
5756609531
|
Deleted deprecated constant
|
2019-02-02 11:05:28 +01:00 |
|
Alejandro Celaya
|
87ba7a7179
|
Updated structure for tests config files
|
2019-01-26 09:09:57 +01:00 |
|
Alejandro Celaya
|
687d8d91a9
|
Changed references to functional tests by database tests
|
2019-01-20 21:49:07 +01:00 |
|
Alejandro Celaya
|
32070b1fa7
|
Do not use ServerRequestFactory::fromGlobals in tests
|
2018-12-25 23:19:36 +01:00 |
|
Alejandro Celaya
|
58dbee10c5
|
Used DQL for non-dynamic query in VisitRepository
|
2018-12-19 14:36:03 +01:00 |
|
Alejandro Celaya
|
f8207994dc
|
Removed superfluous method docs
|
2018-12-19 14:31:52 +01:00 |
|
Alejandro Celaya
|
2030401859
|
Migrated non-dynamic query to DQL in ShortUrlRepository
|
2018-12-19 14:29:43 +01:00 |
|
Alejandro Celaya
|
a28c1d17c5
|
Moved entities mappings from annotations to external config files
|
2018-12-16 12:08:03 +01:00 |
|
Alejandro Celaya
|
bb40d84212
|
Used ShlinkTable on every location rendering a CLI table
|
2018-12-08 12:12:11 +01:00 |
|
Alejandro Celaya
|
737137b19f
|
Added favicon
|
2018-12-07 09:17:31 +01:00 |
|
Alejandro Celaya
|
a562bc661d
|
Improved CacheFactory class
|
2018-12-06 21:05:11 +01:00 |
|
Alejandro Celaya
|
3faf6e967f
|
Updated changelog adding v1.15
|
2018-12-02 19:15:58 +01:00 |
|
Alejandro Celaya
|
a7a5667301
|
Improved repository tests
|
2018-12-02 19:13:49 +01:00 |
|
Alejandro Celaya
|
d7e89ebdae
|
Ensured custom slugs are case sensitive
|
2018-12-01 21:38:29 +01:00 |
|
Alejandro Celaya
|
b876870bd8
|
Encapsulated in VisitsParams how the itemsPerPage param is handled
|
2018-11-29 08:02:22 +01:00 |
|
Alejandro Celaya
|
1d4ef4e9a4
|
Ensured pagination params in visits list are properly parsed to integer
|
2018-11-28 20:53:04 +01:00 |
|
Alejandro Celaya
|
d0e0aea0f1
|
Updated visits to support pagination
|
2018-11-28 20:39:08 +01:00 |
|
Alejandro Celaya
|
b0f250ed8a
|
Created factory method to build VisitParams from a raw dataset
|
2018-11-28 19:58:45 +01:00 |
|
Alejandro Celaya
|
45254606d4
|
Added DTO used to pass filtering params to VisitsTracker
|
2018-11-27 21:09:27 +01:00 |
|
Alejandro Celaya
|
f40349479e
|
Used more strict types in UrlShortener private methods
|
2018-11-24 07:52:57 +01:00 |
|
Alejandro Celaya
|
5abd9d1a40
|
Made test properties to be private instead of protected
|
2018-11-20 19:37:22 +01:00 |
|
Alejandro Celaya
|
0ae5a53d86
|
Enforced property types comments in one line
|
2018-11-20 19:30:27 +01:00 |
|
Alejandro Celaya
|
09add5fbff
|
Moved locale middleware to before the not found handler, so that it never gets executed otherwise
|
2018-11-18 20:15:37 +01:00 |
|
Alejandro Celaya
|
e30f49a791
|
Simplified error templates
|
2018-11-18 20:04:12 +01:00 |
|
Alejandro Celaya
|
d4d65bdf37
|
Added missing X-Api-Key header to cross domain middleware
|
2018-11-18 17:03:50 +01:00 |
|
Alejandro Celaya
|
b8faa6714a
|
Increased MSI to 65% (for sure this time)
|
2018-11-17 19:32:31 +01:00 |
|
Alejandro Celaya
|
f48f98f4d7
|
Updated changelog for v1.14.1
|
2018-11-17 19:27:00 +01:00 |
|
Alejandro Celaya
|
79b2a0839f
|
Increased MSI to 65%
|
2018-11-17 19:23:49 +01:00 |
|
Alejandro Celaya
|
0aae0d888c
|
Moved visits iteration logic from command to service to allow lazy loading of entries in resultset
|
2018-11-17 09:42:15 +01:00 |
|
Alejandro Celaya
|
c1906606c6
|
Updated VisitService to have a method which locates visits and allows entity manager to be cleared
|
2018-11-17 07:47:42 +01:00 |
|
Alejandro Celaya
|
fd6d180eba
|
Created chainIpLocationResolver
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
4070b1e23d
|
Updated user agent column in visits table to have a length of 512
|
2018-11-10 19:01:59 +01:00 |
|
Alejandro Celaya
|
313927827d
|
Updated RedirectAction so that it makes use of the not found short url options
|
2018-11-03 12:10:02 +01:00 |
|
Alejandro Celaya
|
3eddacdff8
|
Created options to enable redirection to external page when short code is not found
|
2018-11-03 11:37:43 +01:00 |
|
Alejandro Celaya
|
f64920e510
|
Replaced some array_map by Functional\map
|
2018-11-02 12:05:01 +01:00 |
|
Alejandro Celaya
|
521f6f2b18
|
Added functional-php library
|
2018-11-02 10:54:42 +01:00 |
|
Alejandro Celaya
|
951d08f914
|
Improved public API in Visit entity, reducing anemic model
|
2018-10-28 16:20:54 +01:00 |
|
Alejandro Celaya
|
8e1e8ba7de
|
Improved public API in ShortUrl entity, reducing anemic model
|
2018-10-28 16:00:54 +01:00 |
|
Alejandro Celaya
|
e046eddda9
|
Improved public API in VisitLocation entity, reducing anemic model
|
2018-10-28 15:13:45 +01:00 |
|
Alejandro Celaya
|
084b1169d7
|
Improved public API in Tag entity, avoiding anemic model
|
2018-10-28 14:38:43 +01:00 |
|
Alejandro Celaya
|
025135b8c6
|
Added all missing use statements from global functions and constants
|
2018-10-28 08:34:02 +01:00 |
|
Alejandro Celaya
|
77d810b735
|
Replaced all FQ global function and constants by explicit imports
|
2018-10-28 08:24:06 +01:00 |
|
Alejandro Celaya
|
e1222de05b
|
Explicitly imported global functions in UrlShortener
|
2018-10-28 08:07:33 +01:00 |
|
Alejandro Celaya
|
787b791651
|
Replaced hardcoded exceptions concatenations by PSR approach
|
2018-10-20 12:50:10 +02:00 |
|
Alejandro Celaya
|
55e021ba20
|
Added snake case column names to VisitLocation entity
|
2018-10-20 09:10:27 +02:00 |
|
Alejandro Celaya
|
44f0011445
|
Moved logic to create a visitor from a request to the visitor itself
|
2018-10-18 20:24:25 +02:00 |
|
Alejandro Celaya
|
545094cddf
|
Used middleware from library to actually find visitor IP addresses
|
2018-10-18 20:19:29 +02:00 |
|
Alejandro Celaya
|
5be7f839f3
|
Ensured visits with empty remote address are not tried to be located
|
2018-10-18 19:22:24 +02:00 |
|
Alejandro Celaya
|
1e4de7fec4
|
Forced explicit string casting when hydrating a VisitLocation from an array
|
2018-10-16 18:25:03 +02:00 |
|
Alejandro Celaya
|
e55dbef2fc
|
Replaced in_array by contains
|
2018-10-05 18:52:42 +02:00 |
|
Alejandro Celaya
|
0183c8a4b7
|
Migrated from standard datetime objects to chronos objects
|
2018-09-29 12:52:32 +02:00 |
|
Alejandro Celaya
|
80fe3a73e2
|
More classes renamed and fixes for usage of the short code concept in place of short URL
|
2018-09-20 20:38:51 +02:00 |
|
Alejandro Celaya
|
9651b3d692
|
Created command to delete short URLs
|
2018-09-15 17:57:12 +02:00 |
|
Alejandro Celaya
|
5714a8f884
|
Created action to delete short URLs
|
2018-09-15 12:56:17 +02:00 |
|
Alejandro Celaya
|
159529937d
|
Created specific service to delete short URLs
|
2018-09-15 11:54:58 +02:00 |
|
Alejandro Celaya
|
394d9ff4d2
|
Defined config and implementation to delete short URLs
|
2018-09-15 11:01:28 +02:00 |
|
Alejandro Celaya
|
07165f344f
|
Normalized entities adding missing type hints and removing superfluous comments
|
2018-09-15 10:03:42 +02:00 |
|
Alejandro Celaya
|
3d0bca2781
|
Finally dropped the hashing of the address
|
2018-09-14 19:04:40 +02:00 |
|
Alejandro Celaya
|
ffb54c4f7a
|
Fixed typehint
|
2018-09-13 23:52:22 +02:00 |
|
Alejandro Celaya
|
a01031303f
|
Created migration which parses existing IP addresses, generating hashes and droping already used IPs
|
2018-09-13 23:50:09 +02:00 |
|
Alejandro Celaya
|
7808f6d182
|
Added remoteAddrHash field to Visit entity
|
2018-09-13 22:46:28 +02:00 |
|
Alejandro Celaya
|
a0c3b9412f
|
Updated system to obfuscate IP addresses before persisting them
|
2018-09-13 22:36:28 +02:00 |
|
Alejandro Celaya
|
a33151248d
|
Removed duplicated code by using a utils trait
|
2018-09-12 20:40:32 +02:00 |
|
Alejandro Celaya
|
038ba3b006
|
Fixed wrong typehint
|
2018-09-12 20:34:36 +02:00 |
|
Alejandro Celaya
|
f3c92f4110
|
Updated short URL creation responses to include more information
|
2018-09-12 20:32:58 +02:00 |
|
Alejandro Celaya
|
c2dd5b8c47
|
Ensured same long URL can be used multiple times for different short URLs
|
2018-09-11 19:44:33 +02:00 |
|
Alejandro Celaya
|
0c03a4b7ff
|
Added v1.11.0 to changelog
|
2018-08-13 16:29:40 +02:00 |
|
Alejandro Celaya
|
5d6d13c95f
|
Updated API docs including new response structure
|
2018-08-13 16:17:43 +02:00 |
|
Alejandro Celaya
|
563021bdc1
|
Updated resolve short url action to return all data for that short url
|
2018-08-11 10:40:44 +02:00 |
|
Alejandro Celaya
|
2d6d35a398
|
Added shortUrl field to serialized ShortUrl objects, both from CLI and REST
|
2018-08-10 23:14:45 +02:00 |
|
Alejandro Celaya
|
080965e166
|
Improved ShortUrlRepositoryTest covering listing case with filter by tag and search term at the same time
|
2018-08-04 16:21:01 +02:00 |
|
Alejandro Celaya
|
c7239aaca2
|
Fixed duplicated join with same table performed while filtering short codes by search term and tags
|
2018-08-04 16:15:09 +02:00 |
|
Alejandro Celaya
|
3883ed15c4
|
Fixed short codes DB length too short
|
2018-08-01 20:40:24 +02:00 |
|
Alejandro Celaya
|
a79c1f580e
|
Fixed visits count multiplied by the number of tags when ordering and filtering by text
|
2018-08-01 20:31:54 +02:00 |
|
Alejandro Celaya
|
f4b569c245
|
Improved code
|
2018-08-01 20:28:05 +02:00 |
|
Alejandro Celaya
|
5be5e0bc60
|
Fixed coding styles
|
2018-07-31 19:53:59 +02:00 |
|
Alejandro Celaya
|
d5b78f2a7e
|
Fixed date fields not properly parsed depending if originally they were datetimes or strings
|
2018-07-28 18:57:24 +02:00 |
|
Alejandro Celaya
|
c7e49f223f
|
Fixed filtered lists not being properly paginated
|
2018-06-18 20:38:25 +02:00 |
|
Alejandro Celaya
|
1437ff48ce
|
Ensured all core actions log errors
|
2018-05-07 10:58:49 +02:00 |
|
Alejandro Celaya
|
e5e1aa2ff4
|
Defined abstract action which handles short codes generations
|
2018-05-01 19:35:12 +02:00 |
|
Alejandro Celaya
|
fe9ab20cbb
|
Applied some improvements
|
2018-03-27 23:57:29 +02:00 |
|
Alejandro Celaya
|
6935b2ebe2
|
Updated system so that NotFoundDelegate is used
|
2018-03-26 20:37:04 +02:00 |
|
Alejandro Celaya
|
210b08b61f
|
Created PixelActionTest
|
2018-03-26 20:17:38 +02:00 |
|
Alejandro Celaya
|
42fe4bd5ce
|
Created new action to track visits, which returns an empty pixel
|
2018-03-26 20:13:03 +02:00 |
|
Alejandro Celaya
|
a27b01b895
|
Fixed tests
|
2018-03-26 19:02:41 +02:00 |
|
Alejandro Celaya
|
16dd1838aa
|
Updated to expressive 3
|
2018-03-26 18:49:28 +02:00 |
|
Alejandro Celaya
|
1e79969c3b
|
Made visits not to be tracked if query param has been provided
|
2018-01-14 09:24:33 +01:00 |
|
Alejandro Celaya
|
5fd34e03fc
|
Added new app config param to allow disabling short URL visits tracking
|
2018-01-14 09:13:49 +01:00 |
|
Alejandro Celaya
|
ce9d6642d4
|
Fixed edit short code action not being properly registered
|
2018-01-07 21:13:06 +01:00 |
|
Alejandro Celaya
|
7ba9eb8e2c
|
Fixed coding styles
|
2018-01-07 20:08:07 +01:00 |
|
Alejandro Celaya
|
e8a0c5484c
|
Added test for ShortUrlMeta
|
2018-01-07 20:07:12 +01:00 |
|
Alejandro Celaya
|
0521227127
|
Tested new method to update short URLs metadata
|
2018-01-07 20:00:21 +01:00 |
|
Alejandro Celaya
|
fac9455a1e
|
Created method to updated already created short URLs
|
2018-01-07 19:51:25 +01:00 |
|
Alejandro Celaya
|
ede4525332
|
Refactored exceptions to properly use package exceptions
|
2017-12-30 21:35:26 +01:00 |
|
Alejandro Celaya
|
0760550767
|
Removed unnecessary type hints
|
2017-12-28 09:48:34 +01:00 |
|
Alejandro Celaya
|
2012cc453c
|
Fixed PHPStan errors due to API inconsistency in EntityManager and EntityManagerInterface
|
2017-12-27 17:22:51 +01:00 |
|
Alejandro Celaya
|
db956a1f40
|
Fixed all possible PHPStan errors
|
2017-12-27 16:23:54 +01:00 |
|
Alejandro Celaya
|
781ca39938
|
Fixed merge conflicts
|
2017-10-23 13:28:09 +02:00 |
|