Commit Graph

11167 Commits

Author SHA1 Message Date
Daniel Lockyer
d32101fd92 Fixed typo in Gruntfile
no issue
2020-05-28 18:19:13 +01:00
Vikas Potluri
c7127d5a93
Removed final non-destructured imports of core/server/lib/common (#11858)
* removed final non-destructured imports of core/server/lib/common
* fixed lint
2020-05-28 17:54:18 +01:00
Daniel Lockyer
c2f5ed07d9
Updated release GitHub Action to reflect updates
no issue

- checkout v2 now fetches all tags and branches so the extra line is not needed
2020-05-28 17:24:13 +01:00
Rish
65b9072fe2 Replaced existing members script with new (behind dev exp)
refs https://github.com/TryGhost/members.js/issues/36

- Replaces existing members.js with new script which covers existing functionality as well as adds new ones
- This is behind developer experiments flag atm
2020-05-28 20:47:00 +05:30
Rish
3471a21bc3 Removed email update directly using member session auth
refs https://github.com/TryGhost/members.js/issues/30

- Member cannot update their email directly but need to do it via magic link sent to new email address
- Previous profile update change had allowed email to be updated directly as well for authenticated member
2020-05-28 19:31:00 +05:30
Daniel Lockyer
6871b96d7d
Updated Ghost-CLI test to use the latest release
no issue
2020-05-28 12:59:08 +01:00
Vikas Potluri
1bd8c18a16
Moved core/server/lib/url-utils to core/shared/url-utils (#11856)
* moved url-utils from server to shared
* updated imports of url-utils
2020-05-28 11:57:02 +01:00
Kevin Ansfield
35f8042d7b
Added ?search= param to Admin API members endpoint (#11854)
no issue

- adds `search` bookshelf plugin that calls out to an optional `searchQuery()` method on individual models to apply model-specific SQL conditions to queries
- updated the base model's `findPage()` method to use the search plugin within `findPage` calls
- added a `searchQuery` method to the `member` model that performs a basic `LIKE %query%` for both `name` and `email` columns
- allowed the `?search=` parameter to pass through in the `options` object for member browse requests
2020-05-28 10:14:02 +01:00
Vikas Potluri
e7dc5f0bb3
removed invalid require in v2 input validator (#11851) 2020-05-27 18:49:13 +01:00
Vikas Potluri
15d9a77092
Moved config from server to shared (#11850)
* moved `server/config` to `shared/config`
* updated config import paths in server to use shared
* updated config import paths in frontend to use shared
* updated config import paths in test to use shared
* updated config import paths in root to use shared
* trigger regression tests
* of course the rebase broke tests
2020-05-27 18:47:53 +01:00
Renovate Bot
c3e1e559e6
Update dependency @tryghost/vhost-middleware to v1.0.5 2020-05-27 02:23:53 +00:00
Renovate Bot
979a62deea
Update dependency @tryghost/session-service to v0.1.4 2020-05-27 00:23:02 +00:00
Renovate Bot
d758f47771
Update dependency @tryghost/mw-session-from-token to v0.1.4 2020-05-26 22:29:49 +00:00
Renovate Bot
c0149cf38e
Update dependency @tryghost/image-transform to v0.2.4 2020-05-26 20:20:58 +00:00
Vikas Potluri
c17a6e457c
Removed import of common sub-modules (#11849)
* replaced import of `common/logging` with destructuring the "module" in migrations
* removed reference to `index` in admin regression test
2020-05-26 21:12:13 +01:00
Renovate Bot
e81ee45bb6
Update dependency @tryghost/adapter-manager to v0.1.6 2020-05-26 18:20:50 +00:00
Vikas Potluri
aeee302c9d
refactored 'lib/image' imports to use destructuring (#11847)
* refactored 'lib/image' imports to use destructuring
* trigger all-tests
2020-05-26 19:11:23 +01:00
Hannah Wolfe
c86933f44f
Remove common errors (#11848)
* refactored core/frontend/services/proxy to import common dependency like a normal person
* removed all imports of `common/errors`
* 🔥 removed common/errors module

Co-authored-by: Vikas Potluri <vikaspotluri123.github@gmail.com>
2020-05-26 19:10:29 +01:00
Renovate Bot
bddfc04289
Update dependency @tryghost/zip to v1.1.1 2020-05-26 16:56:41 +00:00
Renovate Bot
4bb413a7c7 Update dependency @tryghost/errors to v0.2.0 2020-05-26 17:51:31 +01:00
Daniel Lockyer
3bdce9686d v3.17.1 2020-05-26 15:55:46 +01:00
Daniel Lockyer
401e140548 Updated Ghost-Admin to v3.17.1 2020-05-26 15:55:46 +01:00
Daniel Lockyer
8bf173dc67 v3.17.0 2020-05-26 14:03:34 +01:00
Daniel Lockyer
0457960a0d Updated Ghost-Admin to v3.17.0 2020-05-26 14:03:34 +01:00
Renovate Bot
f205461bbf
Update dependency @tryghost/members-api to v0.18.7 2020-05-26 12:01:35 +00:00
Daniel Lockyer
26dd46a1ed Updated Ignition and @tryghost/errors dependencies
no issue

- These dependencies needed to be bumped together
2020-05-26 12:58:52 +01:00
Renovate Bot
0f414725e4 Update dependency eslint to v7 2020-05-26 12:37:15 +01:00
Daniel Lockyer
08b0c03c21 Pinned dependencies
no issue

- pinned `@tryghost/members-api`
2020-05-26 12:30:31 +01:00
Kevin Ansfield
071ab9774b
Added Admin API endpoint for basic member stats (#11840)
no issue

- moves members stats generation for the admin graph from the client to the server
- outputs a basic totals count across a requested date range of 30, 90, 365 days, or all time. See below for the response shape
- leaves heavy lifting of the counts to the SQL engines - tested on a dataset of 100k members and query performance is <100ms

```
GET /ghost/api/canary/members/stats/?days=30

{
    total: 100000,
    total_in_range: 20000,
    total_on_date: {
        '2020-04-25': 19000,
        '2020-04-26': 19500,
        // continues until today's date
    },
    new_today: 200
}
```
2020-05-26 10:38:42 +01:00
Renovate Bot
cf3ee559c1
Update dependency @tryghost/members-ssr to v0.7.10 2020-05-25 12:19:30 +00:00
Renovate Bot
c149b3e9ad
Update dependency eslint-plugin-ghost to v1.5.0 2020-05-25 09:21:05 +00:00
Vikas Potluri
a9cb8adacc
Refactored tests to destructure common lib import (#11838) 2020-05-25 09:49:38 +01:00
Vikas Potluri
9254f94407
Refactored migrations to destructure common lib import (#11837) 2020-05-25 09:48:50 +01:00
Renovate Bot
a345db6e3d
Update dependency mocha to v7.2.0 2020-05-25 00:23:07 +00:00
Renovate Bot
caa1244492 Update dependency js-yaml to v3.14.0 2020-05-22 21:59:04 +01:00
Vikas Potluri
4ac88dce10
Refactored common lib import to use destructuring (#11835)
* refactored `core/frontend/apps` to destructure common imports
* refactored `core/frontend/services/{apps, redirects, routing}` to destructure common imports
* refactored `core/frontend/services/settings` to destructure common imports
* refactored remaining `core/frontend/services` to destructure common imports
* refactored `core/server/adapters` to destructure common imports
* refactored `core/server/data/{db, exporter, schema, validation}` to destructure common imports
* refactored `core/server/data/importer` to destructure common imports
* refactored `core/server/models/{base, plugins, relations}` to destructure common imports
* refactored remaining `core/server/models` to destructure common imports
* refactored `core/server/api/canary/utils/serializers/output` to destructure common imports
* refactored remaining `core/server/api/canary/utils` to destructure common imports
* refactored remaining `core/server/api/canary` to destructure common imports
* refactored `core/server/api/shared` to destructure common imports
* refactored `core/server/api/v2/utils` to destructure common imports
* refactored remaining `core/server/api/v2` to destructure common imports
* refactored `core/frontend/meta` to destructure common imports
* fixed some tests referencing `common.errors` instead of `@tryghost/errors`
   - Not all of them need to be updated; only updating the ones that are
causing failures
* fixed errors import being shadowed by local scope
2020-05-22 19:22:20 +01:00
Marco Zehe
3af9611778
🐛 Removed incorrect a11y roles from navigation template (#11833)
closes #11832.

- These hide the actual links from accessibility aids and are not appropriate to use in this context.
2020-05-22 18:19:35 +01:00
Rish
65656a9cf4 Removed global bodyParser middleware for members app
no issue

- Removes global bodyParser middleware for membersApp and adds it to specific endpoints
- Removes global boolParser middleware for membersApp

We added bodayParser middleware to memebrsApp in [this](fe3eab1836) commit to read json requests for members update endpoint, but that had issues with stripe webhook parsing for `/webhooks` endpoint as stripe expects raw data to be passed down.
2020-05-22 14:34:40 +05:30
Kevin Ansfield
21d38b2d37 Added label to known filter params for members
no issue

- updated `filter` plugin with appropriate label relationship and replacement config for NQL
- fleshed out member and label fixture data and tools to facilitate tests
2020-05-21 18:44:52 +01:00
Kevin Ansfield
225544331c Split members admin API tests between acceptance and regression
no issue

- moved typical "happy path" tests for members admin API from regression to acceptance
2020-05-21 18:44:52 +01:00
Renovate Bot
a23def6253 Update dependency sanitize-html to v1.24.0 2020-05-21 07:43:21 +01:00
Renovate Bot
5e5c498493 Update dependency uuid to v8.1.0 2020-05-20 23:09:02 +01:00
Fabien O'Carroll
4c3bd0e2e9 Added stripeDirect config to admin api w/ default
no-issue

The flag currently defaults to `true` as we are still using stripe
direct. We expose it on the admin api config endpoint so that the
Ghost-Admin client can use it to conditionally render
2020-05-20 16:47:58 +02:00
Rish
530760cfd0 Bumped @tryghost/members-api to 0.18.5
refs https://github.com/TryGhost/members.js/issues/26

- Updates magic link token handling to read and update name on member signup
2020-05-20 16:54:48 +05:30
Renovate Bot
2bd44ebee8
Update dependency @tryghost/members-ssr to v0.7.9 2020-05-20 09:15:55 +00:00
Rishabh Garg
fe3eab1836
Added member update endpoint with session auth (#11824)
- Allows member logged in with valid session to update their profile info - name, email, subscribed(newsletter subscription status)
- Adds new util method for formatted member response on the endpoints
- Adds common middlewares for body/bool parser and maintenance
- Adds `subscribed` status to member response
2020-05-20 14:37:58 +05:30
Peter Zimon
c2470bcddb
Fixed truncated URL for password reset email (#11827)
no issue

- shows the full URL instead of a truncated link in password reset email body. This is required for security and usability reasons (copy/paste)
2020-05-20 08:22:37 +01:00
Daniel Lockyer
1f5b031bfa v3.16.1 2020-05-20 07:30:35 +01:00
Daniel Lockyer
d4f06e07cb Updated Ghost-Admin to v3.16.1 2020-05-20 07:30:34 +01:00
Aileen Nowak
86ab62704b
🐛 Fixed structured data issue for publisher logo (#11826)
closes #11304

- Google requires an `ImageObject` to be always returned for `publisher.logo` (https://developers.google.com/search/docs/data-types/article)
- The previous fix 3f5daa60c8 added a second nested `url` error and got therefore reverted with 7ac614030d
- This commit updates the image object generation fn to **always** return an `ImageObject` with minimum of `url` and `@type` properties. If dimensions are available, we'll pass those in there as well
2020-05-20 18:16:20 +12:00