Closes#4959
An SVG (without width & height attributes) inside a button won't display as it should. There seems to be no fix other than apply a minimum width & height. That doesn't feel right, so I've opted for this.
- Remove the `<button>` wrapping `<img>` elements
- Add `cursor: pointer;` to those images (now they don't get one, not being inside a `<button>`
- Remove the `#blog-logo/cover` IDs and `for` attributes. They only apply focus on text inputs anyway.
no issue
- It should not be possible to provide a different ID in the object being edited to that provided in the URL
- We now send the id to check object to ensure there is a match
Credits: Matteo Beccaro
no issue
- Use the double-tash escaping output for notification messages
- Mark known and trusted html notifications as html-safe
Credits: Abdel Adim Oisif
Closes#4878
This changes nothing except DRYness of code. Its output is exactly the
same.
- Moves all icon variables into a map
- Add getter function to extract variables from the map
closes#4541
- Add role="presentation" to <li>
- Clean up space if nav-current isn't present
- Changed all internal references from nav to navigation for consistency
- Deleted old nav.hbs
- Updated tests
refs #4535
- as discussed in the meeting on 1st February ;)
- changed the fake-placeholder to only operate on the last item, this way it feels right, I think
closes#4541
creates a handlebars helper with behavior matching the spec in #4541 and
updates `frontend.js` to include the navigation data in the rendered page
context.
- checks for {{current}} against `relativeUrl`
- adds helper `getSiteNavigation()` which returns contents of
`api.settings.read('navigation')`, or an empty list
- navigation helper is responsible for filtering and consistently formatting
navigation data from settings.
- changes `frontend.js`'s `formatResponse` & `formatPageResponse` to return
a promise with page data and updates frontend controllers to use it.
- `formatPageResponse` now includes a third parameter to allow values to be
merged into the page response (rather than using `_.extend` in the
render methods directly.
- {{navigation}} will render an empty `ul` if no navigation items exist
- incorporates {{url}}/urlFor behavior for nav contexts. (see #4862)
- uses {{url absolute="true"}} in default nav template
Closes#4540
- Implements drag & drop to reorder navigation items
- Adds a `sort` property to navigation items
- Adds a tiny library to enable touch events for drag & drop. It hooks onto jQuery UI.
- Sort nav items before being saved
- Adds `settings-view-navigation` to route for body class
No issue.
- Ember@1.10.0
- Update grunt-ember-templates to version that supports HTMLBars.
- Update Gruntfile.js to compile templates with HTMLBars.
- Convert Handlebars code to its HTMLBars equivalent.
needed for #4852
Before this, calling `{{url}}` with a nav context from #4541 would
output `/`. This adds a check in `urlFor` that looks for keys in a
nav context object, namely `slug`, `current`, `label`, & `url`.
This change allows for a url to pass through if used in a nav context.
* adds `schema.isNav()`
* adds tests to `url_spec.js`
* handles absolute urls correctly even if `absolute=true`
Closes#4379
- Moves the bottom notification outlet _outside_ the `<main>` element which allows notifications to show above the nav bar
- Removes (the now unnecessary) code which counter-positioned the bottom notifications when a Settings Menu was opened.
The way these notifications look or are positioned at various viewport sizes **has not changed**.
No Issue
- Rework the preview URL component so its implementation is
simpler.
- Add test for gh-url-preview component.
- ember-mocha@0.3.0.
- Remove unused jshint options.
Related to #4844
The newly added user image in the content list uses a CSS property to
crop `img` tags, but it's not supported in IE or Firefox. This issue
corrects that by chancing them to be background images which can be
cropped cross-browser.
It also adjusts the nav bar user image (previously an `img` tag) which
would squash a non-square image.
Also removes the border around the settings/users/ user images, to be
consistent with the rest of the UI.
Closes#4425
- Adds the author avatar (with defalt fallback)
- Shows author name when hovering the avatar (falls back to email address)
- Slightly adjusts type, colour, and spacing
Closes#4792
- Made priority be 0.8 (as it currently is) for standard posts
- Made featured posts have a priority of 0.9
- Split the current test into two to check both above scenarios
- Code was moved to core/server/middleware/middleware.js, which is the
home for unit-testable middleware.
- Functional code coverage for this code also exists at:
test/functional/routes/admin_test.js
No Issue
- Set 'status: all` when calling generateSlug from the user model
so that all user slugs are checked for duplicates instead of
only active users.
closes#4262
- implementation based on #1545
- added integration test. Modified mocked posts because code requires published_at timestamps to be different.
- fixed 2 broken tests that depended on mocked posts to have "new Date()" as their timestamps
- added checks to only query db if next/previous post requested
No issue
The style for the URL input when uploading images are a bit broken.
This PR reduces the horizontal spacing in the settings menu uploader (to widen the input), corrects the button with black text in the editor uploader and makes sure all image upload inputs fill the container.
Closes#4766
- Adjust ValidationEngine so it no longer assumes the properties
it is validating are proxies via ObjectController.
- Fixup controllers, templates, and routes to use models where
data needs to be validated.
refs #4644
- Changes tests using assert style to use should style for consistency
- Updates moment().subtract() to remove deprecation warning
- Changes test and test-coverage grunt commands to run in a way which is
compatible with both *nix and win envs
- refs #4644 as this is a step towards getting coverage working properly
again
no issue
- We send emails from Blog Title <ghost@blog-url.com>, but it should be from "Blog Title" <ghost@blog-url.com>
- It worked fine without quotes unless you have a comma in your Blog Title in which case different mail systems get confused in different ways
closes#4691
- adds a file handler for markdown file (.md and .markdown)
- handles titles and featured images
- gets status, date, and slug from the filename
- has a test suite
closes#4770
- Check for Gravatar now allows the highest rating for images
- Defaults to silhouette in the event a user deletes their Gravatar
- Allows highest rating for Gravatars (x), since Ghost should have no opinion on image ratings.
Closes#4768
- Notifications that used to read ‘View Post’ now read ‘View Page’ if
the post is actually a page
- The Editor Save Button now also makes a distinction between posts and
pages
Refs #4750
- Make "Feature" a Controller with promise support.
- Use via 'needs' instead of injecting from an initializer because
we need authenticated access to the API.
- Check whether feature is enabled when entering Code Injection route.
ref #4608, #4609, #4690
- fix errors with cleaning up files
- improve handling of base directories, and introduce a simple valid format for zips (must contain importable files or folders, and may contain up to one base directory)
- vastly improve test coverage
Ember.ObjectController (and Ember.ArrayController) will be deprecated in
Ember 1.11 (and removed from core in Ember 2.0). The reasoning is
detailed in the Ember 2.0 RFC.
This PR does the following:
* Updates templates/controllers/views to explicitly reference model
properties (instead of relying on proxying behavior).
* Clearly delineate where certain properties are being set or retrieved
from (for example it was not clear exactly where `scratch` and
`titleScratch` were stored).
* Remove usage of `Ember.ObjectController`.
* Add JSCS rule to prevent future PR's from adding regressions.
closes#4741
- updated regexp to properly filter out footnotes without removing too much text
- happened only when a link was used before a footnote
- old regexp was too 'greedy' and removed regular link together with the footnote
- new regexp uses a more specific <a> tag
No issue.
* Fix indentation (it was surprisingly hard for me to grok what was happening
without indentation).
* Utilize `alternateActive` from `core/client/utils/link-view.js` to
maintain the `active` state. Observing `childViews` is deprecated (and
may not work properly in future versions of Ember).
* Remove now unused `item-view`.