Commit Graph

499 Commits

Author SHA1 Message Date
Uku Taht
9feda6a3d3
Add HCaptcha support (#304)
* Add HCaptcha support

* Actually verify password reset requests

* Fix password request when captcha not configured

* Add configuration for prod release
2020-08-28 15:00:16 +03:00
Uku Taht
4aa4dfdcaf
Hash mode (#299)
* Build tracker with hash mode

* Extract hash fragment in hash mode

* Serve new hash-based tracker
2020-08-25 10:56:36 +03:00
Uku Taht
d30f17c807
Extract utm_source on the server side (#298)
* Extract utm_source on the server side

* Build tracker scripts
2020-08-24 16:32:24 +03:00
Uku Taht
c200b95ce0 Add test for shorthands in external API 2020-08-24 16:09:18 +03:00
Uku Taht
1519359bbf
Makes the tracker and its payload smaller (#296) 2020-08-24 15:16:07 +03:00
Uku Taht
76896f7cee
Show total conversions in addition to uniques (#294) 2020-08-20 14:57:49 +03:00
Uku Taht
a7f3aa430e
Show real counts along percentages (#293) 2020-08-20 11:16:26 +03:00
Uku Taht
01ef17abb0
Make sure all future URLs and sources are decoded (#292) 2020-08-19 15:02:16 +03:00
Uku Taht
6502c1615c Fix error with unset variable 2020-08-19 14:43:32 +03:00
Uku Taht
843f3e166e Do not cut off long page urls 2020-08-18 15:04:00 +03:00
Uku Taht
b749889279 Rename Active visitors -> Current visitors
For consistency
2020-08-18 14:27:54 +03:00
Uku Taht
43b56d6e61
Clarify subscription (#289)
* Add billing interval to subscription page

* Add test for subscription interval
2020-08-18 14:00:02 +03:00
Uku Taht
248d43ee47
Add page after upgrading to paid plan (#288) 2020-08-18 12:48:01 +03:00
Uku Taht
503dc60b30 Rename Total visitors -> Unique visitors 2020-08-17 16:35:55 +03:00
Uku Taht
fcae2620f2 Add status and forum to footer 2020-08-17 16:32:25 +03:00
Uku Taht
dc8e29da56 Update npm deps 2020-08-17 16:16:14 +03:00
Uku Taht
43ec88df60 Fix argument name typo 2020-08-17 16:02:58 +03:00
Uku Taht
db1abba0f5 Run CI 2020-08-17 15:51:35 +03:00
Uku Taht
9100bbf59d Do not error when api token refresh fails 2020-08-17 15:45:23 +03:00
Uku Taht
8ca08d8177
Improvements for Source: Google (#287)
* Extract referrers report

* Use new sourcs report in realtime

* Show appropriate messages for error conditions
2020-08-17 15:13:30 +03:00
Uku Taht
470216f2d8 Use updated auth in Google data 2020-08-13 14:13:49 +03:00
Uku Taht
ff64fccb18
Add site switcher (#281)
* WIP

* Add site switcher

* Run ci

* Highlight active site

* Do not show sites dropdown for logged out users

* Add site switcher to realtime view

* Remove blue border when logged out
2020-08-13 13:45:18 +03:00
Uku Taht
4d11a1d8a1 Fix firewall test 2020-08-11 14:05:55 +03:00
Uku Taht
74b74a271e Fix configuration for firewall 2020-08-11 13:52:03 +03:00
Uku Taht
2e1904e5f0 Add test for firewall 2020-08-11 11:12:11 +03:00
Uku Taht
3a1c9e67cd Add ability to block certain IP addresses 2020-08-11 11:04:26 +03:00
Uku Taht
42ea7fe682 Fix subsciption cancel link 2020-08-11 10:39:57 +03:00
Uku Taht
8aa7e17f98 Fix typo 2020-08-11 10:39:57 +03:00
Marko Saric
8d4b18fb0b
Update README.md 2020-08-10 20:58:32 +02:00
Uku Taht
0a2a2656aa
Page drilldown (#276)
* WIP

* Add filter option for page

* Use JOIN to get correct top numbers

* Filter google search terms by page

* Allow filtering by page from modal

* More robust base url for google search console integration

* Fix tests
2020-08-10 16:16:12 +03:00
Chandra Tungathurthi
c765cbf886
Sefhosting improvements/fixes (#275)
* first commit with test and compile job

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding 'prepare' stage

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updated ci script to include "test" compile phase

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding environment variables for connecting to postgresql

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updated ci config for postgres

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* using non-alpine version of elixir

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* re-using the 'compile' artifacts and added explict env variables for testing

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* removing redundant deps fetching from common code

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* formatting using mix.format -- beware no-code changes!

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* added release config

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding consistent env variable for Database

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* more cleaning up of environment variables

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Adding releases config for enabling releases

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* cleaning up env configs

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Cleaned up config and prepared config for releases

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updated CI script with new config for test

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Added Dockerfile for creating production docker image

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Adding "docker" build job yay!

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* using non-slim version of debian and installing webpack

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Adding overlays for migrations on releases

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* restricting the docker built to master branch only

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* typo fix

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding "Hosting.md" to explain hosting instructions

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* removed the default comments

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Added documentation related to env variables

* updated documentation and fixed typo

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updated documentation

* Bumping up elixir version as `overlays` are only supported in latest version

read release notes: https://github.com/elixir-lang/elixir/releases/tag/v1.10.0

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Adding tarball assembly during release

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updated HOSTING.md

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Added support for db migration

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* minor corrections

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* initializing admin user

Admin user has been added in the "migration" phase. A default user is automatically created in the process. One can provide the related env variables, else a new one will be automatically created for you.

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Initial base domain update - phase#1

These changes are only meant for correct operating it under self-hosting. There are many other cosmetic changes, that require updates to email, site and other places where the original website and author is used.

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Using dedicated config variable `base_domain` instead

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding base_domain to releases config

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* removing the dedicated config "base_domain", relying on endpoint host

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Removed the usage of "Mix" in code!

It is bad practice to use "mix" module inside the code as in actual release this module is unavailable. Replacing this with a config environment variable

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Added support for SMTP via Bamboo Smtp Adapter

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Capturing SMTP errors via Sentry

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Minor updates

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Adding junit formatter -- useful for generating test reports

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding documentation for default user

* Resolve "Gitlab Adoption: Add supported services in "Security & Compliance""

* bumping up the debian version to fix issues

fixing some vulnerabilities identified by the scanning tools

* More updates for self-hosting

Changes in most of the places to suit self-hosting. Although, there are some which have been left-off.

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* quick-dirty-fix!

* bumping up the db connect timeout

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* bumping up the db connect timeout

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* bumping up the db connect timeout

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* bumping up timeout - skipping MRs :-/

* removing restrictions on watching for changes

this stuff isn't working

* Update HOSTING.md

* renamed the module name

* reverting formatting-whitespace changes

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* reverting the name to release

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* adding docker-compose.yml and related instructions

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* using `plausible_url` instead of assuming `https`

this is because, it is much to test in local dev machines and in most cases there's already a layer above which is capable for `https` termination and http -> https upgrade

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* WIP: merging changes from upstream

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* wip: more changes

* Pushing in changes from upstream

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* changes to ci for testing

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* cleaning up and finishing clickhouse integration

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updating readme with hosting details

* removing deleted files from upstream

* minor config adjustments

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* formatting changes

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* changing the connection strategy for clickhouse during release

since clickhouse integration doesn't have an ecto support, we need to prepare the db _before_ the clickhouse migration. One workaround is to connect to a default db on init and then create a db

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* formatting

* cleanup and added separated migration to setup

* Big improvements to selfhosting

- added ability for disabling
  - authentication completely
  - registration
  - landing page

- formatting cleanups

* Big improvements to selfhosting

- added ability for disabling
  - authentication completely
  - registration
  - landing page

- formatting cleanups

* changing smtp auth  to optional

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* removed stale templates and permanently removed landing page

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* removed stale templates and permanently removed landing page

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* removed stale templates and permanently removed landing page

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* WIP

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* fixes form upstream merge

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* added disabling subscription for selfhosted version

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* updated doc

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* formatting

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Remove reference to file that doesn't exist

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* do not show direct traffic if there's no data

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* addressing PR comments

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* formatting

Signed-off-by: Chandra Tungathurthi <tckb@tgrthi.me>

* Fixing broken links

- relative paths replaced with paths to cloud version
2020-08-10 11:14:20 +03:00
Marko Saric
a6c41d50bc
Update README.md 2020-08-06 06:57:13 +02:00
Uku Taht
1dd86204e1 Fosstodon -> Mastodon 2020-08-05 15:45:29 +03:00
Jake Howard
5e7044fe2c
Sort screen sizes by count (#269)
* Sort screen sizes by count

Sorting by a fixed list does make quick referencing slightly easier, but having them ordered looks much nicer, as the other tabs are also ordered.

* Add missing comma
2020-08-05 15:44:04 +03:00
Uku Taht
c812cafcfc Run CI 2020-08-05 15:40:57 +03:00
Uku Taht
f781c5647c
Direct traffic improvements (#268)
* Direct traffic improvements

* Make sure an empty icon shows always

* Enable direct traffic drilldown
2020-08-05 14:45:20 +03:00
Uku Taht
0c947d2dc6
Add flags to prorate and bill immediately when changing plans (#271) 2020-08-05 14:31:25 +03:00
Felix Krull
f05dbe1a21
Fix init_admin and self-hosted sample vars (#262)
* Fix init_admin

* Fix DB url in sample vars
2020-08-04 15:21:43 +03:00
Uku Taht
9137fe1fd5
Remove init_admin from test_helper (#267)
* Remove init_admin from test_helper

* Create admin user in test that needs it
2020-08-04 15:18:31 +03:00
Uku Taht
b45e6aa3bb Add unubscribe link to transactional emails 2020-08-04 12:44:54 +03:00
Uku Taht
ac92fe4f3d Test postmark unsubscribe tag 2020-08-04 11:48:56 +03:00
Uku Taht
4fec432f83 Fix 'Learn more' link in live demo
Closes #264
2020-08-04 11:46:01 +03:00
Uku Taht
e2e901df98
Fix realtime conversion report (#260) 2020-08-03 15:56:14 +03:00
Samuel Philipp
b29afdeb92
added maxmindinc/geoipupdate container to self-hosted docker setup (#249)
* added maxmindinc/geoipupdate container to automatically setup a geoip database

* added a note for geoip database in HOSTING.md

* Fix pluralisation in 'current visitors' (#253)

Closes #239.

* added maxmindinc/geoipupdate container to automatically setup a geoip database

* added a note for geoip database in HOSTING.md

* created docker-compose-geoip.yml for setup with geoip
updated HOSTING.md accordingly

* Revert "added maxmindinc/geoipupdate container to automatically setup a geoip database"

This reverts commit b023ba8b

* added maxmindinc/geoipupdate container to automatically setup a geoip database

* added a note for geoip database in HOSTING.md

* added maxmindinc/geoipupdate container to automatically setup a geoip database

* created docker-compose-geoip.yml for setup with geoip
updated HOSTING.md accordingly

* Revert "added maxmindinc/geoipupdate container to automatically setup a geoip database"

This reverts commit b023ba8b

* added maxmindinc/geoipupdate container to automatically setup a geoip database

* Revert "added maxmindinc/geoipupdate container to automatically setup a geoip database"

This reverts commit b023ba8b

Co-authored-by: Michael (a.k.a. Resynth) <resynth1943@tutanota.com>
2020-08-03 10:37:44 +03:00
Uku Taht
0d23df0fd1
Use singular 'visitor' when appropriate (#259) 2020-07-30 13:44:43 +03:00
Uku Taht
8aa8fe99c4 Run CI 2020-07-30 13:14:24 +03:00
Uku Taht
ea504217c0
Escape single quote in CH query (#258) 2020-07-30 12:02:21 +03:00
dependabot[bot]
76cf9972fa
Bump elliptic from 6.5.0 to 6.5.3 in /assets (#257)
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.0 to 6.5.3.
- [Release notes](https://github.com/indutny/elliptic/releases)
- [Commits](https://github.com/indutny/elliptic/compare/v6.5.0...v6.5.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-07-30 11:22:36 +03:00
Uku Taht
99bc20a8b3
Referrer drilldown (#252)
* Referrer drilldown

* Render external links for referrer drilldown modal

* Rename top pages to entry pages

* Add google keywords to referrer drilldown

* Fix link in source modal

* Remove back link from referrer drilldown

* Fix tests

* Mix format

* Remove unused function

* Get top stats from the events table

* Revert "Get top stats from the events table"

This reverts commit 67384e2d35.

* Fix pages modal title

* Improve pages report in referrer drilldown

* Fix label in referrer drilldown
2020-07-30 11:18:28 +03:00
Michael (a.k.a. Resynth)
1c2d96e81e
Fix pluralisation in 'current visitors' (#253)
Closes #239.
2020-07-29 10:07:18 +03:00