Commit Graph

243 Commits

Author SHA1 Message Date
Sean Harvey
fbc6e3366b Merge branch '3.0' 2012-11-05 15:11:48 +13:00
Sean Harvey
7a7c1a6857 BUG Escape tree title 2012-11-05 13:19:02 +13:00
Simon Welsh
0b279a2cbc Changes ping to POST and clears Requirements for ping
GET requests can, and do, get cached. Using POST forces them not to.
Clears requirements so that the SecurityAdmin JS isn't injected.
2012-11-01 21:15:43 +13:00
Ingo Schommer
bcbf4636fc BUG Remove .ss-tabset class from CMS tabs to prevent rogue ajax load (#7980)
The existence of .ss-tabset triggers JS which applies $.tabs(),
and in turn interprets the first available link as the tab navigation.
jQuery UI subsequently tries to ajax-load this link, which is not
desired. Instead, $.tabs() should *only* be applied to a container
DOM element with .cms-tabset applied.
2012-11-01 00:25:13 +01:00
Saophalkun Ponlu
e3a27ea7da CMS member profile now is no longer in a popup (#7880) 2012-10-08 12:57:55 +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
Ingo Schommer
e2f073f38a Method visibility according to coding conventions 2012-09-20 10:46:59 +02:00
Ingo Schommer
2f643817a4 LeftAndMain::$session_namespace
More fine-grained control over session storage,
particularly when reusing the "current page" state.
2012-08-29 15:10:05 +02:00
martimiz
82500dd4c4 NEW Custom menu icons for the CMS main menu
Add optional custom menu icons to the CMS main menu for every class
extending LeftAndMain (ModelAdmin). Works by setting optional static
$menu_icon = '/path/to/image' and providing custom styling for added
icons. Works for the menu as well as icon in the right-side (GridField) pane header.
2012-08-29 13:14:59 +02:00
Hamish Friedlander
05fade3249 FIX 7763 TreeDropdownField needs to refresh after CMS edit form save 2012-08-29 10:52:56 +12:00
Kirk Mayo
3e351bc421 BUG: open ticket 7812 correcting filter syntax on a DataObject used by function updatetreenodes 2012-08-27 14:41:07 +12:00
Ingo Schommer
2fab657fce i18n for CMS section titles (see #7798) 2012-08-26 23:58:31 +02:00
Hamish Friedlander
b560d258d3 Re-enable Entwine Inspector in CMS & document 2012-08-20 11:26:11 +12:00
Ingo Schommer
77d939f0b2 CMS Localization 2012-08-09 23:55:30 +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
faff2c122d Localized CMS breadcrumbs title 2012-07-18 13:51:12 +02:00
Ingo Schommer
d4b8db27af Marking fake LeftAndMain->redirect() responses as finished
Introduce new LeftAndMain_HTTPResponse class for this purpose,
to mark a response as finished regardless of HTTP status.
This is required for ajax responses which do redirects on app layer
rather than HTTP (to avoid double processing).

Specifically required to decorate LeftAndMain->init()
in the 'translatable' module (TranslatableCMSMainExtension),
which marks the response as finished through its redirect,
avoiding further processing after init().
2012-07-16 23:30:59 +02:00
Ingo Schommer
ba9c3c7b8e BUGFIX Type checking in CMS URL params (fixes #7187)
Nasty issue where nested requests to sub-controllers within LeftAndMain->EditForm() would fail because of
LeftAndMain->currentPageID() being taken from the URL, even though it was a field action name.
Example: POST /admin/pages/edit/EditForm/field/MyGridField/item/1/ItemEditForm/field/MyUploadField/upload
The current ID would be detected as "field" in this case.
Bug was previously fixed for AssetAdmin.
2012-06-22 17:47:45 +02:00
Sam Minnée
7ce7ac406e Merge pull request #528 from mango9/master
Ticket #5578
2012-06-14 16:43:20 -07: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
Ingo Schommer
c81d0e1222 MINOR Only set X-Pjax header in redirections if it doesn't already exist in the response 2012-06-14 20:20:29 +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
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
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
b1d95cffac BUGFIX Passing existing SS_HTTPResponse to PjaxResponseNegotiator in LeftAndMain so state like X-Status HTTP headers are retained (fixes #7427) 2012-06-13 00:27:03 +02:00
Ingo Schommer
ed9c856442 ENHANCEMENT Strikethrough styling for deleted tree nodes, adding status classes to tree node <li> in addition to the existing <span class="badge"> (fixes #7410) 2012-06-12 15:53:38 +02:00
Sam Minnee
267f41bdf4 ENHANCEMENT: Point userhelp link at a new userhelp instance. (#7430) 2012-06-07 13:46:47 +12:00
Ingo Schommer
b3164eb2a9 MINOR Disabled jQuery.entwine inspector in dev mode, as it causes side effects due to document.write() before other scripts are loaded 2012-06-06 11:49:32 +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
45465dca91 Merge pull request #483 from halkyon/cms_ping_keepalive
Re-instate CMS ping to ensure sessions are kept alive
2012-05-23 15:55:22 -07:00
Sean Harvey
77c2365b87 MINOR Replacing deprecated static function calls to Director with
current Controller instance replacements.
2012-05-23 21:50:02 +12: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
Sean Harvey
3ed9c5f9f8 MINOR Removed getitem allowed action, this method no longer exists in LeftAndMain 2012-05-22 17:33:34 +12:00
Sean Harvey
3f932d6bad Merge pull request #464 from mateusz/os7299
BUGFIX: add capability of redirecting form actions.
2012-05-17 22:44:05 -07: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
Sam Minnee
70a5b49dd6 MINOR: Fixed i18n coding for LeftAndMain save and delete. 2012-05-18 16:15:13 +12:00
Ingo Schommer
5ff282e20a MINOR Allow extending LeftAndMain->SiteTreeAsUL() (specifically used to add the language drop down for the 'translatable' module) 2012-05-15 21:28:38 +02:00
Ingo Schommer
8e39e7dfba MINOR Allow extension of LeftAndMain->Link() 2012-05-15 21:27:32 +02:00
Ingo Schommer
d42ea5a9d6 BUGFIX Encoding multibyte characters in custom X-Status HTTP headers used in CMS (headers don't allow multibyte data) 2012-05-14 15:13:49 +02:00
Ingo Schommer
45ae2465e8 Merge pull request #438 from ajshort/sapphire
---

These are some enhancements + tweaks I made as part of getting the advanced workflow module running in SS3:

* Added a readonly view button and action to GridField.
* Made LeftAndMain::getResponseNegotiator() public so CMS extensions can use it to generate responses.
* Fixed top tab background, made text more readable (http://i.imgur.com/yDmmY.png).
* Allow fields in the CMS to not be change tracked using ".no-change-track".
* Made all icons 16x16 (some were different sizes, being cut off), and allow them without .ui-state-default.
* Fixed ToggleCompositeField and tweaked field styling.
2012-05-14 14:25:16 +02:00
Hamish Friedlander
7f05add15e ENHANCEMENT: Make jQuery.Entwine inspector available in admin panels in dev mode 2012-05-14 16:34:18 +12:00
Andrew Short
1e174b3102 API CHANGE: Made LeftAndMain::getResponseNegotiator() public so extensions can use it. 2012-05-12 18:49:56 +10:00
Mateusz Uzdowski
be06ae7e5f MINOR: change the tree reorganisation message. 2012-05-11 16:22:56 +12:00
Ingo Schommer
7e0d0a4dee MINOR Tree metadata naming 2012-05-07 14:45:25 +02:00
Ingo Schommer
4029f96728 ENHANCEMENT Section icons in CMS (#7269) 2012-05-03 13:49:19 +02:00
Ingo Schommer
7b18d9d0da MINOR Switching _t() calls from sprintf() to using injection parameters (#7170) 2012-05-01 22:17:00 +02:00
Sean Harvey
1663e96ddb BUGFIX Fixing stray . in the "Page type: x" tooltip hovering over a page 2012-05-01 15:16:22 +12:00
Sam Minnee
9d36048ada BUGFIX: Fixed a few references to non-existent $request variable. 2012-04-19 10:11:01 +12:00
Ingo Schommer
d8bb1b2375 MINOR Consistent link method names: LeftAndMain->PreviewLink() changed to LinkPreview() 2012-04-18 22:59:18 +02:00
Ingo Schommer
57ee9bf5e8 MINOR Removed unnecessary jquery.livequery include from CMS, its still processing in the background = performance overhead 2012-04-18 17:37:36 +02:00
Ingo Schommer
972e7ccb1a MERGE sitetreeasul 2012-04-18 16:55:15 +02:00
Ingo Schommer
473d3a66b8 MINOR Fixed controller contexts in LeftAndMain->SiteTreeAsUL() - needs different context for edit links and determining "current page" (not applicable for CMSPagesController) 2012-04-17 22:33:30 +02:00
Ingo Schommer
0ef5d0b84f MINOR Moved tree filtering in LeftAndMain from SiteTreeAsUL() into getSiteTreeFor() to allow filtering the initial tree (via GET parameters), rather than just through getsubtree() 2012-04-17 16:07:22 +02:00
Ingo Schommer
9b2b39aaaa MINOR More specific tree links, to ensure correct CMSMain subclass is used 2012-04-17 11:03:09 +02:00
Andrew O'Neil
3b9f99394b MINOR: Use config system for cms title, rather than eval. 2012-04-16 11:04:55 +12:00
Ingo Schommer
d44f6b3e1f MINOR Removed deprecated usage of $priority argument in _t() calls 2012-04-15 17:17:17 +02:00
Will Rossiter
befbd3e6a8 MINOR: remove reference to sapphire in CMSVersion 2012-04-15 15:00:52 +12:00
Simon Welsh
3a6341a251 API-CHANGE sapphire folder can now be renamed. 2012-04-15 10:50:19 +12:00
Ingo Schommer
3572b31a94 MINOR Default app title when SiteConfig object is not present (fixes #7114) 2012-04-13 16:21:30 +02:00
Ingo Schommer
85a898e1d5 MINOR Don't assume existence of cms/ folder in LeftAndMain->CMSVersion() (regression from earlier code) 2012-04-09 23:55:23 +02:00
Wolf Vollprecht
3ae0ac7805 ENHANCEMENT: Rightlick submenu styles and ability to add page with pagetype 2012-04-09 21:08:19 +02:00
Sam Minnee
e01b0aa3d0 ENHANCEMENT PjaxResponseNegotiator for more structured partial ajax refreshes, applied in CMS and GridField. Also fixes issues with history.pushState() and pseudo-redirects on form submissions (e.g. from page/add to page/edit/show/<new-record-id>) 2012-04-05 23:00:22 +02:00
Ingo Schommer
a44b67bae2 API CHANGE Moved RequestHandler->isAjax() to SS_HTTPRequest->isAjax() 2012-04-05 23:00:22 +02:00
Ingo Schommer
40d73127ae MINOR Using late static binding instead of Object::create() calls 2012-04-04 17:10:31 +02:00
Ingo Schommer
6517f4496b Merge pull request #273 from ajoneil/sapphire
---

This allows DataList::create(SiteTree) as equivalent to Object::create(DataList, SiteTree), without
having to have a create() function on DataList.

Required for E_STRICT compliance, as child classes cant override create() if they change the arguments.

DBField::create() is also renamed to DBField::create_field(), as this does not just call the constructor, which all other cases of create() do.

Conflicts:
	tests/model/DateTest.php
	tests/model/DatetimeTest.php
2012-04-04 16:48:16 +02:00
Ingo Schommer
0414e42bbc MINOR Keep X-ControllerURL canonical by not re-constructing with question mark if there's no GET string (caused duplicate HTML5 pushState requests) 2012-04-04 16:47:13 +02:00
Ingo Schommer
f34e58f573 ENHANCEMENT Enabled History.pushState() support in IE via onhashchange fallbacks (#7002) 2012-03-30 16:51:42 +02:00
Sean Harvey
e097f6e1a8 MINOR Fixes to method arguments in core classes for E_STRICT support.
API CHANGE Remove abstract static function and just use static functions
in Authenticator (PHP 5.3+ doesn't support abstract static functions)
2012-03-28 22:41:42 +13:00
Andrew O'Neil
de2832e65f ENHANCEMENT: Allow Object::create() to be called with late static binding.
This allows DataList::create('SiteTree') as equivalent to Object::create('DataList', 'SiteTree'), without
having to have a create() function on DataList. Required for E_STRICT compliance.
2012-03-27 17:57:42 +13:00
Ingo Schommer
620b23a23f MINOR Including GET parameters in X-ControllerURL default headers (which fixes e.g. AssetAdmin search persistence) 2012-03-14 16:07:50 +01:00
Ingo Schommer
bac23bcdb7 BUGFIX Correctly set $BaseCSSClasses on LeftAndMain content container templates, not only on forms. Fixes $('.cms-menu') handling of "current id" updates (fixes #6997) 2012-03-12 14:05:54 +01:00
Ingo Schommer
8f8817b2f9 MINOR Always set X-ControllerURL in CMS responses, in order to fix menu state after Ajax HTTP redirects (e.g. from CMSPageAddController to CMSPageEditController) 2012-03-12 13:41:22 +01:00
Ingo Schommer
44515f51b6 MINOR Don't link tree root node in CMS views, its not editable any longer (replaced by more specialised views with CMSSettingsController and SecurityAdmin->EditForm()) 2012-03-12 10:42:07 +01:00
Ingo Schommer
9e6d70be64 MINOR Moved LeftAndMain->doAdd() and AddForm() to subclasses where they're actually used (no possible through a combination of architectural and UI changes) 2012-03-10 00:04:51 +01:00
Sean Harvey
9f3344b355 API CHANGE Removed built-in behaviour.js client-side form validation.
This is no longer supported. Please use custom client-side validation instead. (see 3.0.0 changelog
for more information)
2012-03-09 12:19:57 +13:00
Ingo Schommer
e4a6dd5850 Merge branch 'integration'
Conflicts:
	forms/gridfield/GridField.php
2012-03-08 20:25:21 +01:00
Ingo Schommer
c117ef58cf API CHANGE Removed LeftAndMain->RootForm(), concept no longer applies in 3.0 UI. Use EmptyForm() or EditForm() 2012-03-08 18:22:30 +01:00
Ingo Schommer
174cf08c75 MINOR Removing special TinyMCE case in LeftAndMain->doAdd(), feature has been removed 2012-03-08 18:22:30 +01:00
Ingo Schommer
27d23633ea MINOR Disabled browser autocomplete for batch action select 2012-03-08 01:49:36 +01:00
Julian Seidenberg
13c7c01b95 MINOR: changing order of save and delete buttons so that they are consistent 2012-03-07 16:43:12 +13:00
Hamish Friedlander
28bb83552a API-CHANGE: moving iterator support from ViewableData to SSViewer. New set of unit tests for iterator support functions. 2012-03-06 09:31:55 +13:00
Hamish Friedlander
927dbbe717 API-CHANGE: Global template variables can now be called directly using SSViewer_DataPresenter instead of needing to inherit off ViewableData 2012-03-06 09:11:46 +13:00
Ingo Schommer
2abb021efb BUGFIX Restored old permission code model, broken due to new controller structure. Introduced LeftAndMain::$required_permission_codes as a way to control permissions independently of subclasses, and "cluster" multiple classes under a single code. 2012-03-05 17:41:49 +01:00
Ingo Schommer
02e728fa08 BUGFIX Fixed visibility of admin/myprofile for non-admins by moving it to a new CMSProfileController class and overloaded canView() 2012-03-02 20:46:22 +01:00
Ingo Schommer
3659c63afe MINOR Updated jquery.form.js plugin, and re-added it to standard includes (its handy for clearing out forms, and consistently getting form field values) 2012-03-02 13:42:15 +01:00
Ingo Schommer
1b600a0b09 MINOR Fixed empty breadcrumbs in AssetAdmin when using non-existent (singleton) record as the "current record" 2012-03-01 00:20:25 +01:00
Ingo Schommer
7d10ff790c MINOR Fixed JS notice/alerts in CMS 2012-02-29 17:15:52 +01:00
Ingo Schommer
af9e46af74 MINOR LeftAndMain->Breadcrumbs() ordering 2012-02-28 18:48:20 +01:00
Ingo Schommer
f67cca321c BUGFIX Using RequestHandler->urlParams rather than HTTPRequest->param() in LeftandMain->currentPageId() in order to avoid the wrong ID being chosen on nested controllers like GridField with their own "ID" parameters in the URL signature 2012-02-28 18:48:02 +01:00
Ingo Schommer
832d410303 MINOR Merge errors 2012-02-28 00:34:15 +01:00
Ingo Schommer
bcc73de85e Merge branch '106-add-edit-records-rc'
Conflicts:
	admin/code/LeftAndMain.php
	admin/css/screen.css
	admin/scss/_style.scss
	admin/templates/Includes/LeftAndMain_EditForm.ss
	css/GridField.css
	filesystem/Folder.php
	forms/gridfield/GridField.php
	forms/gridfield/GridFieldDefaultColumns.php
	forms/gridfield/GridFieldPopupForms.php
2012-02-27 23:58:10 +01:00
Ingo Schommer
3b53ed1937 MINOR Moved some CMS-specific template config into GridFieldPopupForms, to make the external API easier to use, and make specific configs less dependent on the instanciation context, and more tuned to the actual execution controller context 2012-02-27 23:52:48 +01:00
Sam Minnée
61c810a79a Merge pull request #200 from simonwelsh/patch-1
BUGFIX Fallback to sapphire/silverstripe_version if there is no CMS (fra...
2012-02-23 19:14:09 -08:00
Ingo Schommer
30989b598d ENHANCEMENT Added path manipulation lib from jQuery.mobile, using it to ensure all URLs are made absolute (to fix IE issues) 2012-02-23 23:29:59 +01:00
Simon Welsh
df82dac334 BUGFIX Fallback to sapphire/silverstripe_version if there is no CMS (framework only) 2012-02-23 20:46:34 +13:00
Ingo Schommer
abfa16fa70 ENHANCEMENT Using native jQuery UI buttons and icon styling for a less coupled implementation (e.g. assuming that a "constructive" button always has a specific icon, or one at all). All CMS UI buttons switched to use <button> markup, which allows for inline icons and correctly aligned multi-line button labels. 2012-02-17 15:58:32 +01:00
Ingo Schommer
ac56fef8b4 MINOR Removed jQuery.metadata usage in CMS, use jQuery.data() and HTML5 data attributes instead. Also fixes errors where jQuery.metadata tries to eval() HTML5 data attrs, which isn't always applicable 2012-02-17 13:35:53 +01:00
Ingo Schommer
5911abc0f6 API CHANGE Removed prototype.js style $() alias usage for document.getElementById() to avoid confusion with the more common jQuery() alias.
API CHANGE Removed several unsed JavaScript globals: sprintf(), Number.prototype.CURRENCIES, Number.prototype.toCurrency(), String.prototype.ucfirst(), jQuery.fn.clearFields(), jQuery.fn.clearInputs()
MINOR Removed prototype_improvements.js and jquery_improvements.js files, now contained in individual component code (or removed altogether)
2012-02-16 12:27:47 +01:00