Commit Graph

491 Commits

Author SHA1 Message Date
Ingo Schommer
556090ccfa Generic “cancel” button behaviour with History.back()
Used in “add page” dialog. See https://github.com/silverstripe/silverstripe-cms/pull/793 for context
2013-11-22 12:47:35 +01:00
Loz Calver
c8caeb8154 Add X-Backurl header to CMS ajax requests 2013-11-15 09:20:53 +00:00
Ingo Schommer
adccda35aa Merge pull request #2609 from chillu/pulls/js-i18n-3.1
API JS i18n files with short locale names, generated by build task
2013-11-01 04:15:17 -07:00
Ingo Schommer
2c145cd454 API JS i18n files with short locale names, generated by build task
The files are uploaded to transifex.com now, which means we needed
to consolidate the file names (= locales). Since Transifex doesn't allow
arbitrary JavaScript structures, we're using an intermediary JSON
format which gets transformed into the JS used by the framework.

See b59f3858af for generator logic.

Fixes https://github.com/silverstripe/silverstripe-framework/issues/2499
2013-10-25 12:05:46 +02:00
Damian Mooyman
415f8a04b2 API Change tracker allows explicit dirty messages
BUG Fixed issue with UploadField not detecting changes
2013-10-24 17:53:40 +13:00
Martimiz
364ce08f52 Strip duplicate querystrings from the url before adding document.location.search
When a querystring is passed with the url (for example Translatable locale) it is duplicated each time the content panel is reloaded, by adding document.location.search and so it should be stripped from the url first.
2013-10-14 15:33:40 +02:00
Andrew Short
024d46ceb5 Merge pull request #2525 from chillu/pulls/tree-node-parent-refresh
Load tree parent nodes if non-existant
2013-10-11 07:37:31 -07:00
Andrew Short
3f7b3fddc9 BUG: Fix tab state not being restored due to incorrect selector.
Closes #2321.
2013-10-12 01:09:58 +11:00
Ingo Schommer
6c96c490c6 Load tree parent nodes if non-existant
This edge case can occur when a large tree is cached in HTML already,
without any nodes expanded via ajax. If a new node is added with
a parent that's not existant, it was simply placed on the root node.
This is a display bug, a full CMS refresh fixes it.

Fixes a related bug where tree causes (view) duplicates,
where the same node is rendered twice. This was due to the whole
subtree being refreshed (including the new node) through jstree's
built-in "open"/"select" events, while at the same time
creating a new node through updateNodesFromServer() callbacks.

Also added a global tree loading indication to make it clear
that the tree is still processing.

See https://github.com/silverstripe/silverstripe-cms/issues/872
2013-10-11 11:51:11 +02:00
Andrew Short
a63b9c9d5d FIX: Fix not switching to the correct tab on validation error. 2013-10-09 23:28:09 +11:00
Will Rossiter
2d0a354405 API: Add attributes argument for CMSMenuItem.
Currently help menu item is the only external link in the CMS and the ability for it to work is hardcoded in the template. This request makes the target attribute definable by CMSMenu::add_link().

Adds documentation for how to add a basic external link to the CMS.
2013-10-02 19:06:54 +13:00
Ingo Schommer
c2b312d76f Merge remote-tracking branch 'origin/3.1.0' into 3.1 2013-09-12 17:24:42 +02:00
Hamish Friedlander
45c1d2b0ce FIX webfonts in preview iframe breaking admin fonts
In IE8, when a page in the preview iframe uses a web font (not just
references it in CSS, but actually has glyphs present in the page),
the fonts in the containing admin interface will become corrupted
(display as all squares) until the mouse moves.

This commit uses the technique described at
http://stackoverflow.com/questions/9809351/ie8-css-font-face-fonts-only-working-for-before-content-on-over-and-sometimes#10557782
to cause the admin panel to re-calculated all it's fonts
after the preview iframe has loaded, fixing the glitch
2013-08-27 10:49:24 +12:00
Mateusz Uzdowski
137aa53156 Return jQuery deferred object from LeftAndMain's loadFragment. 2013-08-23 09:39:38 +12:00
Mateusz Uzdowski
1f8feb5efc API Provide a thin alternative to loadPanel/submitForm.
This is needed in some situations when we only want to update a
small single component, sometimes even using a different controller to
the one implied in the URL.

An example here is reloading dynamically the subsite dropdown without
reloading the entire page, updating a filter sidebar or suchlike.
2013-08-22 15:16:13 +12:00
Sean Harvey
abe09c79e5 Merge branch '3.1.0' into 3.1 2013-08-21 10:39:27 +12:00
Mateusz U
afd3e3f0d0 Merge pull request #2345 from hafriedlander/fix/performance
Couple of performance fixes - eliminate un-necessary redraws and preview updating
2013-08-20 14:40:22 -07:00
Hamish Friedlander
0ca4969cda FIX Dont update preview iframe if hidden
Updating the iframe src when the iframe isnt visible in IE8 causes a
view disconcerting font glitch (and it slows down navigation anyway),
so if the iframe isnt visible, delay setting the src until it is
2013-08-21 09:29:28 +12:00
Hamish Friedlander
c59305d6d4 FIX Multiple redraw calls on navigation 2013-08-21 09:29:28 +12:00
Ingo Schommer
699cbfe851 Merge branch '3.1.0' into 3.1
Conflicts:
	thirdparty/jquery-entwine/dist/jquery.concrete-dist.js
	thirdparty/jquery-entwine/spec/SpecRunner.html
	thirdparty/jquery-entwine/spec/spec.entwine.eventcapture.js
	thirdparty/jquery-entwine/spec/spec.entwine.namespaces.js
	thirdparty/jquery-entwine/src/domevents/jquery.entwine.domevents.addrem.js
	thirdparty/jquery-entwine/src/jquery.entwine.eventcapture.js
	thirdparty/jquery-entwine/src/jquery.entwine.js
	thirdparty/jquery-entwine/src/jquery.focusinout.js
2013-08-20 16:58:40 +02:00
Hamish Friedlander
fda4b91d06 FIX Make sure CurrentXHR is set back to null on completion 2013-08-20 15:49:37 +12:00
Ingo Schommer
02cc662aaf More specific entwine rule for delete alert in GridField
The rule didn't apply in Firefox because of how it handles specificity,
so made it a bit more specific (added "button" and ".action")
2013-08-16 16:06:31 +02:00
Ingo Schommer
1046530ff6 "Insert Media" dialog: Prevent loading indicator in IE8+
Fixes https://github.com/silverstripe/silverstripe-cms/issues/782
2013-06-24 17:14:32 +02:00
Ingo Schommer
8c9ef8feb9 "Insert Media" dialog: Reposition separately (fixes #783)
FF21 and IE10 seem to propagate the DOM attribute changes differently
from Chrome: The dimensions can't be set in the same setOptions()
call through jQuery UI here. Fixed this by a separate setOption() call.
2013-06-24 16:13:29 +02:00
Ingo Schommer
8769da5622 CMS UI: Resize iframe alongside dialog
Fixes regression from 9f600ada2c
2013-06-19 14:28:34 +02:00
Ingo Schommer
2160fb8000 Merge remote-tracking branch 'origin/3.0' into 3.1
Conflicts:
	admin/javascript/LeftAndMain.js
	tests/behat/features/bootstrap/SilverStripe/Framework/Test/Behaviour/CmsUiContext.php
	tests/control/ControllerTest.php
2013-06-19 14:03:43 +02:00
Sam Minnée
8bf4d417c6 Merge pull request #2094 from chillu/pulls/dialog-sizing
Min/max constraints for CMS dialog
2013-06-18 14:56:41 -07:00
Ingo Schommer
939773643a Accessibility: Open main tabs by keyboard focus
Regression caused by jQuery UI 1.9 upgrae
2013-06-15 12:23:51 +02:00
Ingo Schommer
ad28a3adc2 Updated browser warning in CMS JS 2013-06-15 11:58:35 +02:00
Ingo Schommer
5b651e4593 Only clear tab entries from window.sessionStorage 2013-06-15 11:16:11 +02:00
Ingo Schommer
9f600ada2c Min/max constraints for CMS dialog 2013-06-13 20:03:16 +02:00
Ingo Schommer
3b40711b98 BUG Resize infinite loops in IE8 (fixes #575)
IE8 gets a bit confused and fires resize events
when element dimensions in the DOM are changed
as a result of a resize event, causing an infinite loop.
Apart from artificially throttling the event, the only solution
I've found is to check for actual window dimension changes.
http://stackoverflow.com/questions/12366315/window-resize-event-continually-fires-in-ie7?lq=1

This implicitly fixes an issue where TreeDropdownField panel isn't
accessible in the "Insert Media" popup, because the resize event happes
to be triggered by the popup overlay, and in effect closes the drop down
panel right after opening it.

Relating to the jQuery UI component, there's a host of issues and discussions around this, but no solution…
http://bugs.jquery.com/ticket/4097
http://bugs.jqueryui.com/ticket/4758
http://bugs.jqueryui.com/ticket/4065
http://bugs.jqueryui.com/ticket/7514
http://bugs.jqueryui.com/ticket/8881
https://groups.google.com/forum/?fromgroups#!topic/jquery-ui/fDSvwAKL6Go
http://www.mail-archive.com/jquery-ui@googlegroups.com/msg04839.html
2013-06-13 17:37:25 +02:00
Ingo Schommer
5ff69b98ab LeftAndMain.js: Fix 'X-Reload' for IE10 (fixes #647) 2013-06-13 15:17:14 +02:00
Robert Curry
a365759a0d Always load preview when in preview mode, not in edit mode 2013-06-13 11:31:57 +12:00
Ingo Schommer
65209a0ed5 AssetAdmin reset button and chosen.js (fixes #1640)
See https://github.com/harvesthq/chosen/issues/215
2013-06-13 00:45:59 +02:00
Mateusz Uzdowski
37d6871c15 Add explicit extension trigger to preview iframe updates. 2013-05-26 12:51:25 +12:00
Ingo Schommer
67d1327b90 Avoid collision of status flags in tree items when updating tree nodes
Fixes silverstripe/silverstripe-cms#445
See https://github.com/silverstripe/silverstripe-framework/pull/1996
Thanks to Jean-Fabien for getting this started
2013-05-25 11:27:50 +02:00
Sam Minnée
eedcacb256 Merge pull request #2000 from wilr/1640
FIX: IE8 does not bubble reset form events (Fixes #1640)
2013-05-24 19:51:20 -07:00
Will Rossiter
d540c443bc FIX: IE8 does not bubble reset form events. Use click handler for reset button. (Fixes #1640) 2013-05-25 14:12:44 +12:00
Loz Calver
c8725d1c93 Attempting to select uninitialised tab on validation error (fixes #1783) 2013-05-23 16:01:27 +01:00
Mateusz Uzdowski
b480886cab BUG All tabs are in open state when changing the name of a folder.
Submitting the form via AJAX changes the DOM controlled by the tabs
widget, it needs to be notified about the change.
2013-05-16 11:15:03 +12:00
Loz Calver
c53b61c347 Fix broken CMSSettings saving
Regression from da7e515d13
2013-04-11 17:25:15 +01:00
Loz Calver
975c6992df FIX: Edge case attempting to destroy uninitialized tabs
Another edge case very similar to
https://github.com/silverstripe/sapphire/commit/07fb7563273fa82bd93eb255
70571c0a298198e5
2013-04-09 11:21:54 +01:00
Ingo Schommer
3f2b6a518f FIX Don't silently unset ParentID in "add page" dialog
Happened when changing the page type, because the "selectedNode"
property isn't set in all cases
2013-03-25 23:40:35 +01:00
Ingo Schommer
74014650ed Merge pull request #1205 from UndefinedOffset/3.0
BUG Fixed issue with cms help toggles not functioning correctly
2013-03-20 05:47:05 -07:00
Ingo Schommer
2debbd37dc Updated history.js dependency 2013-03-20 00:46:32 +01:00
Ingo Schommer
b2552f885b Merge pull request #1288 from chillu/pulls/tab-state-overrides
Tab state overrides
2013-03-18 04:12:05 -07:00
Ingo Schommer
8ece47ad55 Merge pull request #1290 from patbolo/ticket/8322
FIX #8322 Use POST instead of GET when using LeftAndMain::savetreenode s...
2013-03-14 16:38:26 -07:00
jean
412f58b559 FIX #8322 Use POST instead of GET when using LeftAndMain::savetreenode so large site trees can be reorganised as well 2013-03-15 10:16:33 +13:00
Ingo Schommer
da7e515d13 Tab state overrides by class or HTML5 history state
Necessary to switch from tree view to list view programmatically,
which reloads the whole tabset and needs to enable the "list" tab.
Used for the new "Show list as children" functionality in the cms.
2013-03-14 17:28:53 +01:00