Commit Graph

201 Commits

Author SHA1 Message Date
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
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
c59305d6d4 FIX Multiple redraw calls on navigation 2013-08-21 09:29:28 +12: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
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
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
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
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
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
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
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
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
Ingo Schommer
746904ca7d FIX Respect previous tab choices in CMS on load
Previously only worked on ajax interactions.
This makes it much easier to default the CMS to
the "list view" rather than "tree view".
2013-03-14 16:22:32 +01:00
Loz Calver
9a1ccd8a67 FIX: Prevent opening preview when clicking the link for current page again 2013-03-01 11:42:34 +00:00
UndefinedOffset
e954c8c1d1 No longer caching the target element to be toggled 2013-02-19 12:10:19 -04:00
UndefinedOffset
b3e40dd0c3 Fixed issue with cms help toggles not functioning correctly 2013-02-19 11:38:40 -04:00
roed
9e7c622abe fixed error property $ of object is not a function
changed $ to jQuery, because without it the system would generate the following error:

Uncaught TypeError: Property '$' of object [object Window] is not a function
2013-02-19 15:48:29 +01:00
roed
396af557df fixed error property $ of object is not a function
changed $ to jQuery, because without it the system would generate the following error:

Uncaught TypeError: Property '$' of object [object Window] is not a function
2013-02-19 09:20:29 +01:00
Hamish Friedlander
7efae6b95f Merge remote-tracking branch 'origin/3.0' into 3.1 2013-02-18 14:31:57 +13:00
Ingo Schommer
604ede30a4 BUGFIX Escape HTML in CMS status messages 2013-02-17 23:27:15 +01:00
Ingo Schommer
013f4cfe88 Merge pull request #1052 from kinglozzer/leftandmain-preview-click-bug
BUG: Right click on LeftAndMain menu caused CMS preview pane to open
2013-01-30 05:50:39 -08:00
Ingo Schommer
79997477b3 Merge remote-tracking branch 'origin/3.0' into 3.1
Conflicts:
	model/DataList.php
2013-01-08 17:16:09 +01:00
Ingo Schommer
d872202ae5 Support for X-Reload header
Backported from 3.1. Required to get subsite's
"copy page to subsite" form submission working.
2013-01-03 20:43:51 +01:00
Ingo Schommer
8ec3641e60 Merge remote-tracking branch 'origin/3.0' into 3.1
Conflicts:
	admin/javascript/LeftAndMain.FieldHelp.js
	lang/en.yml
	model/URLSegmentFilter.php
2012-12-21 15:04:17 +01:00
unclecheese
07fb756327 Fix edge case in which uninitialized buttons are being destroyed.
In certain cases, the button may not yet be initialized or may no longer have button properties at the time of removal from the DOM. Without this check, an uncaught exception is thrown.
2012-12-18 09:41:54 -05:00
Loz Calver
4388433583 BUG: Right click on LeftAndMain menu caused CMS preview window to open
The onclick event for LeftAndMain menu links didn't check if the click
was left or right, meaning that right click events could trigger the
function for loading split view mode in some browser/os combinations.
2012-12-18 10:44:12 +00:00
uniun
77212c0647 CMS Titles does not support UTF-8
Title in CMS is set using header X-Title. But UTF-8 characters can't be used in HTTP headers. So the title should be encoded just before sending X-Title header and decoded before setting HTML document title (fixes #7942).
2012-12-17 17:36:00 +01:00
Ingo Schommer
a823c38c3f Fixed JS syntax error 2012-12-17 11:38:03 +01:00
Mateusz Uzdowski
8455686c36 BUG Fix the re-layouting not being triggered in IE8.
Move onresize handler from entwine to regular event for IE8. The
fromWindow::onresize does not trigger otherwise.

Refer to http://open.silverstripe.org/ticket/8095
2012-12-16 16:14:45 +13:00
Ingo Schommer
963f02e7a3 Using new description style in MemberDateTimeOptionSetField 2012-12-14 01:58:04 +01:00
Mateusz Uzdowski
4d6d823cb1 API Allow ignoring persistent tab state through entwine property.
In this case we don't want to rely on data attributes in the DOM, as
this should be an inbuilt property associated with this class.
2012-12-13 17:43:25 +01:00
Naomi Guyer
5cef05ebea Separate out ActionTabSet functionality into a new file & clean up. 2012-12-13 17:43:25 +01:00
Mateusz Uzdowski
fe08236f21 API Add action tabsets as a interface idiom.
Introduces the concept of action tabsets - usage of TabSet and Tabs
in between the action buttons to allow richer set of capabilities that
can be offered to the user.

Goes along with c8d0cdec99c95dbed3b58ebcc098cc9d22c58206 that implements
a change to the CMS actions.
2012-12-13 17:43:24 +01:00
Simon Welsh
b0121b541c Add codesniffer that ensures indentation is with tabs. 2012-12-12 17:33:31 +13:00
Simon Welsh
fc5dd2994c Add codesniffer that ensures indentation is with tabs. 2012-12-12 00:12:11 +13:00
Naomi Guyer
00f1ba4ab0 Side-by-side preview browser compatibility fixes. 2012-12-10 17:52:02 +01:00
Mateusz Uzdowski
d4f13fe532 API Refactor the CMS layouting to provide access to options.
It is now possible to change the threeColumnLayout width options for the
columns via entwine property LayoutOptions and accessor methods.

Thanks @robert-h-curry, @clarkepaul for contributing!
2012-12-10 17:52:01 +01:00
Mateusz Uzdowski
1edfeefbdd BUG Remove extraneous layout calls.
Remove .layout() calls on redraw. It's unnessecary and means layout
actually gets triggered multiple times, making resizing very slow.
This was a hack to fix the positioning of ajax-replaced elements.

The problem is jLayout does not track replaced elements. We have
to trigger layout algorithm manually on the parents of the replaced DOM
so it can update internal structures and do the re-layout.

Relayouting only needed 3 levels down.
2012-12-10 17:51:35 +01:00
Mateusz Uzdowski
f4b080ee06 NEW Side by side editing functionality - first cut (os#7412)
Introduces a preview window that appears when the screen is wide enough,
removes old preview button, adds a draft-public switch, adds variety of
preview options which are not hooked up yet.

Goes along with cms commit fa3738a9f4c5181eabf18a77ca89792d31592250
2012-12-10 17:51:35 +01:00
Ingo Schommer
fa84c2d705 Merge remote-tracking branch 'origin/3.0' 2012-12-10 17:50:43 +01:00
Ingo Schommer
0be51a9321 BUG Fix ModelAdmin search (fixes #8052)
Broken by jQuery UI ajax behaviour in tabs, which compares
URLs to determine if the tab needs to be loaded via ajax.
This was always a brittle solution, and now broke alongside
our upgrade to jQuery UI 1.9 (specifically, with 2657a275).

The ajax behaviour is now globally disabled in favour of
having '.cms-panel-link' behaviour on the tabs, which
was already in place.
2012-12-04 14:28:36 +01:00
Marcus Nyeholt
34788130ef BUG Rewrite hashlinks failing on empty a tags
Check for presence of href in _a_ tags before trying to .match them to
prevent null pointer errors.

Some external JS libs (eg tag-it) use <ul><a> structures which get matched
and break

(fixes regression introduced by ff39f9ad38)
2012-12-04 15:47:14 +11:00
Kirk Mayo
20a5bc1d36 BUG iOS safari navigation bug (fixes #8039) 2012-12-03 12:27:59 +01:00