Commit Graph

4739 Commits

Author SHA1 Message Date
Hannah Wolfe
81deb88263 Improve getDatabaseVersion & versioning tests
refs #6301

- `currentVersion` was leftover from before the first public release of Ghost!
- simplified the code for `getDatabaseVersion`
- improved & made consistent how errors are handled in `getDatabaseVersion`
- migration error handling updated to reflect the changes in `getDatabaseVersion`
- added tests for both `getDatabaseVersion` and `setDatabaseVersion`
2016-03-14 17:11:04 +00:00
Hannah Wolfe
e4a1797085 Remove should-sinon dependency
no issue

- removes should-sinon dependency from package.json
- rewrites all usages of should-sinon to use normal should assertions

Unfortunately, should-sinon has very minimal documentation  and therefore it is hard to discern what is considered a correctly-written assertion:
- in some cases, refactoring to use should-sinon causes false positives
- in other cases, assertions that work written in the normal way fail when written using should-sinon (e.g. getters, combos with rewire)
The additional overhead created by these issues outweigh any benefit from the easier-to-read assertions
2016-03-14 16:52:22 +00:00
Hannah Wolfe
2386a69f9d Always override database config + exit tests on error
refs #6354, #6495 & #6599

- don't allow config.database to be merged, instead, override it always
- make sure that route tests call done even when they error
2016-03-14 15:39:59 +00:00
Hannah Wolfe
9309adc511 Exporter cleanup & tests
refs #6301

- change knex getter def to be configurable, else it is not testable
- remove exportPath and lang from config - neither are used
- add client_trusted_domains to tables which shouldn't be exported as there are no clients in the export
- change export signature to be an object with `doExport` function consistent with import & easier to test
- cleanup export code so it is clearer, easier to read & to test:
  - use mapSeries instead of sequence
  - use Promise.props instead of Promise.join
  - split functionality into smaller functions
- add test coverage
2016-03-12 19:01:25 +00:00
Sebastian Gierlinger
411dd47002 Merge pull request #6579 from jaswilli/auth-api
Refactor authentication API into pipeline format
2016-03-08 15:54:34 +01:00
Jason Williams
fe13503470 Refactor authentication API into pipeline format
Refs #5508
2016-03-07 11:53:54 -06:00
Austin Burdine
5779ebbd2b Merge pull request #6581 from kevinansfield/ember-cli-242
deps: ember-cli@2.4.2
2016-03-07 06:28:12 -07:00
Sebastian Gierlinger
21770c53da Merge pull request #6572 from ErisDS/data005-part1-fixpastfixtures
Data 005 - Part 1 - Fix Past Fixtures (refactor & test fixture migrations)
2016-03-07 11:26:30 +01:00
Kevin Ansfield
db8946c90e deps: ember-cli@2.4.2
no issue
- bugfix release: https://github.com/ember-cli/ember-cli/releases/tag/v2.4.2
2016-03-07 09:17:51 +00:00
Kevin Ansfield
7e0eb5911d deps: ember-cli@2.4.1
no issue
- bugfix release - https://github.com/ember-cli/ember-cli/releases/tag/v2.4.1
2016-03-03 09:17:37 +00:00
Hannah Wolfe
b2659d0cbb Refactor & test fixture migrations
refs #6301

Fixtures:
- Removed all the old (and now broken) 003 fixture upgrades
- Split the 004 fixture upgrade tasks out, each into their own file
- Improved the versioning code that figured out which upgrades we should do
- Added lots of test coverage to make sure all the fixtures are still being run correctly.

Permissions fixtures:
- Changed the code that was populating permissions fixtures to be more automated & based only on what is in the permissions.json file.
- Added lots of test coverage to make sure all the permissions are still being created correctly.

Merging the two things:
- Merged the content of permissions.json and fixtures.json into fixtures.json, but using the new structure from permissions.json.
- Changed to use the new automated model & relation creation for all fixtures, not just permissions.
- The only thing that can't be auto-populated just now is the owner creation, I think that's important enough to do separately.
- There were (so far) never any permission updates, so code for updating fixtures stays the same through the merge.
- This results in two clear code paths: populate (fill out a brand new DB) and update (make any changes since the last version)

Test coverage is now 100% across both updates and populations.
2016-03-03 09:03:37 +00:00
Hannah Wolfe
4a2944d36a Merge pull request #6566 from acburdine/ghost-url-fix
Ensure null query options don't break ghost-url
2016-03-02 18:39:56 +00:00
Jason Williams
1edf49daf7 deps: bluebird@3.3.3
- Finishes refactoring started in #6376.
- Fixes invalid Promise.map() call.
- Cleans up promise (rejection) handling.
2016-03-01 15:17:20 -06:00
JT Turner
3db9913191 deps: bluebird@3.1.2
closes #6361
- Updated bluebird dependency to latest 3.1.2.
- Updated update check to handle promises not resolving to arrays.
- Reviewed all other promise code and it looks good.
- Updated code using settle to use the new reflect function.
2016-03-01 14:47:23 -06:00
Kevin Ansfield
4d35f954b4 deps: ember-data@2.4.0 2016-03-01 12:49:43 +00:00
Kevin Ansfield
73f2a61feb deps: ember@2.4.1 2016-03-01 12:49:43 +00:00
Kevin Ansfield
f451ff5aef deps: ember-cli@2.4.0 2016-03-01 12:49:28 +00:00
Austin Burdine
193e033f99 ensure null query options don't break ghost-url
closes #6565
2016-02-29 00:25:38 -06:00
Peter Szel
956932b07f Fixed bugs regarding the published date input field validation.
refs #5777

- removing error message from the previous validation
- only checking if date is in the past if the input date is valid to begin with
- always updating the view, even if the date hasn't changed to make sure the date format stays consistent
2016-02-28 01:33:24 +00:00
Peter Szel
6387b87fab Fixed skiplink positioning
refs #5986

- removed static position of the skiplink to prevent pushing the page content down
- only applying :focus CSS selector to focusable sr-only content
2016-02-27 15:37:15 +00:00
Aileen Nowak
e347f95f15 Including timezones API in configuration endpoint
refs #6406
- endpoint configuration/timezones refers to timezones.json file in data
- added route for endpoint in api.js to use method read in configuration.js
2016-02-24 16:44:01 +02:00
Kevin Ansfield
f4cdf4dc15 Merge pull request #6561 from acburdine/test-fixes
Ember client test fixes
2016-02-24 09:36:24 +00:00
Kevin Ansfield
5de57f892d Merge pull request #6548 from ErisDS/config-api
Restructure Configuration API endpoint
2016-02-24 09:34:51 +00:00
Austin Burdine
df720934e1 various test 🐛 fixes
refs #6550
- cleanup deprecation messages
- fix get `undefined` error in tests
2016-02-23 23:27:57 -06:00
Austin Burdine
1fabe0805a Merge pull request #6558 from kevinansfield/refactor-feature-service
Refactor the feature service
2016-02-23 22:03:24 -06:00
Sebastian Gierlinger
81f119d098 Merge pull request #5888 from ErisDS/improve-fileserve
Serve immediate 404 for static files (no fallthru)
2016-02-23 17:15:21 +01:00
Kevin Ansfield
ad1fbfa456 Refactor the feature service
no issue
- removes the unneeded manual caching of the settings object
- fixes multiple API requests to fetch settings when using the feature service
2016-02-23 15:22:32 +00:00
Sebastian Gierlinger
6b852c11d8 Merge pull request #6553 from ErisDS/slack-unfurls
Strutured data: Slack Unfurls & published_at fix
2016-02-22 20:17:04 +01:00
Sebastian Gierlinger
37ef512a19 Merge pull request #6543 from ErisDS/fixture-i18n
Remove i18n from migration output
2016-02-22 09:49:55 +01:00
Sebastian Gierlinger
8d6ec8555c Merge pull request #6544 from ErisDS/client-secret
Move client secret logic into the model
2016-02-22 09:49:05 +01:00
Sebastian Gierlinger
24e6a93f22 Merge pull request #6555 from ErisDS/not-context
Rename confusing 'context' variables
2016-02-22 09:47:06 +01:00
Hannah Wolfe
8cef27d698 Fix jsDoc on i18n.t()
no issue

- my IDE has been moaning at me for every usage of i18n.t that didn't have 2 args
- this uses the optional notation and expects an object instead of JSON (JSON requires keys to be quoted)
2016-02-22 01:57:22 +01:00
Hannah Wolfe
dcc8bcc4f1 Strutured data: Slack Unfurls & published_at fix
refs #6534

- fixes a bug where published_at was incorrectly falling back to the created_at date
- updated meta index to get author name
- add written by & filed under labels + data if the values are present (only on posts/pages)
- updated tests
2016-02-22 01:45:00 +01:00
Hannah Wolfe
10fc320cc8 Rename confusing 'context' variables
no issue
- In Ghost, 'context' means the page or section of a blog we're currently within
when rendering a theme, e.g. 'post' or 'tag' or 'home'.
- In handlebars 'context' refers to the blob of JSON that is tied to a template.
- These two uses of the word 'context' have gotten very confusing, so I've removed all usage of 'context' within the Ghost handlebars helpers, EXCEPT where they actually refer to the current context (e.g. the is helper)
2016-02-21 22:07:15 +00:00
Hannah Wolfe
a59cfc70a1 Serve immediate 404 for static files (no fallthru)
closes #5887

- make use of the new 'fallthrough' option which landed in express-static 1.10.0
- change local-file-store and middleware serving `/public/` and `/shared/` files to use the new `fallthrough: false` option
- 404s are now served directly, without slashes or uncapitalise getting triggered
2016-02-21 19:17:27 +00:00
Hannah Wolfe
ed16998461 Restructure Configuration API endpoint
refs #6421, #6525

- The configuration API endpoint was a bit of an animal:
   - It's used currently in two ways, once for general config, another for the about page.
   - These two things are different, and would require different permissions in future.
   - There was also both a browse and a read version, even though only browse was used.
   - The response from the browse was being artificially turned into many objects, when its really just one with multiple keys
- The new version treats each type of config as a different single object with several keys
- The new version therefore only has a 'read' request
- A basic read request with no key will return basic config that any client would need
- A read request with the about key returns the about config
- A read request with a different key could therefore return some other config
2016-02-19 18:49:23 +00:00
Austin Burdine
5429ef4784 Merge pull request #6546 from quangtt/preview-icon
Fix preview icon position in editor
2016-02-19 11:35:05 -06:00
Austin Burdine
b5c9598cad deps: ember-cli-deprecation-workflow@0.1.6
- fixes deprecation error on build
2016-02-19 09:20:17 -06:00
quangtt
c557aaffd0 Fix preview icon position in editor (updated) 2016-02-19 21:55:04 +07:00
Hannah Wolfe
bbf5763756 Remove i18n from migration output
refs #5345

- As discussed in #5345, this is effectively debug output.
- It currently only appears on the console, and console output should be in English
- If we add a UI later, this should be translated, but console/debug output should not
2016-02-19 12:23:19 +00:00
Kevin Ansfield
72cbda3646 Merge pull request #6518 from acburdine/ember-cli-take-2
Update ember-cli to 2.3.0
2016-02-19 11:56:47 +00:00
Hannah Wolfe
003c8d5462 Move client secret logic into the model
refs #6301

- Move secret generation logic to the model defaults, so there's no need to handle this in fixtures
- Tested upgrades from 003 & fresh installs -> all is well
2016-02-18 20:33:37 +00:00
Kevin Ansfield
455d456a5b Fix new post->tags transition
refs #6483, closes #6541
- removes unloading of all tags when entering the tags screen. Tags list will now function similarly to the content list where already-loaded tags are visible immediately.

Fixes #6483 because it prevents selectize's data being changed out from underneath it before it's destroyed.
2016-02-18 18:01:08 +00:00
Kevin Ansfield
b4bae4741a Revert "pass post tags as array to ember-cli-selectize"
This reverts commit efff6f62ae.
2016-02-18 17:57:18 +00:00
Hannah Wolfe
841b552b52 Fixing typo in i18n key 2016-02-18 12:52:53 +00:00
Kevin Ansfield
17a8d8c029 Merge pull request #6520 from acburdine/issue-6515
Fix logging out from editor page
2016-02-18 12:36:59 +00:00
Hannah Wolfe
d7b9eb6176 Fix facebook/twitter/schema description
refs #6534

- this is an initial fix for having no description at all unless a meta description is provided
- we may need to tweak the lengths / provide different lengths for different values in future
2016-02-18 12:11:46 +00:00
Kevin Ansfield
0daabbe02f Merge pull request #6513 from acburdine/issue-6512
Fix underscore usage in post serializer
2016-02-18 09:30:44 +00:00
Hannah Wolfe
cdbec7a8ba Merge pull request #6532 from jaswilli/issue-6491
Provide entire model to validator
2016-02-18 09:12:06 +00:00
Kevin Ansfield
b0f4a0391d Merge pull request #6533 from acburdine/issue-6483
Pass post tags as array to ember-cli-selectize
2016-02-18 09:08:09 +00:00
Kevin Ansfield
24e84ca531 Merge pull request #6531 from acburdine/issue-6530
Inject ajax service in settings/labs
2016-02-18 08:58:12 +00:00
Hannah Wolfe
71062a0026 Merge pull request #6517 from halfdan/fix-6516
Use req.path instead of req.url to check for file extension
2016-02-18 08:37:32 +00:00
Kevin Ansfield
dcf712643f Merge pull request #6524 from acburdine/signin-test
Add sign-in acceptance test
2016-02-18 08:31:03 +00:00
Hannah Wolfe
d1b56c23fe Merge pull request #6507 from cameronviner/6505
Clean up the after the shouldjs upgrade tests closes #6505
2016-02-18 07:44:23 +00:00
Austin Burdine
efff6f62ae pass post tags as array to ember-cli-selectize
closes #6483
- fix new post => settings/tags transition error
2016-02-17 22:24:16 -06:00
Jason Williams
b10da0569a Provide entire model to validator
Closes #6491
2016-02-17 17:30:16 -06:00
Austin Burdine
c1d962ac63 inject ajax service in settings/labs
closes #6530
- turns out one must inject a service in order to use it
2016-02-17 14:50:40 -06:00
Fabian Becker
f14910fa8e Use req.path instead of req.url to check for file extension
fixes #6516
2016-02-17 19:24:49 +01:00
Hannah Wolfe
02199c6b02 Disambiguate between error code & status code
refs #6526

- Change our errors to use `statusCode` for the status code (like res.statusCode)
- Use statusCode for anything that's supposed to be the statusCode, rather than an error idenfier/code
- Update all the tests that check the key
- Route tests don't need fixing as the status codes are still returned correctly
2016-02-17 15:20:49 +00:00
Cameron Viner
8fd272476b Removed uneeded jshint comments in order to cleanup the tests
closes #6505
-Removed all of the /*jshint expr:true*/ comments from the tests
-Removed all of the should.equal(true, true) statements from the tests
-Removed should from the greenkeeper ignores
2016-02-17 12:52:43 +00:00
Austin Burdine
a13b899817 add signin acceptance test
refs #6039
2016-02-16 23:08:24 -06:00
Austin Burdine
980c864f68 fix logging out from editor page
closes #6514
- removes transition.abort from the signout method because it can override the ember-simple-auth's page refresh
2016-02-16 20:07:03 -06:00
Austin Burdine
aa3be2a568 deps: ember-cli-deprecation-workflow@0.1.5 2016-02-16 15:06:32 -06:00
Austin Burdine
efe8fc4da6 deps: ember-cli@2.3.0 2016-02-16 12:32:48 -06:00
Austin Burdine
1ed2a8b6a7 fix underscore usage in post serializer
closes #6512
- because of the keyForAttribute method in the application serializer, the hash property must be snake_case
- change the normalize method to the more concise normalizeHash method available on the rest serializer
2016-02-16 09:37:15 -06:00
Hannah Wolfe
c301510cd1 Refactor gravatarLookup, remove request dependency
no issue

- request is quite a heavy dependency
- we were only using request in 3 places: a test, storing contrib images in the gruntfile & the gravatar lookup
- all 3 are relatively simple to do with the http/https module
- refactored all 3, removed request
2016-02-16 11:12:01 +00:00
Sebastian Gierlinger
3c5c5ad9d0 Merge pull request #6469 from ErisDS/dynamic-channel-routing
Dynamic channel routing
2016-02-15 19:27:41 +01:00
Hannah Wolfe
13c1742eb9 Make frontend routing dynamic & driven by channels
refs #5091

- Move renderChannel to own file
- Update channel config to have get/list methods
- Move main routes to be generated based on the list of channels
- Move RSS routes to be subroutes of channels
- Move redirect301 to be a shared util
- Add full test coverage
- Split frontend route tests into frontend & channels
2016-02-15 15:57:20 +00:00
Kevin Ansfield
14a3f4411c Merge pull request #6486 from acburdine/code-injection-test
Add settings/code-injection acceptance test
2016-02-15 11:07:01 +00:00
Kevin Ansfield
777b0227fd Merge pull request #6488 from acburdine/labs-test
Add settings/labs acceptance test
2016-02-15 11:05:29 +00:00
Kevin Ansfield
1da47aa1c9 Merge pull request #6387 from novaugust/post-deletion
Fix post deletion scroll on content and tag screens
2016-02-15 11:02:42 +00:00
Kevin Ansfield
8ac61d0ed2 Merge pull request #6506 from acburdine/posts-error-fix
Improve 404 error handling in post route
2016-02-15 09:56:34 +00:00
Kevin Ansfield
d10773da1b Merge pull request #6508 from acburdine/patch-2
Remove unused modal outlet
2016-02-15 09:08:38 +00:00
Sebastian Gierlinger
fbd8ff7208 Merge pull request #6502 from ErisDS/mig-test
Migration related test improvements
2016-02-15 09:08:48 +01:00
Austin Burdine
53b92d4322 remove unused modal outlet 2016-02-14 18:55:59 -06:00
Austin Burdine
7e1941d45c improve 404 error handling in post route
closes #6503
- change post route 404 handling to match that of the editor and tag routes
- fix 404 tests
2016-02-14 16:49:57 -06:00
Hannah Wolfe
76934b44c1 Merge pull request #6499 from javorszky/iss_6493
Moves builFilesExist to startup-checks
2016-02-14 19:58:31 +00:00
Gabor Javorszky
7691b03d5a Moves builFilesExist to startup-checks
Fixes #6493

* moved function to startup checks
* flipped file system checks to sync versions
* exits on first sign of trouble
2016-02-14 18:28:37 +00:00
Hannah Wolfe
7c47249ac7 Merge pull request #6501 from cobbspur/backup
Backup database before deletion
2016-02-14 13:57:26 +00:00
Hannah Wolfe
17805767fd Merge pull request #6468 from kevinansfield/ember-sortable-nav-items
Replace jquery-ui.sortable with ember-sortable for nav items
2016-02-14 13:44:07 +00:00
Hannah Wolfe
54979049ee Migration related test improvements
refs #6301

- Don't hardcode the model fields in utils/api -> use the schema + modify the lists
   = We can now easily see what the differences between the schema and the API result are
- Don't hardcode the default DB version in the import/export tools
   = We don't have to update this every time we update the database version
2016-02-14 13:23:45 +00:00
cobbspur
8025325b15 Backup database before deletion
No issue

- a json object is now created when a user deletes content in labs
2016-02-14 09:04:53 +00:00
Sebastian Gierlinger
21c272b03f Merge pull request #6495 from ErisDS/db-config
Move db connection out of config
2016-02-13 13:25:35 +01:00
Hannah Wolfe
1c85650108 Move db connection out of config
refs #5047

- database connections are not configuration
2016-02-12 13:56:23 +00:00
Austin Burdine
970c3cfc7d add settings/labs acceptance test
refs #6039
2016-02-11 09:19:04 -06:00
Austin Burdine
330a74c8bd add settings/code-injection acceptance test
refs #6039
2016-02-11 09:05:48 -06:00
Hannah Wolfe
c3673be863 Don't include app fields
no issue

Including app fields along with tags & authors was a preoptimisation.
We don't use them yet, and having them results in database calls that are unnecessary.
2016-02-11 15:03:33 +00:00
Austin Burdine
c2a2af652c Add settings/general acceptance test
refs #6039
- adds acceptance tests for settings/general flows
- fixes up mirage settings fixtures
2016-02-11 06:06:38 -06:00
Hannah Wolfe
c9e0a70d16 Merge pull request #6481 from jaswilli/issue-5350
Refactor mail service
2016-02-11 08:58:08 +00:00
Jason Williams
c52fd1df9f Refactor mail service
Closes #5350
- No longer necessary to initialize via async init().
- Adds a startup-check for mail configuration.
- Creates a notification in the admin client if
  mail transport is "direct" and sending a message fails.
2016-02-10 16:31:42 -06:00
Sebastian Gierlinger
823894b141 Merge pull request #6467 from ErisDS/drop-column-migration
Adding drop-column migration handling
2016-02-10 21:41:11 +01:00
Kevin Ansfield
6656256d0b Merge pull request #6207 from acburdine/feature-service
Convert feature controller to service
2016-02-10 09:36:42 +00:00
Kevin Ansfield
c879105684 Replace jquery-ui.sortable with ember-sortable for nav items
refs #6458, closes #6457
- replaces jquery-ui.sortable with ember-sortable for drag-n-drop handling
- moves the "new/blank" nav item out of the nav items list
  - allows it to be excluded from the draggable list
  - cleans up handling of the `navigationItems` array as there's no longer a need to ignore/exclude this extra item
- clears validation errors when typing in the respective field
- adds acceptance test for adding/removing nav items
- improves acceptance test for saving nav items to cover more edge cases
2016-02-09 22:08:21 +00:00
Kevin Ansfield
0bec18ffd4 Merge pull request #6466 from ErisDS/count-service
Change URL for download count service
2016-02-09 21:58:19 +00:00
Austin Burdine
324a04487b cleanup feature service error handling 2016-02-09 13:39:15 -06:00
Matt Enlow
6ed69181ef Load more posts after post deletion
Closes #6390
- check if more posts should be loaded whenever one is deleted
- delete dead code from posts controller
- delete duplicate component gh-infinite-scroll-box
- simplify posts-list-item `posts.post` or `editor.edit` link logic by modifying `gh-content-view-container` to yield necessary vars directly and use inline ifs in template
- add `gh-tag` component for rendering tags and updating infinite scroll box on `settings/tags` page
2016-02-09 09:08:31 -07:00
Kevin Ansfield
3b565ed49f Continuation of #6207 (convert feature controller to service)
refs #6207, #6207
- updates tests for new async behaviour
- fixes tests failing on validation errors
- fixes `feature.labs` not updating after successful save
2016-02-09 08:37:44 -06:00
Austin Burdine
0ac222a439 convert feature controller to service
closes #6170
- add gh-feature-flag component to create a checkbox (reduce duplicate code)
2016-02-09 08:37:44 -06:00
Cameron Viner
faba83d5dc deps: should@8.2.1
closes #6448
-upgraded should.js to the latest version (8.2.1)
-Changed the tests so that they comply with the breaking changes introduced in the new version of should.js
-Installs the package should-http so should.be.json() can be used
-Installs the package should-sinon so that should.be.calledOnce() can be used
2016-02-09 13:39:10 +00:00
Hannah Wolfe
4ba0a745df Adding drop-column migration handling
refs #6301, #6165

- Adds detection and processing for column deletions
2016-02-09 12:11:49 +00:00
Hannah Wolfe
18dc0e3bc5 Change URL for download count service
no issue

- we're moving the internal endpoint for fetching counts to count.ghost.org
2016-02-09 10:20:24 +00:00
Kevin Ansfield
f716050fc2 deps: ember-sortable@1.7.0 2016-02-09 10:17:37 +00:00
Hannah Wolfe
7bb153a372 Merge pull request #6439 from kevinansfield/fix-nav-validation
Fix navigation item validation behaviour
2016-02-08 20:15:18 +00:00
Kevin Ansfield
a4f70b55fc Test client using real browsers on Travis
no issue
- drop phantomjs tests both locally and on Travis
- instruct Travis to install latest Chrome and Firefox
- start an X server when running the client tests on Travis
- update testem config to start Chrome and Firefox in both local and CI tests
- fix testing preview sizing in Firefox as it doesn't support `zoom: 50%` style
- improve infinite scroll testing to be more reliable
- fix post acceptance test to handle both mobile and desktop views
2016-02-08 16:10:40 +00:00
Kevin Ansfield
736111b58f validate nav items when clicking the + button, ignoring last item if blank 2016-02-08 14:20:57 +00:00
Sebastian Gierlinger
819116465e Merge pull request #6388 from ErisDS/schema-rejig
Reorganise & Rename server/data/ folder internals
2016-02-08 11:19:40 +01:00
Hannah Wolfe
a02376a98d Merge pull request #6445 from kevinansfield/fix-input-cursor
Return cursor pointer to text inputs
2016-02-08 10:07:29 +00:00
Hannah Wolfe
32fb88b418 Merge pull request #6456 from jaswilli/issue-6449
deps: supertest@1.1.0
2016-02-08 09:54:20 +00:00
Sebastian Gierlinger
6f18fcabfa Merge pull request #6444 from kevinansfield/fix-mixed-content-warnings
Fix mixed content security warnings due to gravatar images
2016-02-08 10:03:39 +01:00
Jason Williams
2528ce5304 deps: supertest@1.1.0
Closes #6449
- supertest now includes a `.then()` method and as a
  result, only one of either .then or .end may be called on
  a request object.
2016-02-07 13:10:27 -06:00
Hannah Wolfe
bda942e20a Merge pull request #6447 from kevinansfield/deps-ember-route-action
deps: ember-route-action-helper@0.3.0
2016-02-06 13:34:06 +00:00
Kevin Ansfield
be96259b65 deps: ember-route-action-helper@0.3.0
no issue
- cleans up passing route closure actions down through components and ensures callbacks are wrapped in the runloop - https://github.com/dockyard/ember-route-action-helper/pull/8
2016-02-06 13:09:47 +00:00
Kevin Ansfield
e399d33c47 Return cursor pointer to text inputs
refs #6412
- moves `cursor: pointer` style introduced in #6412 into more specific classes that only target select boxes rather than all inputs
2016-02-05 17:01:53 +00:00
Kevin Ansfield
cb7cafc0c9 Fix mixed content security warnings due to gravatar images
no issue
- switches gravatar URL generation to use protocol-relative URLs in `gh-profile-image` component
2016-02-05 16:48:15 +00:00
Hannah Wolfe
a435143ec5 Merge pull request #6442 from kevinansfield/ember-2-3-1
deps: ember@2.3.1
2016-02-05 15:45:43 +00:00
Austin Burdine
3b2a97179c fix 404 acceptance tests 2016-02-05 06:16:29 -06:00
Kevin Ansfield
b45c3e2f61 deps: ember@2.3.1
no issue

Bugfix release: https://github.com/emberjs/ember.js/releases/tag/v2.3.1
2016-02-05 11:16:49 +00:00
Hannah Wolfe
8b5ea4691a Merge pull request #6405 from jtwebman/ghost_head_refactor
Refactored ghost head helper
2016-02-05 11:12:26 +00:00
JT Turner
06d91ce046 Refactored ghost head helper
closes #6186
- Refactored ghost head helper to use the new metadata functions.
- Fix issue where tag should output description if missing meta description.
- Add test for tag description.
- Updated tests to look for author urls with a tailing backslash
- Fix author to output meta description first and then bio if missing.
2016-02-04 22:18:51 -08:00
Hannah Wolfe
df6f7c7b56 Merge pull request #6438 from kevinansfield/include-babel-polyfill
Include babel polyfill when compiling client
2016-02-04 20:44:02 +00:00
Hannah Wolfe
a9a5008aa2 Merge pull request #6436 from halfdan/6435-fix-settings-cache
Correctly clear settings cache after import
2016-02-04 20:43:51 +00:00
Hannah Wolfe
39d14e3a8d Merge pull request #6437 from kevinansfield/deps-client
Update client dependencies
2016-02-04 20:40:33 +00:00
Hannah Wolfe
1ad7a91f4d Reorganise & rename server/data/ folder internals
refs #6301

- In the migration folder, commands.js changed to builder.js to resolve conflict with the 'commands' inside data/utils/clients/.
- a new data/schema/ folder has been added to hold all the code related to the database schema
- data/utils/clients have been moved to data/schema/clients
- data/utils/index.js has become data/schema/commands.js
- data/schema.js has been split, the definition of the DB schema stays put, the additional checks have moved to data/schema/checks.js
- data/validation/index.js has become data/schema/versioning.js
- data/fixtures has moved to data/migration/fixtures
- data/default-settings.json has moved to data/schema/default-settings.json
2016-02-04 20:39:15 +00:00
Kevin Ansfield
f52200ce26 Include babel polyfill when compiling client
no issue
- fixes issues when using `phantomjs` or other browsers that are not fully es6 compatible
2016-02-04 12:49:53 +00:00
Kevin Ansfield
497616b0bf deps: liquid-tether@0.1.11 2016-02-04 11:22:08 +00:00
Kevin Ansfield
42e7e95ac1 deps: liquid-fire@0.23.0 2016-02-04 11:20:11 +00:00
Kevin Ansfield
5b03231106 deps: ember-cli@1.13.15 2016-02-04 10:59:49 +00:00
Kevin Ansfield
1e1ea3b7d2 deps: ember-cli-mocha@0.10.0 2016-02-04 10:53:01 +00:00
Kevin Ansfield
ed51e8cddc deps: ember-data@2.3.3 2016-02-04 10:32:05 +00:00
Fabian Becker
3cafc70022 Correctly clear settings cache after import
fixes #6435
2016-02-04 09:23:43 +01:00
Kevin Ansfield
e0239c44aa Merge pull request #6430 from halfdan/6428-add-trailing
Add trailing slashes on relative URL unless [.?#]
2016-02-03 17:36:34 +00:00
Kevin Ansfield
ebac55d99a Merge pull request #6392 from kevinkucharczyk/post-invalid-id-404
Fix posts.post route not redirecting to 404
2016-02-03 17:04:48 +00:00
Kevin Ansfield
fc8d96b665 Merge pull request #6373 from kevinkucharczyk/standardise-camelcase
Standardise client property names to camelCase
2016-02-03 16:41:23 +00:00
Fabian Becker
eab3c57b8d Add trailing slashes on relative URL unless [.?#]
closes #6428
2016-02-03 17:11:44 +01:00
Kevin Ansfield
672396d942 Use phantomJS 2.1.1 in travis
no issue
- download phantomjs 2.1.1 in Travis' `before_install` step and update the `PATH` export to so the downloaded version is used
- remove the now no-longer needed `ember-cli-es5-shim` dependency
- update documentation references to match new phantomjs version
2016-02-03 10:40:04 +00:00
John O'Nolan
004a88508c Merge pull request #6427 from kevinansfield/fix-stretched-team-images
Fix stretched team image on setup/three
2016-02-03 14:18:12 +07:00
Hannah Wolfe
adc8f99893 Merge pull request #6424 from kevinkucharczyk/nav-current-bug
Fix missing nav-current class bug when trailing slashes don't match
2016-02-02 17:38:59 +00:00
Kevin Ansfield
2335bba40a Fix stretched team image on setup/three
closes #6380
- wraps `<img>` element with a `<div>` to workaround buggy browser behaviour (https://github.com/philipwalton/flexbugs/issues/14)
- adds explicit `width: 100%` to `img` element to fix Firefox not scaling down to mobile sizes
2016-02-02 15:08:28 +00:00
Hannah Wolfe
ad6e37bf79 Merge pull request #6426 from kevinansfield/fix-forgot-password-regression
Acceptance tests for password reset flow on signin screen
2016-02-02 13:58:59 +00:00
Kevin Ansfield
35a7dc2971 Acceptance tests for password reset flow on signin screen
refs #6039
- adds `/authentication/passwordreset` endpoint to mirage config
- tests the "Forgot?" link behaviour on the signin form

NB: This will fail until #6425 is merged as this tests the correct behaviour rather than the currently broken behaviour ;-)
2016-02-02 12:22:41 +00:00
Fabian Becker
1a7a763c9f Correctly use POST request to reset password
closes #6423
2016-02-02 12:58:39 +01:00
Kevin P. Kucharczyk
dc957d7d2e Fix missing nav-current class bug when trailing slashes don't match
closes #6422
- trim trailing slashes before comparing URLs in navigation helper
- add test case to make sure nav-current is appended regardless of trailing slash presence
2016-02-02 11:47:13 +01:00
James Seymour-Lock
ffab3127ae UI/CSS Improvements
Remove shadow on last tag item hover, was an inconsistent style addition thats not used elsewhere such as the content list
- Remove box-shadow on last of type settings tag hover state
- http://g.recordit.co/CEglFT7Hlr.gif

Remove * selector and specify user-select on individual classes for performance.
- remove * selector
- update classes that benefit from user-select none

Having different visuals based around if a radio/checkbox uses a label or not is weird and style changes should use a class modifier.
- Merged the two together as I was unable to find an example checkbox/radio in use that did not use the label tag

Improved UI for radio/checkboxes
- Added cursor pointer to radio/checkboxes
- Added hover state to radio/checkboxes

Add cursor to select boxes for usability
- cursor: pointer; added to select boxes

Add hover state to post edit icon
- add dark grey hover state to post edit icon

Add visual hover to nav user menu dropdown
- Move dropdown icon to visually indicate hover
2016-01-28 08:35:43 -05:00
Kevin P. Kucharczyk
f075221598 Fix missing tags list link on mobile
closes #6397
- don't pass isMobile to gh-tag-settings-form
- add gh-tag-settings-form test for mobile settings.tags link
2016-01-26 18:42:13 +01:00
Kevin P. Kucharczyk
08d6e56b28 Fix posts.post route not redirecting to 404
closes #6385
- redirect to 404 when post is not found
- replace replaceRoute calls with replaceWith calls in routes (replaceRoute is only available on controllers)
- add post mirage factory
- add acceptance test for post 404 redirection
2016-01-26 15:25:53 +01:00
Sebastian Gierlinger
feb59fa714 Merge pull request #6382 from kevinansfield/upgrade-simple-auth
deps: ember-simple-auth@1.0.1
2016-01-26 15:06:25 +01:00
Hannah Wolfe
08e5848d4a Fix cache-control header for sitemaps
no issue

- sitemaps were getting max-age=undefined as they were depending on the wrong utils folder
- test + fix included
2016-01-25 17:56:05 +00:00
Kevin Ansfield
7c1f26cad7 deps: ember-simple-auth@1.0.1
closes #6381
- fixes event forwarding in adaptive session store
2016-01-25 15:52:07 +00:00
Hannah Wolfe
e5e375057e Merge pull request #6299 from acburdine/config-refactor
Refactor Config Service
2016-01-25 13:22:20 +00:00
Kevin Ansfield
d74d0d63b1 Merge pull request #6372 from jamesslock/copyright-update
Always show current year in copyright text on "About" page
2016-01-25 13:07:43 +00:00
Hannah Wolfe
08058ec750 Merge pull request #6379 from kevinansfield/fix-jquery-ajax-401
Fix 401 error when uploading images
2016-01-25 12:39:30 +00:00
Hannah Wolfe
4e355ecba9 Merge pull request #6374 from jtwebman/admin_error_no_theme
Fixed ghost admin error when missing theme folder.
2016-01-25 12:29:31 +00:00
Hannah Wolfe
c29187a5fe Merge pull request #6370 from jtwebman/meta_data_to_functions
Started moving meta data fetching to functions.
2016-01-25 12:16:20 +00:00
Hannah Wolfe
15cb71b408 Merge pull request #6335 from damsonn/fix-mailer-specs
Improve test coverage for mailer
2016-01-25 12:05:15 +00:00
Kevin Ansfield
8ddf160240 Merge pull request #6365 from acburdine/remove-on
remove more usage of Ember.on
2016-01-25 11:42:32 +00:00
James Seymour-Lock
4ea3e13bd4 Always show current year in copyright text on "About" page
no issue
- add `copyrightYear` CP to about page controller
- displays the current year in the copyright notice
2016-01-25 11:33:10 +00:00
Kevin Ansfield
c55d9699ef Fix 401 error when uploading images
closes #6377
- restores ajax prefilter initializer that was removed in #6243
- adds regression test for standard `$.ajax` requests sending Authorization header

This can be removed once we no longer have jquery plugins that make internal ajax calls that don't go through ember-ajax.
2016-01-25 11:11:29 +00:00
JT Turner
cdc98dce15 Fixed ghost admin error when missing theme folder.
closes #6368
- Add test to recreate the error in the static theme middleware.
- Updated static theme middleware to not error if missing theme folder.
2016-01-23 14:01:26 -08:00
JT Turner
1f4c01d207 Started moving meta data fetching to functions.
issue #6186
- Moved asset helper logic to a asset url function.
- Created author image function to be used in ghost_head helper.
- Created author url function to be used in the ghost_head helper.
- Created canonical url function to be used in the ghost_head helper.
- Moved meta_description helper logic to a function.
- Moved excerpt helper logic to a function.
- Created an index in data/meta to be used in ghost_head helper to get all data.
- Created keyword function to be used in the ghost_head helper.
- Created modified data function to be used in the ghost_head helper.
- Created next url function to be used in the ghost_head helper.
- Created ogType function to be used in the ghost_head helper.
- Created previous url function to be used in the ghost_head helper.
- Created published data function to be used in the ghost_head helper.
- Created rss url function to be used in the ghost_head helper.
- Created schema function to be used in the ghost_head helper.
- Created structured data function to be used in the ghost_head helper.
- Moved meta_title helper logic to a title function.
- Moved url helper logic to a url function.
- Wrote tests for all the new functions

This is just the first step. I plan on refactoring the ghost head to use these new functions.
2016-01-23 13:58:21 -08:00
Kevin P. Kucharczyk
9eac05e082 Standardise client property names to camelCase
closes #6018
- added keyForAttribute method in application serializer
- override keyForAttribute in settings serializer to not apply camelCase/underscore conversion
- rename under_scored properties to camelCased
2016-01-23 19:12:22 +01:00
John O'Nolan
100ab9ecef Update copyright year
To appease James Seymour-Lock
2016-01-23 17:28:17 +02:00
Damien Dormal
58fe7af7d1 Cleanup and improved test coverage for mailer
closes #5489
- Remove unneeded Promise.promisify in mailer
- Remove noEmailTransportConfigured error as not relevant anymore (Direct is default)
- Clone message argument in mailer.send
- Move test from api_mail_spec to mail_spec
- Add default mail title test
2016-01-23 11:49:01 +08:00
Hannah Wolfe
57ae36ab21 Merge pull request #6341 from kevinansfield/fix-mixed-content-on-team-page
Move user/cover image files used in admin team area into the client folder
2016-01-21 09:46:00 +00:00
Hannah Wolfe
c549914ae8 Merge pull request #6316 from halfdan/5606-subdir
Make regex for subfolder deduplication more restrictive
2016-01-20 20:09:29 +00:00
Kevin Ansfield
929f9e89b2 deps: ember@2.3.0
no issue
- predominantly a bugfix and performance related release
- https://github.com/emberjs/ember.js/releases/tag/v2.3.0
- http://emberjs.com/blog/2016/01/15/ember-2-3-released.html
- some deprecations are introduced around the use of injected `container` objects, these are from `ember-simple-auth` and should be rectified with an up-coming release
2016-01-20 13:16:15 +00:00
Hannah Wolfe
25d90822c3 Merge pull request #6364 from kevinansfield/deps-mirage
deps: ember-cli-mirage@0.1.11
2016-01-20 08:53:57 +00:00
Hannah Wolfe
7234cb7931 Merge pull request #6329 from kevinansfield/ember-data-2-3
deps: ember-data@2.3.2
2016-01-20 08:52:27 +00:00
Austin Burdine
7e2fa64278 remove more usage of Ember.on 2016-01-19 10:00:44 -06:00
Austin Burdine
7d304a046f refactor admin config to include explicit value types
closes #6266
- add "type" to valid keys in configuration api
- refactor ember config service to parse values based on provided type
2016-01-19 09:43:09 -06:00
Hannah Wolfe
1b5b6cf6e3 Merge pull request #6314 from halfdan/6287-import
Only import tables defined in core/server/data/schema.js
2016-01-19 15:22:24 +00:00
Kevin Ansfield
4f80d97d02 deps: ember-cli-mirage@0.1.11
no issue
- contains bugfixes for a couple of issues that we luckily haven't run into yet but likely will as we expand acceptance testing
2016-01-19 14:41:54 +00:00
Kevin Ansfield
f401d6f3e5 deps: ember-data@2.3.2
no issue
- updates ember-data dependency and switches to direct es6 module import instead of destructuring assignment
- fixes issue with `authenticationFailed` action being called before transitions have finished
2016-01-19 14:36:39 +00:00
Austin Burdine
250e7a3b8b cleanup usage of Ember.inject 2016-01-19 07:03:27 -06:00
Austin Burdine
022bf364c2 deps: ember-ajax@0.7.1 2016-01-18 09:37:14 -06:00
Kevin Ansfield
5ab0710da3 Merge pull request #6353 from kevinkucharczyk/loading-image-switching-tags
Clear images in gh-uploader when navigating between items
2016-01-18 10:13:38 +00:00
Kevin Ansfield
61b7ac9917 Merge pull request #6350 from acburdine/ember-2.2.1
Update Ember to 2.2.1
2016-01-17 13:18:49 +00:00
Kevin P. Kucharczyk
41a18c9262 Clear images in gh-uploader when navigating between items
closes #6198
- clear img src in gh-uploader when navigating to item with image
- always reset uploader component when new image is not empty
2016-01-16 21:54:02 +01:00
Kevin Ansfield
9fda1dc5ba Merge pull request #6348 from zinyando/adapter-fix
Make sure super in buildURL passes all arguments
2016-01-16 18:40:41 +00:00
Austin Burdine
beed0dbf6f deps: ember@2.2.1 2016-01-16 10:35:56 -06:00
zinyando
6659ecc6b6 Make sure super in buildURL passes all arguments 2016-01-15 19:13:36 +02:00
Austin Burdine
4862a9051c refactor slug-generator object into a service
refs #6243
2016-01-15 09:43:17 -06:00
Kevin Ansfield
da0a0c559b Move user/cover image files used in admin team area into the client folder
no issue
- fixes potential "mixed content" warnings if non-admin urls are redirected
2016-01-14 16:26:48 +00:00
Sebastian Gierlinger
749bd29e12 Merge pull request #6337 from halfdan/6332-i18n-startup
Revert i18n in startup-check
2016-01-14 10:05:25 +01:00
Kevin Ansfield
5dba4fab5c Merge pull request #6331 from novaugust/draft_preview_notification
Add Preview link to draft saved notification
2016-01-13 14:27:52 +00:00
Fabian Becker
eef37acc49 Revert i18n in startup-check
- Removes preinstall dependencies
- Reintroduce old plain english strings
- Remove translations for startup check

closes #6332
2016-01-13 14:46:51 +01:00
Matt Enlow
c349394563 Add Preview link to draft saved notification
Closes #6330
- also change notifications to open with `target=_blank`
2016-01-13 06:44:51 -07:00
Sebastian Gierlinger
cb72792bb7 Merge pull request #6212 from kevinansfield/isolate-editor
Isolate all markdown editor behaviour into `gh-editor` component
2016-01-13 14:41:33 +01:00
Kevin Ansfield
ead352dd83 Isolate all markdown editor behaviour into gh-editor component
no issue
- move all existing markdown editor behaviour out of the editor controller and isolate it into a single component that can be swapped out
- split the `register/remove` functions of the `shortcuts-route` out into a separate `shortcuts` mixin
2016-01-13 12:01:31 +00:00
Kevin Ansfield
110ee9198c deps: ember-mocha@0.8.6 2016-01-13 11:29:59 +00:00
Kevin Ansfield
7c49824ae2 deps: ember-cli-mocha@0.9.8 2016-01-13 11:28:59 +00:00
Kevin Ansfield
22206f4b4f Merge pull request #6327 from halfdan/6326-lskey
Set localStorage key based on subdir
2016-01-12 21:22:20 +00:00
Hannah Wolfe
c30f1d5ed7 Merge pull request #6088 from kevinansfield/liquid-tether-modals
Modals refactor
2016-01-12 21:11:38 +00:00
Kevin Ansfield
1c6b208047 Refactor modals
refs #5798, closes #5018
- adds new `gh-fullscreen-modal` component - modals are now specified in-context so that they can have deeper interaction with their surrounding components/controller/route, i.e. a modal component can be a thin confirm/deny wrapper over the underlying controller action keeping all context-sensitive logic in one place
- adds spin-buttons to all modals with async behaviour
- adds/improves behaviour of inline-validation in modals
- improves re-authenticate modal to properly handle validation and authentication errors
2016-01-12 20:53:08 +00:00
Kevin Ansfield
d710bdea1a deps: ember-hash-helper-polyfill@0.1.0 2016-01-12 20:49:46 +00:00
Kevin Ansfield
b4b2f06868 deps: ember-route-action-helper@0.2.0 2016-01-12 20:49:46 +00:00
Kevin Ansfield
a6aabfc591 deps: liquid-fire@0.22 2016-01-12 20:49:46 +00:00
Kevin Ansfield
7ea536b6b0 deps: liquid-tether@0.1.9 2016-01-12 20:49:46 +00:00
Kevin Ansfield
adfa250158 Remove use of Ember.on
no issue
- removes the few uses of `Ember.on` for lifecycle hooks or event hooks where order may be important

`Ember.on` use is discouraged so although we haven't used it often I felt like we should ensure we're consistent throughout the codebase. There's a great article with details of why it's discouraged here: http://notmessenger.com/proper-use-of-ember-on/
2016-01-12 20:48:15 +00:00
Hannah Wolfe
4a7a19c86a Merge pull request #6070 from kevinkucharczyk/harvesting-server-side-strings
Harvest server side strings
2016-01-12 20:04:53 +00:00
Fabian Becker
d57f189294 Set localStorage key based on subdir
closes #6326
2016-01-12 17:12:59 +01:00