Commit Graph

405 Commits

Author SHA1 Message Date
Jeremy Bridson
ad7383a58d ENHANCEMENT: open/7886 added preview button to the settings page so that when a user changes the theme they can preview the change. 2012-10-05 16:30:47 +13:00
Ingo Schommer
56f7ce1dcf Merge remote-tracking branch 'origin/3.0'
Conflicts:
	control/Cookie.php
	control/Director.php
	control/HTTPResponse.php
	model/Database.php
	model/MySQLDatabase.php
	model/SQLQuery.php
	view/Requirements.php
	view/SSViewer.php
2012-10-03 16:16:19 +02:00
Sam Minnee
1f7fc1f76a FIX Remove instances of lines longer than 120c
The entire framework repo (with the exception of system-generated files) has been amended to respect the 120c line-length limit.  This is in preparation for the enforcement of this rule with PHP_CodeSniffer.
2012-09-30 17:18:13 +13:00
Sam Minnee
28bd939580 FIX: Ignore charset when checking mime types in LeftAndMain ajax responses.
This is partly a fix to #7574, although quite different from the work Ingo did on Content-length.  The text/json mime type occasionally gets a charset suffixed to it by the webserver, which broke everything.

A follow-on fix from this would be to get the PHP code to supply charsets more consistently, so that webservers don't have to make things up.

Additionally, the 2nd interpretation - which treats the response as text/html - should probably only happen if the response is text/html, and throw a more helpful error otherwise.
2012-09-30 16:32:22 +13:00
Ingo Schommer
91e4fde96f ENHANCEMENT "Readonly" behaviour for CMS tabs 2012-09-28 16:37:35 +02:00
Sean Harvey
b186626b73 BUG If a nested page editable but parent not, user can't expand tree
If you're logged in as a specific user in a group who has view/edit
permissions of a page that has a parent page which doesn't have
permissions, you can't expand the tree node to get access to that
nested page.

This fixes LeftAndMain.Tree.js to allow expanding if there are
immediate children tree nodes that are not disabled. Also fixes
styling so that only immediate children nodes are greyed out.

Fixes this ticket: http://open.silverstripe.org/ticket/7913
2012-09-28 12:18:34 +12:00
Sean Harvey
e4ab02e1c3 Merge branch '3.0' 2012-09-27 10:39:31 +12:00
Marcus Nyeholt
da70dc469c BUG Fixed possible reference to null string
Hashlink for tabs in the backend didn't check the existence of
the href value before trying to .replace it.
2012-09-26 16:27:50 +10:00
Damian Mooyman
495ffb033c FIXED: Issue with duplicate help tips appearing on select fields in CMS. See Security / Groups / Edit Group form field for example. 2012-09-25 13:37:17 +12:00
Sean Harvey
9c2be0f025 Merge branch '3.0' 2012-09-17 15:16:52 +12:00
jean
100aa178b0 FIX 7856 If the submit button is disabled, to perform the ajax request 2012-09-11 15:00:36 +12:00
Ingo Schommer
1088d044c5 Merge remote-tracking branch 'origin/3.0'
Conflicts:
	.travis.yml
2012-09-07 17:21:41 +02:00
Saophalkun Ponlu
a0462b90cf BUG Fixes an issue where batch actions dropdown doesn't show up after ajax request back to the cms Pages section 2012-09-03 18:47:25 +12:00
Saophalkun Ponlu
c3d622c910 BUG: Fix an issue caused by moving a page from one location in the tree to another location doesn't update parent id in the edit form immediately (see #7740)
The issue causes the moved page to revert to previous location when Save and Publish before any page refresh or page switching.
This commit also adds 'Modified' badge to the moved page
2012-08-29 20:33:03 +12:00
Sam Minnée
fcc88264cb Merge pull request #747 from silverstripe-rebelalliance/trac/7763
FIX 7763 TreeDropdownField needs to refresh after CMS edit form save
2012-08-28 15:55:35 -07:00
Hamish Friedlander
05fade3249 FIX 7763 TreeDropdownField needs to refresh after CMS edit form save 2012-08-29 10:52:56 +12:00
Ingo Schommer
6162ae5e3f Fixed preview link ordering in CMS
jQuery seems to order by DOM rather than occurrence of
selectors, which means it always takes the last populated
field (in our case the "live" link over the "draft" link).
2012-08-28 18:31:15 +02:00
Sam Minnee
c2afca2cd8 Merge branch '3.0' 2012-08-28 16:08:57 +12:00
Ingo Schommer
dc08e87bd5 BUG Take first non-empty link field for preview
Goes by priority, but allows for fields to be empty.
This is important e.g. for models which are removed just
from live, or just from draft.
Also reacts to a field rename done in CMS module (62783c75).
2012-08-27 18:22:33 +02:00
Ingo Schommer
f63893544e BUG Fix CMS layout after preview navigation (fixes #7463) 2012-08-27 16:50:37 +02:00
Ingo Schommer
5a44ea2e20 Deselect tree nodes when reacting to form load event (fixes #7401)
Multiselected nodes are only possible in batch mode,
which would never trigger a form load event.
2012-08-27 16:49:06 +02:00
Ingo Schommer
1d2288b091 NEW Open external links in preview mode in new window (fixes #7652)
Rather than disabling the links altogether, which is
counter-intuitive to most users.
See https://github.com/silverstripe/sapphire/pull/638.

Also hide a duplicate $SilverStripeNavigator on the previewed
website (in case it has been manually applied to the template).
2012-08-27 14:42:10 +02:00
Sam Minnee
824afffd2e Merge branch '3.0' 2012-08-23 12:39:41 +12:00
Ingo Schommer
ae9c2e78a1 BUG Restore tree children after updateNode() (fixes #7761) 2012-08-22 15:38:54 +02:00
Ingo Schommer
4cc82e906b Merge remote-tracking branch 'origin/3.0' 2012-08-20 10:13:55 +02:00
Andrew Short
2503e481ff Only initialise chosen elements when visible. 2012-08-16 23:26:33 +02:00
Mateusz Uzdowski
70eaa270e4 API Allow to force URL reload, while replacing the history state
Comes with a wrapper for easy reloading of the current panel.
2012-08-16 22:02:19 +02:00
Ingo Schommer
f79d2df104 BUG More robust url comparison in CMS
Avoid ajax reloads when URLs differ in irrelevant ways,
e.g. admin/?locale=de vs. admin?locale=de.
This caused problems with the translatable module
reloading page content where it didn't need to,
because some previous robustness patches to the same problem
didn't apply (they only removed trailing slashes, ignoring
query parameter strings). The visible problem for this was
a broken tree panel, because it was ajax-loaded in parallel
with its container. Depending on ajax response order,
this would break the inner panel (in this case the tree),
since its original container was replaced with a new DOM.
2012-08-15 21:22:15 +02:00
Ingo Schommer
3bce3550d3 Merge remote-tracking branch 'origin/3.0' 2012-08-12 22:21:06 +02:00
Ingo Schommer
35ca67535d Merge pull request #667 from jakr/trac7617-followup
Fix edge case in sessionStorage detection for FireFox.
2012-08-10 01:42:58 -07:00
Ingo Schommer
fb7008627c Merge remote-tracking branch 'origin/3.0' 2012-08-09 10:47:44 +02:00
Niklas Forsdahl
a85530991c BUG: javascript tree node updating fails when Translatable is used
Automatic tree node updating fails when for example creating a new
translation, due to the update URL containing two question marks,
due to the locale get parameter.

Fixed by using the $.path.addSearchParams utility function, which properly
checks for existing query string parameters.
2012-08-03 13:36:37 +03:00
Hamish Friedlander
3efdb5c981 Merge in changes from 3.0.1 final 2012-07-31 16:51:10 +12:00
Hamish Friedlander
72efed1993 Dont need to wrap entwine blocks in onload blocks, theres no benefit 2012-07-27 11:17:56 +12:00
Hamish Friedlander
a9bedccd1f Merge in changes from 3.0.1-rc2 2012-07-27 11:14:32 +12:00
Hamish Friedlander
5591017577 BUG 3156e755 broke GridField Add forms because guessed frag was wrong 2012-07-27 11:13:23 +12:00
Naomi Guyer
55ec92d40e ENHANCEMENT: Maori language javascript 2012-07-26 17:18:44 +12:00
Hamish Friedlander
95d0be636c Merge remote-tracking branch 'origin/3.0' 2012-07-25 11:44:53 +12:00
Hamish Friedlander
dc18c51f32 Add javascript japanese translation - thanks Yuki Awano 2012-07-25 09:38:36 +12:00
jakr
3bc2798e72 Fix edge case in sessionStorage detection for FireFox. If it is disabled using about:config, typeof will be object, but the value will be null. 2012-07-24 12:54:23 +02:00
Hamish Friedlander
22d6c7afa4 BUG Updating node would position wrong, Sort isnt === offset 2012-07-23 22:15:11 +12:00
Ingo Schommer
120de7cba2 NEW Tree node updates after save (fixes #7450, #7389)
- Updates icon, badges, title, and position in hierarchy
- New LeftAndMain_TreeNode API to allow rendering of single tree nodes
without their hierarchy, extracted from LeftAndMain->getSiteTreeFor()
- New LeftAndMain->updatetreenodes() endpoint to request updated state
for one or more nodes. Triggered on demand by form refreshes.
2012-07-23 17:21:49 +12:00
Ingo Schommer
09067cc8dd NEW Open first tab with validation errors 2012-07-18 16:50:09 +02:00
Ingo Schommer
3156e75548 BUG Redisplay CMS forms with validation errors
Guess the fragment based on the returned HTML.
The validation error HTTP response is generated by Form rather than
the controller (LeftAndMain), so we can't set custom PJAX headers easily.
2012-07-18 16:50:04 +02:00
Ingo Schommer
3ae8b0b665 Merge remote-tracking branch 'origin/3.0' 2012-07-18 15:00:06 +02:00
Andrew Short
9a5baafde7 Don't capture form submits to new windows. 2012-07-17 16:34:01 +10:00
Ingo Schommer
bbfa54c816 Allow custom preview URLs through hidden fields
Useful e.g. to force non-SSL previews via absolute links,
even if the CMS is loaded on an SSL host.
2012-07-16 12:05:48 +02:00
unclecheese
d571cdcc85 ENHANCEMENT: Hide the search bar in Chosen dropdown fields when list is reasonably short. 2012-07-16 10:10:01 +02:00
unclecheese
6e2d6c2782 ENHANCEMENT: Hide the search bar in Chosen dropdown fields when list is reasonably short. 2012-07-15 22:54:53 -03:00
Ingo Schommer
bf91594e4f Disable tab state logic on uninit'ed tabs, allow opt-out
Fixes a problem when switching between ajax tabs,
e.g. "Content" and "Settings" in admin/pages/edit/show/<id>.
2012-07-13 17:34:55 +02:00
Ingo Schommer
c493dc730a Avoid lonely question mark for GridField URLs in CMS 2012-07-13 17:33:48 +02:00
Ingo Schommer
155758f546 NEW Save and restore tab state upon CMS navigation (fixes #7647)
Implemented independently of URL state to ensure that
state is retained on every user interaction, rather than
having to add it to each URL specifically.
Same reasons for not saving it as HTML5 history metadata,
as that's only inspected on history events, not
normal CMS navigation.
2012-07-13 16:46:23 +02:00
Ingo Schommer
a5a08530fc BUG Force "full" ajax content reload with invalid fragments
When one or more fragments are requested that are not in
the current DOM, we need to force loading the outermost
fragment instead (currently hardcoded to "Content").
This mainly prevents history back navigation from breaking,
e.g. admin/pages -> admin/pages/list ->
admin/pages/list/?ParentID=99 -> admin/pages/edit/show/5 -> (back)
2012-07-13 10:19:24 +02:00
Ingo Schommer
7a52a7fe41 BUG Default form submits to text/html, fixing validation (#7653)
Was using text/json, which Form->httpSubmission() interprets
(correctly) to returning JSON validation data.
This trips up the interface, which expects HTML with
the validation errors directly in the markup.
2012-07-12 17:10:50 +02:00
Ingo Schommer
fa62c1b0ba Smarter concat of query params in LeftAndMain.js
Broke when CMS URL already had query params,
such as ?locale=en_US with the Translatable module enabled.
With this patch it doesn't double-concat ?locale....
Still doubles query params, but that's acceptable
until we find a more solid URL manipulation lib for JS.
2012-06-29 14:23:01 +02:00
Hamish Friedlander
daa226a9af BUGFIX: Fix trac ticket #7476
We missed making an event delegatable in https://github.com/silverstripe/sapphire/pull/542
the result was 7476 wasnt actually fixed
2012-06-22 10:46:03 +12:00
Sean Harvey
c6039ae8d1 BUGFIX When updating the tree from EditForm, ensure we only change the
text of the tree node for the first .text element, instead of the nested
ones.
2012-06-20 22:00:19 +12:00
Ingo Schommer
dd99fbc69e BUGFIX Apply batch action node deselection (fixes #7476)
The form ID list was only updated on node checking, but not unchecking.
2012-06-18 00:31:27 +02:00
Hamish Friedlander
c12db51c22 BUGFIX: Fix trac/7485 2012-06-18 10:23:04 +12:00
Sean Harvey
c801671a90 BUGFIX #7394: Allow unselect dropdowns in chosen if there's an empty option 2012-06-15 14:32:21 +12:00
Sam Minnée
7ce7ac406e Merge pull request #528 from mango9/master
Ticket #5578
2012-06-14 16:43:20 -07:00
Ingo Schommer
deff232567 MINOR Using onadd in preview JS 2012-06-15 01:19:31 +02:00
Hamish Friedlander
acee026875 BUGFIX: Buttons in the cms that didnt have .ss-ui-button werent becoming buttons because we changed buttons to trigger on onadd, but the ss-ui-button class was being added dynamically 2012-06-15 01:19:31 +02:00
Ingo Schommer
2fa835a027 MINOR Moving edit form focus logic from onadd() to onmatch() to give the form time to become visible (see #7258) 2012-06-15 01:19:20 +02:00
Ingo Schommer
ecb48bb57c BUGFIX Force full window reload on IE7/IE8 every 20 pushState requests (see #7258) 2012-06-15 01:19:20 +02:00
Ingo Schommer
5260738148 MINOR Avoid reinitialising tabs (see #7258) 2012-06-15 01:19:19 +02:00
Ingo Schommer
980686ab75 MINOR Limiting console.log() output to explicit enabling through window.debug to avoid failing IE 2012-06-15 01:19:19 +02:00
Hamish Friedlander
21e7ec61f4 ENHANCEMENT: In dev mode, include some basic leak detection functions in the admin panel 2012-06-15 01:19:19 +02:00
Hamish Friedlander
b86a787521 BUGFIX: Use new jQuery.Entwine event capturing, onadd and onremove features to plug some memory leaks 2012-06-15 01:19:15 +02:00
Paul Meyrick
882b4267cb BUGFIX: Ticket #5578 SiteTree->CanCreateTopLevel() doesn't change dragged tree nodes or ParentID changes 2012-06-14 17:17:27 +12:00
Ingo Schommer
e23a7585a7 MINOR Using new jQuery.changetracker.destroy method in LeftAndMain.EditForm.js 2012-06-13 23:16:13 +02:00
Ingo Schommer
0b6d45356e MINOR Added destroy() method to jQuery.changetracker plugin 2012-06-13 23:16:09 +02:00
Andrew Short
d9c7bb8eb9 ENHANCEMENT: Implemented help text for form fields.
The title attribute is extracted from form fields and displayed inline
below the field.
2012-06-13 13:19:12 +02:00
Andrew Short
513737097b MINOR: Fixed tab border being shown when tabs were hidden. 2012-06-13 13:46:00 +10:00
Ingo Schommer
ce3d48e310 MINOR Supressed dependencies of tree logic on SiteTree elements (not properly isolated to work well with Folder objects) 2012-06-13 00:51:53 +02:00
Ingo Schommer
896d198890 BUGFIX Correct DOM structure on updating tree nodes from edit forms, adding badge classes to force strike-through styling on deleted nodes (see #7410) 2012-06-12 19:16:34 +02:00
Ingo Schommer
2637969bcd API CHANGE Renamed JS event from 'reloadeditform' on 'aftersubmitform', 'beforesave' to 'beforesubmitform'. Listening to bubbled event on container to avoid binding to forms which are removed before the event is triggered. 2012-06-12 17:13:36 +02:00
Andrew Short
34eb1b39dd BUGFIX: Fixed incorrect variables breaking form submission. 2012-06-11 23:31:02 +10:00
Ingo Schommer
d4baf2d19d BUGFIX Stability improvements on CMS layout logic
- Changed application order
- Fixed layout trigger after preview toggle
- Replaced button row dimension approximation with double application of jQuery.layout() - once before sizing the action panel height to set correct width on container, then again for the height
2012-06-06 21:05:36 +02:00
Ingo Schommer
415a680802 BUGFIX CMS Breadcrumbs and tabs as inline blocks which can span multiple lines, rather than being cropped off (fixes #6882) 2012-06-06 21:05:33 +02:00
Ingo Schommer
12f2e1e176 Merge branch 'pjax-multiple' 2012-06-05 14:01:18 +02:00
Ingo Schommer
f794e98d7e BUGFIX Moved localised JS messages in correct module (fixes #7393) 2012-06-04 11:52:31 +02:00
Ingo Schommer
69d3497497 MINOR Fixed node deselection when changing areas (e.g. "pages" to "edit page") 2012-06-04 11:05:05 +02:00
Ingo Schommer
c18c29f464 BUGFIX Updating tree state (after adding/renaming nodes, changing parent). Deselecting nodes when switching to edit view (fixes #7389, #7336, #7309) 2012-06-03 18:48:47 +02:00
Ingo Schommer
460148c12a MINOR Debug messages for tracking down JS layout sequence issues (disabled by default) 2012-06-02 12:31:55 +02:00
Ingo Schommer
5a93ee77f8 MINOR Fixed tab selection state 2012-05-30 16:36:26 +02:00
Ingo Schommer
0eac6ea5c3 MINOR Apply loading indicators to all forms, not just .cms-edit-form (which means it includes the "pages list view"). Move to correct place in LeftAndMain.js (not specific to '.cms-content') 2012-05-30 16:36:25 +02:00
Ingo Schommer
19bfd01a60 ENHANCEMENT Declare a single DOM element with multiple Pjax fragments. Unified ajax response handling in CMS, followup from submitForm() refactoring. Removed replacement of arbitrary CSS selectors through Pjax, relies on a fragment now (to keep logic consistent). 2012-05-30 16:36:23 +02:00
Ingo Schommer
75e51de9ed API CHANGE Moved submitForm() from $('.cms-content') to $('.cms-container'), unifying ajax response handling between panel loading and form submission 2012-05-30 15:07:14 +02:00
Ingo Schommer
5178954311 UNFINISHED Processing multiple PJAX responses on CMS JavaScript, introducing data-pjax-fragment attribute to identify reloadable template parts 2012-05-30 15:07:13 +02:00
Ingo Schommer
5b03f49245 BUGFIX Respecting server-overrides on X-Pjax responses during ajax redirects. Fixes GridFieldDetailForm redirect after delete, e.g. in ModelAdmin. Partially reverts 8b4b896. Closes pull request #488 2012-05-29 11:34:47 +02:00
Sean Harvey
ecf847b61c ENHANCEMENT Re-instate pinging every 5 minutes in the CMS as a measure
to keep sessions alive. Moved Security/ping to admin/security/ping
2012-05-23 17:15:17 +12:00
Mateusz Uzdowski
8d469b66c8 BUGFIX: add missing onunmatches 2012-05-23 16:24:15 +12:00
Sean Harvey
0d4f7a04dc BUGFIX Fixing incorrect arguments to submitForm() in
LeftAndMain.AddForm.js
2012-05-22 15:37:31 +12:00
Sean Harvey
ce7a96b116 BUGFIX Fixed missing comma in LeftAndMain.AddForm 2012-05-22 14:57:30 +12:00
Mateusz Uzdowski
78b7836d04 BUGFIX: add missing onunmatch 2012-05-22 14:49:57 +12:00
Mateusz Uzdowski
ac2567761b BUGFIX: add missing selectors and namespace qualifiers 2012-05-22 11:29:06 +12:00
Ingo Schommer
7c589f07dc MINOR Don't invoke layout() in onmatch() for cms-preview, as it causes a gap above the menu/logo div for some reason. It's also unnecessary processing, since the preview is always hidden by default, and layout() will be triggered through redraw() when required (e.g. preview panel expansion) 2012-05-18 20:07:06 +02:00
Ingo Schommer
d23e8ec14c BUGFIX Fixed cms menu expansion logic when shown alongside preview panel, retain cookie preference 2012-05-18 20:07:06 +02:00
Mateusz Uzdowski
8b4b896578 BUGFIX: add capability of redirecting form actions.
Form actions assume that they are reloading the form afterwards. But
this is not always the case - for example "delete" action will redirect
back to the panel, so we need to be able to set the X-Pjax headers
accordingly.
2012-05-18 17:36:06 +12:00